php - 如何从 Paypal 获取交易 ID (txn_id) 的详细信息?
问题描述
我正在我的一个网站上进行 Paypal 集成
但问题是 IPN 在大多数情况下都会延迟几分钟
用户从 Paypal 重定向回我的网站txn_id
我想要什么,我正在寻找一个 API,我可以从中验证交易是否有效
我试过https://api-m.sandbox.paypal.com/v1/checkout/orders/和https://api-m.sandbox.paypal.com/v1/reporting/transactions?transaction_id=transaction-id但它给我
{"name":"RESOURCE_NOT_FOUND","details":[{"issue":"INVALID_RESOURCE_ID","description":"Specified resource ID does not exist. Please check the resource ID and try again."}],"message":"The specified resource does not exist.","debug_id":"123","links":[{"href":"https://developer.paypal.com/docs/api/orders/v2/#error-INVALID_RESOURCE_ID","rel":"information_link","method":"GET"}]}
但是,如果我从https://www.sandbox.paypal.com/activities页面搜索该交易 ID,我可以看到该交易
我使用我的卖家帐户创建了令牌。
解决方案
最好的解决方案是使用服务器集成,这样您就可以在结账时从服务器中获取信息,并获得成功/失败的即时 API 通知,以及直接来自 PayPal 的交易 ID。
创建两条路线,一条用于“创建订单”,一条用于“捕获订单”,记录在此处。这些路由应该返回 JSON 数据。如果成功,对 PayPal 的捕获调用将在响应中包含事务 ID——您可以在发送 JSON 响应之前在数据库中将其记录为成功。
与以上两条路线配对的审批流程:https ://developer.paypal.com/demo/checkout/#/pattern/server
推荐阅读
- firebase - 在火力基地搜索
- python - AttributeError:模块没有属性
- c# - C# 仅从 zip 文件中获取顶级文件
- ajax - 如何在 Fetch 中将对象作为数组发送而不运行循环和映射来转换它?
- javascript - 为什么我从 JavaScript Ajax 返回函数中得到“未定义”?
- solidity - 如何在solidity中初始化静态字符串数组?
- python - 尝试通过api上传文件
- java - Spring JUnit5 测试存储库,Repo 为空?
- css - 在 Blazor 库中使用 DateRangePicker
- static-analysis - cppcheck 是否分析多个文件