【问题标题】:PayPal REST API payment id = IPN txn idPayPal REST API 支付 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呢?

【问题讨论】:

    标签: rest paypal


    【解决方案1】:

    IPN 旨在支持 PayPal 上的经典 API,并且 txn_id 将与使用经典 API 进行的付款的 txn_id 匹配。

    对于通过 REST API 进行的付款,您可能仍会通过 IPN 收到通知,但遗憾的是目前无法匹配使用 ID 进行的付款。您现在最好的选择是检查付款的属性(金额、货币等)并检查它是否与您期望的付款属性相匹配。

    目前这是基于推送的通知的现有选项。另一种选择可能是定期轮询并检查付款状态。

    这两种方法都存在一定的局限性,而且即将推出的 webhook 支持将为 REST 支付提供基于推送的通知支持,以缓解这些问题。

    【讨论】:

    • 您发布此答案已有 2 年。从IPNtxn_id 获取payment_id 仍然不可能吗?
    【解决方案2】:

    IPN 消息的 txn_id 也包含在 REST API 消息中,但在那里称为“sale id”。

    【讨论】:

    • 当我使用txn_id 获取销售详细信息时,我得到空值。你能告诉我是什么问题吗?
    猜你喜欢
    • 2014-07-03
    • 2012-01-17
    • 2011-09-12
    • 2012-04-10
    • 2015-04-18
    • 2021-03-03
    • 2017-02-16
    • 2018-09-07
    • 1970-01-01
    相关资源
    最近更新 更多