如何确保网站的paypal集成

1 php integration paypal payment-gateway

我过去一直在使用paypal通过我的网站销售东西(例如会员资格)但我总是必须通过paypal验证用户是否真的购买了会员资格(例如)才能将其分配给他/她的帐户.现在我想知道是否有一种方法可以将paypal购买按钮放到我的网页上(例如)购买会员资格,然后一旦用户付款,他将自动被分配到我的网站上的会员资格(例如,有一个页面purchase_result.php指定会员资格,但仅在用户真正通过paypal购买时才会这样做.如何确保用户在我网站的返回页面上通过paypal实际购买了该商品?

提前谢谢,Skyfe.

顺便说一句,我希望我的问题能够被理解

Rob*_*ert 8

您可以使用PayPal即时付款通知从PayPal接收服务器到服务器通知,您可以随后验证并使用它来更新数据库.

IPN的工作原理如下:

  1. 您创建PayPal并包含"notify_url".此参数的值将是服务器上脚本的完整URL,称为"IPN脚本"或"IPN处理程序".

您可以为网站付款标准指定IPN处理程序,如下所示 <input type="hidden" name="notify_url" value="http://blah.com/ipn.php

对于Express Checkout或Website Payments Pro,只需在SetExpressCheckout/DoExpressCheckoutPayment或DoDirectPayment API调用中分别包含以下内容. NOTIFYURL=http://blah.com/ipn.php

  1. 买方通过PayPal完成交易
  2. 一旦买方完成交易,他/她可以关闭浏览器,或返回您的网站
  3. 一旦交易被PayPal接受并处理,PayPal将向http://blah.com/ipn.php发送通知
  4. 您需要获取发送到此脚本的所有POST数据,并将其POST回到https://www.paypal.com/cgi-bin/webscr?cmd=_notify-validate
  5. 如果您发回的数据与PayPal发送给您的数据一致,则会返回"已验证"的响应.
  6. 如果响应是VERIFIED,那么此时您将查找匹配的事务/买方,并适当地更新您的数据库.

有关PayPal IPN的一些示例代码和文档,请访问https://www.paypal.com/ipn/
.此外,有关制作安全IPN脚本的一些提示,请访问https://www.x.com/developers/community /博客/ ppmtsrobertg /保护,您的即时付款通知-IPN-脚本

注意:如果要包含任何自定义数据以及稍后可以读取的事务,请使用"自定义".
<input type="hidden" name="custom" value="xxxxx">
这也将在PayPal发送的IPN POST数据中返回.