3D Secure 2.0与Braintree订阅的集成

时间:2019-08-06 08:03:16

标签: c# braintree 3d-secure

我正在与Braintree订阅实现3DS 2.0集成。 Braintree的文档不够清晰,无法回答我的问题,Braintree的支持也无济于事。这是我的问题:

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

好像布伦特里(Braintree)不知道如何回答这些问题,或者由于某些原因不想这样做。支持很差。我非常感谢您的反馈。

1 个答案:

答案 0 :(得分:1)

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

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

  2. 您无法验证金额为$ 0的卡。我试过了我的假设是您不验证拱形卡。知道金额后,您可以从保管库中挑选一张卡,验证其金额,并使用从3DS获得的现时更新订阅。

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

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

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

  6. 我在一分钟前收到Braintree的回复。这应该不是问题。升级订阅时,请对照月价格验证卡。按比例分配的金额将小于该比例。如果您收取的金额比经过验证的金额少,银行也不会在乎。

  7. 我在这里使用每月订阅金额。

  8. 只需使用新金额更新订阅。但是,如果您跳过3DS,我认为您将再次承担欺诈责任。

  9. developers.braintree.com上有很多示例。对于3DS,请参见https://developers.braintreepayments.com/guides/3d-secure/client-side/javascript/v3

我有类似的问题,Braintree支持团队迅速且非常有帮助地回答了他们。