捕获重复的PayPal IPN付款

时间:2012-10-22 12:40:50

标签: php paypal paypal-ipn

我通过PayPal的IPN服务设置定期付款解决方案,基本上用户填写表格,支付金钱,通过IPN,我的系统获得ping,以便用户访问系统。

技术上一切都运行良好,但偶尔在用户周期的最后一天他们会忘记这是一个定期付款并再次填写表格。 PayPal似乎并不介意这一点,并创建了第二个定期付款资料。

目前我进去,退款并取消这个新的付款资料,但显然这并不理想 - 我有什么方法可以将PayPal配置为不接受当前有效个人资料的人的新个人资料?或者我是否需要在我的网站结束时抓住这个并在允许付款之前进行某种形式的查询?

1 个答案:

答案 0 :(得分:3)

Paypal不承认交易是重复交易,它将交易视为新交易。您必须从系统中解决它。 在实施支付网关时,在发送到支付网关之前,最好先保存状态为挂起或系统中某些内容的计费。 此外,在用户填写的表单中,您可以实现一个字段来唯一地标识用户,例如他的电子邮件地址,还可以根据系统中的用户唯一字段保存到期日或第二个重复日期。现在,当用户输入相同的唯一字段并想再次提交表单时,您可以验证同一用户是否再次付款,但尚未达到第二个结算日期的到期,因此提示并限制他再次付款。

希望它会对你有所帮助。