PayPal IPN - 使用不同的电子邮件将用户注册到 PayPal 帐户
Posted
技术标签:
【中文标题】PayPal IPN - 使用不同的电子邮件将用户注册到 PayPal 帐户【英文标题】:PayPal IPN - using different email for user registration to PayPal Account 【发布时间】:2017-10-06 19:56:33 【问题描述】:我已经为我们的网站设置了一个 PayPal IPN,并且工作正常,但是如果有人使用与其 PayPal 帐户电子邮件地址不同的电子邮件地址,我无法将其与 IPN 消息匹配并将其标记为已付款。
其他人是如何解决这个问题的?我不想特别花时间以防两个人同时注册。
--- 分辨率:<input type="hidden" name="custom" value="<?php echo $rand ?>" />
在带有自定义按钮的表单内。 POST 将其拾取并发送到 IPN 消息。
【问题讨论】:
您应该使用交易ID,而不是电子邮件地址来识别付款,并且绝对而不是时间。 【参考方案1】:您最好的选择是 (a) 向交易添加发票 ID,或 (b) 向交易添加自定义值。几乎所有的 PayPal 支付产品都允许这样做。 (例如,在 PayPal Payments Standard 中,发票 ID 的参数名称为 invnum
,或自定义值的参数名称为 custom
。在 Express Checkout 中,它是 PAYMENTREQUEST_0_INVNUM
和 PAYMENTREQUEST_0_CUSTOM
。)数据包含在IPN 回发,因此您可以使用它来匹配您记录中的付款。两者之间的区别在于,PayPal 将阻止使用与先前交易相同的发票 ID 的交易(只要商家没有关闭它的设置),而自定义值只是通过而不被检查。
【讨论】:
感谢您指出正确的方向我使用了自定义字段隐藏输入字段。以上是关于PayPal IPN - 使用不同的电子邮件将用户注册到 PayPal 帐户的主要内容,如果未能解决你的问题,请参考以下文章