0
我在使用Drop-in功能的沙盒模式中嘗試Braintree。 我使用現有的customerID
創建客戶端令牌。但是,當我做transaction.sale
調用這個customerId
和期權storeInVault = true
提示錯誤以下錯誤:Braintree沙箱transaction.sale給出錯誤:「銷售客戶ID已被採納」
Sale Customer ID has already been taken.
按照它應該更新與支付現時客戶的文檔。
下面是代碼:
gateway.transaction.sale({
amount: '10.00',
paymentMethodNonce: nonceFromTheClient, // Generated nonce passed from client
customer: {
id: 232057823, //this customer exist in the vault
email : user.emails[0].address
},
options: {
submitForSettlement: true,
storeInVault: true
//storeInVaultOnSuccess: true
}
}, function (err, result) {
if (err) {
console.log(err);
} else {
if (result.success) {
return result.success;
} else {
console.log('ERR Sale '+result.message);
return result.success;
}
}
});
我使用流星與包patrickml:braintree
。
我認爲這是我可能要做的。但根據文檔:**現有客戶使用新的付款方式** 要將此交易的付款方式與現有客戶關聯,請將customerId與options.storeInVault或options.storeInVaultOnSuccess一起傳遞爲true。 的Node.js 'gateway.transaction.sale({ 量: 「10.00」, paymentMethodNonce:nonceFromTheClient, 客戶ID: 「theCustomerId」, 選項:{ storeInVaultOnSuccess:真 } },功能(ERR,結果){ });' –
該文檔是正確的,但我可以看到混淆。您在客戶選項中嵌套'id'屬性。在您已鏈接的示例中,customerId屬性在頂層指定。 – ThinkAboutIt
尤里卡瞬間!良好的捕捉,它總是有助於有第二雙眼睛!非常感謝。 –