2012-04-27 71 views
0

所以我一直在使用贝宝定期付款大约一年现在,并在大多数情况下它运作良好(支付后通过IPN验证,等...)贝宝定期付款 - 如何防止重复?

我遇到的一个问题是有时我的客户会设置多个付款资料,我绝对不希望他们这样做。然后我必须退还付款并取消其他配置文件。

我很好奇,如果有人有任何建议,以防止用户这样做,或我应该防止发生这种情况。

IPN通知点击我的服务器后,用户无法再次购买,但有时可能需要30秒或一小时。那么我的用户就会认为它没有通过并再次购买。

我的过程是相当多这样的:

Page 1 (user selects options) 
    Paypal API: SetExpressCheckout 
Page 2 (user goes to paypal, logs in, accepts agreement) 
Page 3 (I create the agreement) 
    Paypal API: GetExpressCheckoutDetails 
    Paypal API: CreateRecurringPaymentsProfile 

我想某处第3页我应该做一个检查,但我不是100%肯定,我应该如何去做。简单地与PayerID建立关联,他们试图在这里购买一些东西,然后阻止它继续?

人们推荐什么?

谢谢!

回答

0

创建第一个定期付款配置文件后,在响应中您将获得应该是“ActiveProfile”的配置文件ID和配置文件状态。我建议您保存它,然后在第1页再次选择任何订阅(或产品)之前进行检查。