我试图在自己的网站上使用paypal建立定期付款系统。 我网站上的人有帐户,他们会付钱以获得更多选择。
我已经"承认"用贝宝创建的按钮(价格,支付间隔等在paypal中选择)。 Onclick,我的客户被重定向到paypal网站以继续他的购买。 这是有效的,如果付款执行我在我的数据库中向用户添加选项。 因此,每个月都会有定期付款,但我必须创建一个"取消"或者"脱离接触"按钮。
此脱离按钮也已创建,因此请将用户重定向到paypal网站以取消其订阅。 如果订阅被取消,paypal会通过IP地址(即时付款通知)向我发送信息,并在paypal选项中显示一个URL(paypal-notification.php)。
问题是用户在此之后没有被重定向到我的网站,所以我无法获取他的会话信息(我的数据库中的id或电子邮件),以删除他在数据库中的选项。 / p>
我认为可以在用户选择选项时向paypal添加自定义选项。例如,当我怀疑时,我将用户ID(我的数据库)提供给paypal,当用户取消时,Paypal会将这个ID提交给我?
谢谢!
答案 0 :(得分:0)
PayPal使用订阅ID。当您注册订阅时,您可以通过自定义ID发送,通常是订单ID,但在您的情况下,它可能是用户ID。因此,您只需将<input type="hidden" name="custom" value="$id">
添加到表单中,然后IPN就会在其中包含每个通知的ID,包括取消通知。
当用户第一次订阅您时,将从PayPal获得订阅开始通知,此时您应该记录PayPal给予此订阅的ID。它存储在PayPal IPN传回的subscr_id
值中。然后,当用户取消订阅时,通知将具有该订阅ID,您可以使用该ID来标识哪个用户已取消订阅。这将是更好的方式,而不是依赖于从PayPal传回的用户ID。