Paypal 链式支付 - 支付密钥和 IPN

Posted

技术标签:

【中文标题】Paypal 链式支付 - 支付密钥和 IPN【英文标题】:Paypal Chained Payment - Pay Key & IPN 【发布时间】:2015-04-18 15:06:37 【问题描述】:

我最近从基本的 Paypal 付款转换为链式付款...如果你们愿意提供帮助,我有几个问题。

首先,当我设置 PayRequest 时,我还在数据库中创建了一个订单记录。以前使用我的基本 Paypal 实现,我将自定义字段中的 OrderId 作为表单发布的一部分传递给 Paypal。然后,我会在 IPN 处理程序中取回该 OrderId,并使用它将订单标记为已付款或基于 Paypal IPN 的响应。

现在我想知道本地创建的订单的独特价值是什么?我应该使用支付密钥在 IPN 回调中查找订单吗?还是我应该将 PayRequest 的 trackingId 属性设置为订单 ID 并在 IPN 回调请求对象中提取?

其次,PayRequest 有 returnUrl 和 ipnNotificationUrl。 returnUrl 应该处理 IPN 回调还是 ipnNotificationUrl 只应该这样做?

我之所以问是因为退货网址必须能够向买家显示他们的付款状态和交易信息,与我在 IPN 回调中获得的数据相同。

感谢大家的意见,等我把这两个小细节解决了,我就可以走了!

【问题讨论】:

【参考方案1】:

我会将您的记录 ID 添加到您提到的支付请求的跟踪 ID 参数中。这样一来,您就可以在 IPN 中取回它,就像您现在使用自定义参数所做的一样。

IPN 通知 URL 是您要设置的,以便触发支付请求的 IPN。您不想使用相同的 URL 进行返回,因为这样脚本实际上会运行两次。

【讨论】:

感谢您的回复。我坚持使用 trackingId 来存储我的 orderId 值。关于返回 url 与 IPN 页面......我是否假设在使用 Paypal 完成付款后加载返回 url 时,付款成功且有效?我需要在该页面上向用户显示贝宝交易信息,包括他们的订单信息。我可以向该页面传递一些参数,例如支付密钥或跟踪 ID,以便我可以查找 IPN 处理的订单信息吗?

以上是关于Paypal 链式支付 - 支付密钥和 IPN的主要内容,如果未能解决你的问题,请参考以下文章

整合Paypal链式支付和直接支付?

PayPal自适应支付链式支付错误

自适应支付 IPN 交易 ID 未出现

PHP PayPal 自适应支付 - 链式支付

PayPal 移动 SDK,链式支付

沙盒中的 PayPal 自适应链式支付