我无法在沙箱中使用 paypal checkout-sdk 找到交易历史记录

I can't find out transaction history in sandbox use paypal checkout-sdk

本人使用javacheckout-sdk-1.0.4开发PayPal支付。我成功向 PayPal 提交订单,收到付款 url.

我用个人账户登录,然后点击continue按钮。

然后 paypal 就重定向到我设置的 url。

http://localhost:38001/checkout/submit/result?token=60X99286YV4394812&PayerID=9WXE2YPSNEJSN

我可以在开发人员仪表板中看到 api 通话记录。

但是我在我的企业账户和个人账户中看不到任何交易记录。

如何判断支付是否成功。


我从这里尝试这个教程

https://developer.paypal.com/docs/business/checkout/server-side-api-calls/create-order/

https://developer.paypal.com/docs/business/checkout/server-side-api-calls/capture-order/

最后,paypalreturn抓取成功

Status Code: 201
Status: COMPLETED
Order ID: 1AL061567P026410J
Links: 
    self: https://api.sandbox.paypal.com/v2/checkout/orders/1AL061567P026410J
Capture ids:
    6NY33838LX3268618

但我的个人测试账户中仍然看不到交易记录。

But I can't see any transaction history in my business account and personal account. enter image description here

您看不到任何交易,因为没有交易。不会有任何,除非您显示所需的订单审查页面并在客户 return 访问您的站点时执行所需的捕获 API 调用。 (如果您想跳过显示评论页面并直接进行 API 调用,那么您应该将 application_context 对象的 user_action 设置为 'PAY_NOW',因此最后一个按钮的文本从 'Continue' 更改为 'Pay Now',并且用户知道不会有评论页面。无论如何,您仍然需要执行 API 调用来捕获)。


您使用的流程是重定向到 PayPal,然后显示评论页面或在重定向回来后进行捕获调用,这是一个旧的结帐流程,无法提供最佳的用户体验。最好 不使用任何重定向 。完全没有。

而是在您的服务器上创建两条路由,一条用于 'Create Order',一条用于 'Capture Order'、documented here。这些路由应该 return 只有 JSON 数据(没有 HTML 或文本)。后者应该(成功时)在执行 return(特别是 purchase_units[0].payments.captures[0].id、PayPal 交易 ID)

之前将付款详细信息存储在您的数据库中

将这两条路线与以下批准流程配对:https://developer.paypal.com/demo/checkout/#/pattern/server