2
完成交易後,保險櫃下有兩個客戶輸入。braintree保險櫃問題中的雙重客戶輸入
步驟我都遵循:
1. Created customer.
//first customer vault entry is created at this point
$customerParams = Braintree_Customer::create(array(
'firstName' => $firstName,
'lastName' => $lastName,
));
2.然後生成clientToken
Braintree_ClientToken::generate(array(
"customerId" => $customerParams->customer->id
));
3.Then與API的幫助下成功地生成JS現時:
var client = new braintree.api.Client({clientToken: ctoken});
client.tokenizeCard({
...
...
});
4。此時再次創建新客戶
Braintree_Transaction::sale(array(
'amount' => $mapCidInvoiceID['amount'],
'orderId' => $redirectParams['invoiceID'],
'paymentMethodNonce' => $nonce,
'options' => array(
'storeInVaultOnSuccess' => true,
),
));
我的代碼有什麼問題嗎?爲什麼一次交易創建了兩個客戶記錄?記錄第一個記錄的名字和姓氏。但第二種情況不存儲這些細節。 第二步和第三步需要第一次創建客戶。
另一種解決方案是在第一步中忽略客戶創建並生成客戶端令牌而不傳遞任何客戶ID。在交易銷售電話中,傳遞所有客戶信息以及其他信息。 –