PayPal IPN - 自动退货

Posted

技术标签:

【中文标题】PayPal IPN - 自动退货【英文标题】:PayPal IPN - Auto return 【发布时间】:2017-10-17 20:29:27 【问题描述】:

我正在开发一个商家网站,目前正在与 Paypal 合作。 我发现使用 IPN 和自动返回可以完成我想要的工作。

我正在使用 NGROK 来公开我的本地主机并且一切正常。但是,当我查看 NGROK 终端时,我发现 PayPal 实际上首先将数据发送到我的自动返回页面,然后在大约 3 秒后将其余数据发送到我的 IPN 文件。

我确实认为正确的数据处理是 IPN 然后成功...我错了吗?那是因为我使用的是 NGROK 还是 localhost?或者是 PayPal 沙盒?

【问题讨论】:

【参考方案1】:

听起来您正在混淆 PDT 和 IPN。

PDT = 支付数据传输。这适用于自动退货,付款数据会被发送回您的退货 URL,以便您可以在屏幕上显示。数据库更新、电子邮件通知等不应在此处进行,因为即使启用了自动返回,也无法保证用户会返回返回 URL。

IPN = 即时付款通知。这适用于事务后处理,是您应该处理数据库更新、电子邮件通知以及确保每次事务发生时发生的任何其他事情的地方。 IPN 还允许您处理电子支票更新、退款、客户争议等当时没有发生浏览器交互的事情。

您可以同时使用两者,但 PDT URL 和 IPN URL 应该彼此不同。 PDT URL 将是您的返回/感谢页面,同样您将只在此处显示数据以供用户参考。 IPN URL 将是一个单独的脚本,仅充当侦听器。

【讨论】:

非常感谢这个确实对我有帮助的答案! :)

以上是关于PayPal IPN - 自动退货的主要内容,如果未能解决你的问题,请参考以下文章

设置 PayPal 退货 URL 并使其自动退货?

PayPal 立即购买按钮 - 强制自动退货(无需通过账户设置)

PayPal 即时付款通知 (IPN) 无法正常工作 ASP.NET C#

PayPal退货页面问题

Paypal:标准结帐退货

PayPal:将电子邮件地址传递到退货/“谢谢”页面