我尝试使用 PayPal 交易 ID 和 Paypal API 获取交易详细信息,但我得到的只是“未找到请求的资源 ID。”,我不知道是否我做错了什么,或者 PayPal 的 API 是否有问题。有人可以帮助我吗?
我想做的就是检查交易 ID 是否已完成。我尝试使用 PayPal API 来完成此操作 - https://developer.paypal.com/docs/api/transaction-search/v1/
我认为我的问题在于“X-PAYPAL-SECURITY-CONTEXT”参数。
我尝试像文档中给定的示例一样填写“X-PAYPAL-SECURITY-CONTEXT”,但它不起作用:
然后我尝试了这个(仍然不起作用):
import requests
headers = {
'Authorization': 'Bearer [My Token]',
'Content-Type': 'application/json',
}
params = (
('transaction_id', '81795386U4841702W'),
('fields', 'all'),
('page_size', '100'),
('page', '1'),
)
response = requests.get('https://api-m.sandbox.paypal.com/v1/reporting/transactions', headers=headers, params=params)
print(response)
您没有提供有关现有 PayPal 集成的信息(有很多),也没有提供表示未找到资源 ID 的调用,因此这是一般情况下进行操作的最佳方法:
使用标准 PayPal 集成,当
capture
路由调用 PayPal API 来完成交易时,PayPal 交易 ID 将位于 purchase_units[0].payments.captures[0].id
中(与订单 ID 分开,这对于会计目的没有用处)。除了此捕获 ID 之外,您还可以找到有关 PayPal 交易所需的所有信息。
不需要(也不建议)调用任何其他 API,但有一个 v2/付款捕获详细信息端点以及一个单独的交易搜索 API。 (同样,这些 API 都不是必要的,也不建议使用它们)