最终用户的 paypal 自适应支付流程有点奇怪。
而不是像 paypal express 流程那样工作:
- 用户完成结帐过程
- 用户前往 paypal 以授权付款
- 用户被重定向回网站以确认付款
- 通知从网站发送到 paypal 以确认并接受付款
它是这样的: 1. 用户完成结帐流程 2. 用户使用paypal 并且必须在paypal 网站上进行付款 3. IPN被发送到站点以确认成功或失败
这是一个非常重要的缺陷,因为现在最终用户有可能在付款失败后不返回站点,甚至更糟的是,最终用户可能会在收到 ipn 之前返回站点。在这种情况下,篮子应该清空还是不清空?这会带来很多潜在问题。
如何解决?
最佳答案
要在配置 URL 参数(如下所述)后解决您的问题,
1) 当用户返回 returnUrl 端点时,您调用 PaymentDetails API 并检查状态并继续。 2) 处理用户可能已付款但未返回您的网站等待 IPN 消息以继续您的订单发货等极端情况, 3)如果用户取消付款,他们将被带到 cancelUrl 端点,您可以相应地处理流程 4) 如果出现错误(如超出限制、不支持货币等),支付操作实际上会抛出错误,您将能够将其作为错误/异常捕获流程的一部分进行处理。
调用API时请使用以下参数
returnUrl 发件人浏览器在批准后重定向到的 URL 在 paypal.com 上付款 cancelUrl 如果发件人取消,发件人浏览器将重定向到的 URL 批准在 paypal.com 上付款。 ipnNotificationUrl 此支付的所有 IPN 消息发送到的 URL
如果您正在使用 SDK,那么建议您查看作为其一部分捆绑的示例。
https://www.x.com/developers/paypal/documentation-tools/paypal-sdk-index
关于 Paypal 自适应 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13810836/