2014-10-02 82 views
0

我有一个IPN脚本,自动发送当Paypal付款到达时购买的产品的下载代码。使用IPN,如何过滤尚未到账的Paypal付款

但我忘了过滤贝宝付款的钱还没有到达....而下载代码被发送给某人......谁将实际上从不支付

An eCheck payment from *** was declined by the sender's bank. We will 
automatically try to process this payment again in 3 business days. It then 
usually takes 3-5 days for the money to be deposited into your account. Please 
do not ship items until you receive payment. 

我已经失去了这一次(产品送达,但我永远不会得到的钱),但下一次:

如何筛选与PayPal IPN这种延迟付款?

+0

客户是无辜的过早的指控,直到证明有罪。错误是你的。你发货了。 – EJP 2014-10-02 23:54:21

+0

@EJP自从拒绝付款以来,我已经多次邮寄过他,并且他从未回复过...并且没有任何与此电子支票付款挂钩的费用。我认为这证明了我的指控。没关系:我这次失败了。 – Basj 2014-10-03 06:56:03

回答

0

我在IPN脚本中添加以下代码:

if (!($payment_status === 'Completed')) 
{ 
    return; 
} 

这可以防止我的产品的“下载代码”在状态不是Completed的情况下被发送。我希望它可以工作,并筛选Pending付款...

+0

更好的办法是检查payment_status,而不是简单地结束脚本,生成电子邮件通知和/或更新数据库,以便买方知道发生了什么。然后,当付款清除时,您将获得具有更新状态的另一个IPN,此时您可以像处理其他已完成的付款一样处理。 – 2014-10-03 06:54:06