PayPal REST API 支付 id = IPN txn id
Posted
技术标签:
【中文标题】PayPal REST API 支付 id = IPN txn id【英文标题】:PayPal REST API payment id = IPN txn id 【发布时间】:2014-08-05 10:32:46 【问题描述】:让我们假设 PayPal REST API 用于完成标准的 PayPal 支付流程。执行付款时,它返回为“待处理”,因此付款尚未完成。 REST APi 提供了一个支付 ID: https://developer.paypal.com/docs/api/#execute-an-approved-paypal-payment
付款完成后,会调用我的 IPN 侦听器的 URL,但正如本网站所述,仅包含一个 txn_id,这似乎与 REST API 的付款 ID 不同: https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNIntro/#id08CKFJ00JYK
那么如何匹配这两个id呢?
【问题讨论】:
【参考方案1】:IPN 旨在支持 PayPal 上的经典 API,并且 txn_id 将与使用经典 API 进行的付款的 txn_id 匹配。
对于通过 REST API 进行的付款,您可能仍会通过 IPN 收到通知,但遗憾的是目前无法匹配使用 ID 进行的付款。您现在最好的选择是检查付款的属性(金额、货币等)并检查它是否与您期望的付款属性相匹配。
目前这是基于推送的通知的现有选项。另一种选择可能是定期轮询并检查付款状态。
这两种方法都存在一定的局限性,而且即将推出的 webhook 支持将为 REST 支付提供基于推送的通知支持,以缓解这些问题。
【讨论】:
您发布此答案已有 2 年。从IPN
的txn_id
获取payment_id
仍然不可能吗?【参考方案2】:
IPN 消息的 txn_id 也包含在 REST API 消息中,但在那里称为“sale id”。
【讨论】:
当我使用txn_id
获取销售详细信息时,我得到空值。你能告诉我是什么问题吗?以上是关于PayPal REST API 支付 id = IPN txn id的主要内容,如果未能解决你的问题,请参考以下文章