贝宝 IPN - 自动 return

PayPal IPN - Auto return

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

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

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

听起来您混淆了 PDT 和 IPN。

PDT = 支付数据传输。这意味着与 Auto-Return 一起使用,付款数据会发送回您的 return URL,以便您可以在屏幕上显示它。数据库更新、电子邮件通知等不应在此处进行,因为即使启用了 Auto-Return,也无法保证用户会返回 return URL。

IPN = 即时付款通知。这意味着 post-事务处理,您应该在这里处理数据库更新、电子邮件通知以及您需要确保每次事务发生时都会发生的任何其他事情。 IPN 还允许您处理电子支票更新、退款、客户争议等当时没有浏览器交互的情况。

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