PayPal支付超时 - DoExpressCheckoutPayment

3
我们在一个相当大的网站上使用PayPal,整合过程非常顺利,集成向导提供了所有的代码帮助。现在我们在上线后的第一天处理了许多交易,但是有小部分(5%)的交易实际上是由PayPal处理的,但我们的系统收到了一个超时错误。我认为这发生在我们提交“DoExpressCheckoutPayment”方法的时候,因此系统无法确定付款是否已经完成。
这是一个真正棘手的问题,因为网站有一个实时货币需要更新,所以PayPal扣钱但系统没有更新是不可接受的。
我想知道这是否是一个常见的问题,我们应该如何处理它。我正在尽力重现这个问题,但目前还无法做到。
这看起来像是一个类似的问题-https://www.x.com/thread/45136 任何帮助都将不胜感激!
2个回答

1

在您的应用程序中添加重试逻辑。这是处理此问题的常见方法。


所以,超时后应该重试吗?另外,模拟超时的最佳方法是什么? - LiamB
@Pino,是的,这取决于你的抽象看起来如何。任何报告支付事务失败的东西都应该意识到超时的可能性。 - John Farrell
如何在开发中模拟这个? - LiamB
@Pino,如果我不熟悉你的代码,我无法告诉你。你不能要求PayPal返回超时,但你可以模拟、存根和伪造这个结果。 - John Farrell

0

经过更深入的研究,重试逻辑并不是一个好主意,因为超时是由响应引起的(所以Paypal很可能已经将款项存入账户)。

即时付款通知(IPN)似乎是解决方案。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接