Braintree API:如何判断哪个 payment_method 与我的 nonce 相关联?

Posted

技术标签:

【中文标题】Braintree API:如何判断哪个 payment_method 与我的 nonce 相关联?【英文标题】:Braintree API: How can I tell which payment_method is associated with my nonce? 【发布时间】:2015-08-15 13:49:16 【问题描述】:

背景:

    我用名字、姓氏和电子邮件创建了一个 Braintree 客户 我在结帐表单中使用 dropin ui,它会创建一个 payment_method 和 token 并向我发送一个 nonce。到目前为止很好。 在收取 nonce 之前,我需要在 payment_method 中添加账单地址...

问题: 如何发现哪个 payment_method 与我的 nonce 相关联?

编辑添加: 在javascript+php 页面的底部有一个矛盾的引用,指向一个未记录的 [paymentMethodNonce] 参数,该参数使用了一个也未记录的 [options][verifyCard] 参数。我想我可以针对与用户关联的每个 payment_method 令牌运行 [paymentMethodNonce] sans [options] 并检查错误...哈哈。

【问题讨论】:

【参考方案1】:

我在布伦特里工作。如果您还有其他问题,我建议您reach out to our support team。

当您使用 Drop-In UI 时,它不会自动创建付款方式,只是一个随机数。您将 nonce 传回您的服务器并使用它create a payment method:

$result = Braintree_PaymentMethod::create(array(
    'customerId' => '12345',
    'paymentMethodNonce' => 'nonce-from-the-client'
));

如果 nonce 指向该客户已使用的付款方式,您将取回现有的付款方式,而不是重复。

然后,您可以更新该付款方式以添加帐单地址,然后再使用它来创建交易。

【讨论】:

从我们能找到customerId吗?一旦我们得到 Result 那么如何使用它们将 nonce 值发送到服务器?由于我的服务器想要来自客户端的 nonce 值,我可以通过使用 Braintree.PaymentMethodNonceListener () 找到它。但作为回应,它显示“无法确定付款方式。”。请建议我正确的道路。 好吧,当我使用 dropin 时,它确实创建了一种付款方式,但是,你是对的。如果我尝试使用 nonce 创建 payment_method,它会返回使用该 nonce 创建的现有付款方式。谢谢! @anddev 我建议你contact the Braintree support team。 我没有看到 create() in the docs 的“查找或创建”功能,或者在实践中使用沙盒卡。 @jchook 这不是查找或创建。当我说“一种已被保管的付款方式”时,我并不是指信用卡号与已被保管的信用卡号匹配,我的意思是随机数是根据已保管的付款方式的 ID 创建的。

以上是关于Braintree API:如何判断哪个 payment_method 与我的 nonce 相关联?的主要内容,如果未能解决你的问题,请参考以下文章

Braintree API 更新订阅

Braintree - 为啥通过 API 或沙盒创建的 Braintree 交易需要这么长时间才能完成?

Google Pay API:Braintree 网关配置

PHP Braintree 网关 API

这是使用 API 在 Python 中为 Braintree 创建订阅的正确方法吗

Braintree API 返回的交易顺序