Paypal PDT& IPN问题 - 我们可以假设退回现场后付款已完成吗?

时间:2010-08-14 15:31:21

标签: paypal paypal-ipn

当客户自动返回我们的网站时,我们可以假设交易的付款已完成吗?

Paypal建议我们将其IPN系统用于其他类型的付款,例如电子支票,但也告诉我们告诉客户“感谢您的付款”。您的交易已经完成,并且您的购买收据已通过电子邮件发送给您。您可以登录www.paypal.com/ca登录您的帐户,查看此次交易的详细信息。“

不使用IPN会有什么不足之处,只是假设paypal自动将用户返回我们网站时付款已完成?

谢谢!

2 个答案:

答案 0 :(得分:1)

完全依赖返回网址是一个非常糟糕的主意。一个坏人很容易跳过付款,只是访问你的返回网址来完成订单。

有一篇关于此here

的非常全面的文章

答案 1 :(得分:0)

没有

但是,使用Paypal帐户中的自动退货选项与付款数据传输(个人资料/我的销售工具/网站首选项/网站付款首选项)将在您用于自动退货的网址中为您提供付款确认数据,例如:

www.yourReturnURL.com?tx=9XV61416UY0043254&st=Completed&amt=9%2e00&cc=USD&cm= 9601&item_number=2

您需要通过将付款参考(" tx"参数)发送回Paypal并等待验证回复来验证此数据(任何人都可以发送虚假请求)。

最后一步与您为IPN(即时付款通知)实施所采取的步骤相同。

  • 使用PDT,您可以立即收到通知。 PDT有一个主要缺点:它只发送一次订单确认。因此,当PDT发送确认时,您的站点必须正在运行;否则,它永远不会收到消息。

  • 与IPN相比,由于IPN重新发送确认信息直到您的网站确认收到,因此几乎可以保证订单确认的交付。因此,PayPal建议您实施IPN而不是PDT。

  • 注意:如果必须立即通知您的网站付款,您可以实施 IPN和PDT。

此处有更多信息:https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNPDTAnAlternativetoIPN/