2012-04-01 231 views
0

我正在做一个涉及Paypal的项目,更具体地说是PHP中的NVP API。但我似乎无法确定如何使用IPN功能。贝宝IPN需要?

我的意思是,当用户被重定向到PayPal来确认购买时,当交易完成时,他被重定向回到我的网站的“Paypal-succes-page”。只是为了确定他实际支付了我可以使用“PaymentDetails”操作。

现在IPN在哪里适合这个过程?它有什么好处?

感谢

回答

1

与PayPal的业务的整合,你会发现有三个主要渠道(和国际海事组织它知道这个,所以你可以决定你的应用程序的好处是很重要的):

  1. IPN: Instant Payment Notification
  2. PDT: Payment Data Transfer
  3. PayPal's API

要使用PayPal的IPN,您需要添加一个'侦听器'脚本(example)和将地址添加到您的PayPal帐户。无论何时发生事件,PayPal都会通过您的听众直接向您的服务器发送消息,然后您适当地更新您的帐户。这对于运行订阅服务特别有用,因为事件将在后台进行,无需用户干预,并且您可以捕获成功/失败的定期付款等。

PayPal的PDT是一种系统,用于在用户重定向到您的网站时接受数据来自PayPal。例如,用户点击“购买”,他们被引导到贝宝,输入信息等。然后,一旦付款已被采取,他们被重定向回您的网站。贝宝可以传递有关交易的详细信息,包括是否成功,以便您可以在网站上显示相应的成功/失败页面。

贝宝API允许您更深入地融入贝宝的服务,如果您直接从您的网站管理付款,则可以使用此API。

这些服务并不相互排斥,因此您可以将任何组合与您的应用程序结合使用。

我希望这可以帮助

0

即时付款通知

的IPN的是典型使用验证购买,并让你的脚本或管理系统知道,交易完成这样系统才能更新您可能为您的服务提供的任何记录。

但最重要的部分是交易是有效的。

0

IPN将关于交易的所有数据发送到您的服务器 - 价格,物品,联系人...因此,如果有人不向您支付1美元而不是100美元并确认您的订单,您可以检查。它预示着小偷,骗子......使用它! ;)

1

IPN功能是一个非常有用的功能,你应该用我的意见来更新你的数据库。确保用户在购买后被重定向到您的成功页面,您可以验证付款详情。

但是,如果他在到达成功页面之前关闭浏览器(无论是否意外)呢?你永远不会知道交易的结果,你永远不会更新你的数据库或相应地处理他的订单。

使用IPN时,您可以确保交易结果始终到达您,因为PayPal将继续向您的IPN页面发出离线请求,直到它到达您的服务器。