- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
尝试使用 Braintree 设置 iOS 和 PHP 支付系统。
我可以设置一个 clientToken
$clientToken["client_token"] = Braintree_ClientToken::generate());
return ($clientToken);
我可以通过以下方式处理第一笔付款:
$result = Braintree_Transaction::sale(array(
'amount' => '1',
'paymentMethodNonce' => $nonce,
'customer' => array(
'id' => 'testId',
'firstName' => 'John',
'lastName' => 'Doe',
'email' => 'john@doe.com',
),
'options' => array(
'submitForSettlement' => true,
'storeInVaultOnSuccess' => true,
)
));
但是,当我尝试处理第二笔付款时,出现错误:
91609 – Customer ID has already been taken.
我如何处理具有相同 customerId ('testId') 的同一客户的第二次付款 - 为什么当我尝试使用现有客户 ID 传递付款时会抛出错误?当然它应该只是将付款附加到同一客户吗?这不是它的用途吗?
编辑:因此,在仔细查看之后,我发现了另一个可以包含在 Braintree_Transaction::sale 中的字段,如下所示:
'customerId' => 'testId',
因此,这将允许我重新使用存储在 Braintree 保险库中的 customerId。然而,对于第一次交易,我得到了错误:
91510 – Customer ID is invalid.
所以我最终陷入了陷阱 22 - 我可以将第一组代码用于新客户但不能用于回头客,我可以将第二组代码用于回头客但不能用于新客户。我不能同时使用两者。所以我的解决方案是创建我自己的本地数据库条目,确定用户之前是否通过 braintree 付款并相应地替换代码。是否有更简化的方法?
最佳答案
我在布伦特里工作。如果您需要更多帮助,可以随时reach out to our support team .
你的想法是正确的。您需要在您这边跟踪 Braintree 是否存在客户 ID。
有一个替代方案,但我不推荐它,因为它需要额外的 API 调用。
可以先尝试create the customer with Braintree ,如果错误代码为 91510
,则忽略错误:
$result = Braintree_Customer::create(array(
'id' => 'testId',
'firstName' => 'John',
'lastName' => 'Doe',
'email' => 'john@doe.com',
));
然后,您知道客户已经存在,或者您刚刚创建了它,您可以使用第二种方法来 create a transaction .
关于php - 如何使用现有的 customerId 处理 Braintree 付款,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29418104/
我想获得 Braintree 信用卡交易的费用金额。有没有办法得到这个? $fee = $charge->transaction->serviceFeeAmount; 我在看: https://dev
有什么方法可以更改 Braintree javascript 生成的托管字段中的占位符文本颜色?我不认为它是 the options 之一你可以传入构造函数。我们的设计在深色背景上,占位符值不可见。
我目前有兴趣使用 Braintree 从一个服务器使用我目前持有的信用卡凭据向另一个支付服务器付款。 目前,当客户输入他的信用卡详细信息时,Braintree Client SDK 会生成支付随机数。
在进行销售交易之前,如何在保险库中重新验证付款方式 [信用卡]。 注:启用 CVV 和 AVS 规则。 场景是: Braintree 保险库中的客户使用保险库中的付款方式 [信用卡] 进行销售交易。
我没找到refund网络 Hook webhooks list . 是 支付网络 Hook 在这种情况下有什么可以帮助我的https://developers.braintreepayments.co
我正在将 Braintree Drop-in v3 集成到一个带有包的角度应用程序中npm i -save braintree-web-drop-in。 然后我找到了包@types/braintree
脑树的默认api速率限制是多少? 因为在一段时间内的非常多的请求之后,我收到了 403(请求过多)异常。 最佳答案 当与您的帐户关联的请求达到不安全级别时引发。如果事件有对其他商家造成负面影响的风险,
我正在将 braintree 与 python 和 swift 一起使用。谁能告诉我如何在 braintree 中重置重试。我收到这个错误 SSLError: HTTPSConnectionPool(
这一定是简单的事情,但我却抓狂了。当我调用这个时 $data = [ 'amount' => '50.00', 'paymentMethodNonce' => 'fak
这一定是简单的事情,但我却抓狂了。当我调用这个时 $data = [ 'amount' => '50.00', 'paymentMethodNonce' => 'fak
每当我通过 Braintree API 或通过他们的沙箱创建交易时,它都会经历许多状态,例如授权、提交结算、已结算......所有这一切大约需要 24 小时。我想问一下,有没有一种方法可以让我在沙箱/
Closed. This question needs to be more focused 。它目前不接受答案。 想改善这个问题吗?更新问题,使其仅通过 editing this post 关注一个
我们正在经营一家与 Braintree 相连的英国 Magento 商店。几个月来,一切都在顺利运行,但突然之间,我们无法在任何连接到 Braintree Sandbox 的临时或本地测试环境中完成订
是否可以从 Braintree dropin UI 中隐藏 Paypal 按钮?我正在考虑为 Paypal 定制 Paypal 按钮(基于客户需求和设计),并希望使用由 Braintree dropi
我正在从 ActiveMerchant 中实现的网关切换到 Braintree 网关。我注意到 ActiveMerchant 中有一个 braintree 网关,还有 braintree 的 brai
调用 [Braintree braintreeWithClientToken 时出现以下错误。 ViewController.m:21:27: Use of undeclared identifier
我正在使用 ASP.NET MVC 4、.NET Braintree Payments API 和 Braintree.js。 这是我为 Braintree 构建的一个简单包装器: public cl
我正在为一个应用程序开发一个迁移项目,该应用程序使用 PayPal Payments Pro API(具有循环计费)处理计费。对于通知,目前正在使用 PayPal IPN。 该服务目前提供通过 Pay
有一种方法可以获取所有卡片的列表: gateway.creditCard.expiringBetween(year1900, year2100, function (err, result) {...
我正在尝试决定如何处理用户订阅了整个月的情况,假设他们订阅了 6/1,直到 6/31。在月中,他们决定取消订阅 (6/15),但在 6/20,他们决定再次重新开始订阅。如果有的话,这在 Braintr
我是一名优秀的程序员,十分优秀!