2

我正在实现 3DS 2.0 与 Braintree 订阅的集成。Braintree 的文档不够清晰,无法回答我的问题,而且 Braintree 的支持根本没有帮助。以下是我的问题:

  1. 何时是执行卡验证的最佳时机:将卡添加到保险库时或创建订阅时?也许我应该在这两种情况下都这样做两次?
  2. 将卡添加到保险库时应使用多少金额来验证卡?它应该是 0 美元、1 美元,还是我应该依赖 Braintree 网关在我没有通过金额时选择的金额?
  3. 将卡添加到保险库时执行 3DS 2.0 验证是否保证以后(创建订阅时)我可以在没有 3DS 的情况下收取数百、数千美元的费用?
  4. 如果在创建订阅时要进行验证,这样做是否正确:
    1. 使用支付方式令牌从 Braintree 获取 PaymentMethodNoce
    2. 使用 nonce 验证卡并获得新的 nonce
    3. 将第二步中获得的 Nonce 用作 SubscriptionRequest 中的 PaymentMethodNonce 参数
  5. 如果我降低或提高订阅价格会怎样?我必须用 3DS 重新验证吗?我应该用更新的价格重新验证吗?
  6. 我正在使用按比例分配的机制。3DS 会以任何方式影响这一点吗?
  7. 当用于创建订阅的 3DS 验证卡更改为新卡时会发生什么情况?应该使用多少金额来验证新卡(就像第二个问题一样)?
  8. 如何在不需要 3DS 重新验证的情况下提高订阅价格?
  9. 是否有说明使用 3DS 和订阅的示例代码?

看起来 Braintree 不知道如何回答这些问题,或者出于某种原因不想这样做。很差的支持。我真的很感激任何反馈。

4

1 回答 1

3

我曾与 Braintree 联系,有类似的问题。我想我可以回答你的问题。这是我对这种情况的看法:

  1. 最好的时机是当您知道订阅​​价格时。您应该按照卡验证期间指定的金额向受保管的卡收取费用(有一些例外情况,例如不需要验证的小额金额)。如果您跳过验证,您似乎要为欺诈而不是银行负责。如果您验证的金额低于您尝试收取的金额,我想银行可以拒绝交易。

  2. 您无法验证金额为 0 美元的卡。我试过了。我在这里的假设是您不验证保管卡。知道金额后,您从保险库中挑选一张卡,验证金额并使用从 3DS 获得的随机数更新订阅。

  3. 当金额增加时,您应该再次执行验证。我的观点是,您可以跳过 3DS 以便以后支付更高的金额,但您应对潜在的欺诈行为承担全部责任。如果您使用新金额执行 3DS,则负债将转移到银行。

  4. 是的,这似乎是正确的。

  5. 是的,您应该使用 3DS 重新验证。验证始终要求您指定金额,因此请使用新金额进行验证。

  6. I received a response for this a minute ago from Braintree. It should not be a problem. When upgrading a subscription, you verify the card against the monthly price. The prorated amount will be smaller than that. And banks won't care much if you charge a smaller amount than verified.

  7. I use monthly subscription amount here.

  8. Just update the subscription with the new amount. However, I think you will be again liable for frauds if you skip 3DS.

  9. developers.braintree.com is full of examples. For 3DS, see https://developers.braintreepayments.com/guides/3d-secure/client-side/javascript/v3

I had similar questions and Braintree support team was quick and very helpful to answer them.

于 2019-08-16T07:47:29.140 回答