在 3DS 中使用 Braintre Dropin UI 我希望客户输入他们的卡详细信息,输入他们的 3Ds 挑战。然后在 Braintree 内部,我想创建客户并验证卡,然后存储在保险库中,以便以后付款。
我希望后期付款有 3DS 的责任转移。
当我尝试创建随后的“Transaction.Sale”传入拱形的 PaymentMethodToken 和 ThreeDSecureAuthenticationId 时,它失败并显示“已经使用了三个 d 安全身份验证 ID,不能多次处理。”
似乎 3DS 身份验证被“验证”所消耗,然后所有其他交易都不会受到 3D 保护。
验证后如何获得交易的责任转移?
TransactionRequest request = new TransactionRequest
{
Amount = amount,
MerchantAccountId = merchantAccountId,
PaymentMethodToken = 'TOKEN_FROM_STORING_CARD',
ThreeDSecureAuthenticationId = 'THREED_SECURE_AUTHENTICATIONID_FROM_STORING_CARD',
Options = new TransactionOptionsRequest
{
SubmitForSettlement = true
}
};
Result<Transaction> result = gateway.Transaction.Sale(request);