大家好。我目前正在整合贝宝支付网关(后端)在我的一个项目。这是我第一次在支付网关工作。我想使用paypal的订单API集成3D安全认证。谁能告诉我使用API集成Paypal使用3D安全认证的流程?
例如:我已经使用POSTMAN测试了没有3D安全认证的正常流程。流程如下图所示
- 我从前端获取金额和货币。
- 我使用从公司DB收到的clientID和secret创建访问令牌。
- 然后我使用https://api.sandbox.paypal.com/v2/checkout/orders API创建一个订单。
- 我从响应中得到checkOut链接,如https://www.paypal.com/checkoutnow?token=5O190127TN364715T
- 我将用户重定向到此链接,该链接将用户重定向到Paypal页面进行支付。完成支付后,我将用户重定向到成功/失败URL,该URL也包含令牌和付款人ID。
- 然后使用https://api-m.paypal.com/v2/checkout/orders//capture完成付款。
现在我想添加3D安全认证。从集成3D Secure的文档中,我发现我需要在其中添加支付源,并添加SCA_ALWAYS作为Card对象中的验证属性。但是我怎样才能把支付源作为请求提供在正文中呢?(作为公司政策,我不应该使用PayPal的任何库)
当重定向到PayPal结帐页面,如https://www.paypal.com/checkoutnow?token=5O190127TN364715T
在你的例子中(或者为了更好的用户体验,永远不会重定向离开,而是使用上下文弹出,保持您的网站加载),没有必要实现3D安全。如果需要,PayPal将提供任何3D安全流程,这将取决于买方帐户及其国家和使用的信用卡,并且可能仅在第一次使用该卡时发生。
实现3D安全仅适用于直接卡集成,如高级信用卡和借记卡(带或不带托管字段),或Braintree网关。