2017-08-23 1 views
0

Je travaille dans laravel 5.4 Mes transactions sont réussies lorsque j'essaie un type de chaîne 'fake_nonce' fourni par les docs braintree. Mais quand j'ai essayé d'obtenir le paymentMethodNonce, ça me donne toujours une erreur comme nonce non trouvé. Et parfois l'erreur http !!! Si j'essaie de le configurer moi-même! Jetez un oeil à ma fonction de contrôleur ci-dessousComment obtenir paymentMethodNonce dans Braintree API?

public function addOrder(Request $request){ 
    $customer = Braintree_Customer::create([ 
    'firstName' => $request->guest_name, 
    'email' => $request->guest_email, 
    'phone' => $request->guest_phone 
    ]); 
    $customer->success; 
    $customer->customer->id; 
    $find = Braintree_Customer::find($customer->customer->id); 
    $nonceFromTheClient = Braintree_PaymentMethodNonce::find($find); 
    $result = Braintree_Transaction::sale([ 
    'amount' => $request->subtotal, 
    'paymentMethodNonce' => $nonceFromTheClient, 
    'options' => [ 
     'submitForSettlement' => True 
    ] 
    ]); 
    if ($result->success) { 
     $settledTransaction = $result->transaction; 
    } else { 
     print_r($result->errors); 
    } 
    Cart::destroy(); 
    return view('guest/track', compact('result')); 
} 
+0

S'il vous plaît aidez-moi !!! –

Répondre

0

$nonceFromTheClient = Braintree_PaymentMethodNonce::find($find);

Votre utilisation du mauvais nonce, ce nonce doit venir de l'ui DROPIN et ne pas être généré sur votre code.

Veuillez vérifier la méthode onPaymentMethodReceived() fournie dans le kit SDK JS.

Please check this reference