如何将Paypal IPN确认连接到用户?

Mik*_*keN 9 paypal paypal-subscriptions paypal-ipn

我想使用Paypal的IPN服务来验证我网站的定期费用的付款.如何将IPN确认与您网站中的用户联系起来?

IPN确认消息有一个名称,电子邮件,贝宝ID,定期付款ID,但它似乎没有给出唯一的标识符,因为我不知道贝宝ID或定期付款ID来自哪里,它可能不是唯一的微不足道将用户在其paypal帐户(或在那里输入)上的姓名/电子邮件与我在我的网站上为他们提供的姓名/电子邮件相匹配(可能有许多John Smith,并且该人可能会选择使用其他电子邮件.)

1)当我向Paypal发送初始付款请求时,我可以在URL中附加一个唯一的UUID,我要求他们发回给我,所以如果我为该用户保存该唯一ID,我可以将该付款确认与该用户匹配.发起了它.我比那更难吗?有没有更简单的方法?

2)此外,对于定期/订阅费用,paypal是否始终使用我在初始付款启动时指定的URL?有没有人有使用IPN的定期Paypal付款的实际经验,它是否重用该唯一的URL?或者,在收到第一笔定期付款后,我是否必须将Paypal ID与用户关联起来?

Iai*_*man 2

我最近还使用 Paypal 设置了一些定期付款。

我实际上希望人们在付费订阅注册成为会员,如果他们愿意的话。因为必须注册成为会员可能会给销售过程增加一些摩擦。因此,我不会随订阅按钮一起发送任何用户信息。

我的 IPN 脚本的作用是生成一个与激活表中的 Paypal 订阅 ID 绑定的唯一激活代码,然后将此代码发送给支付订阅费用的任何人,并附上有关如何激活的说明。

激活时,您需要注册或登录。此时,用户 ID 已添加到激活表中的相关行。

当 EndOfTerm IPN 通知出现在 IPN 脚本中时,IPN 脚本会根据 IPN 中给出的订阅者 ID 从激活表中查找用户 ID。然后我可以对该用户执行任何我需要执行的操作来禁用他们的订阅。

IPN 脚本的 URL 始终保持不变。