DoExpressCheckoutPayment问题 - 未返回付款状态

时间:2014-02-20 11:02:01

标签: paypal paypal-nvp

我目前正在处理一些PayPal代码,我有一个问题, DoExpressCheckoutPayment 有时似乎没有为 PAYMENTINFO_0_PAYMENTSTATUS 返回值。

目前我们只是检查PAYMENTINFO_0_PAYMENTSTATUS是否设置为已完成,但我不确定是否有几次状态不同。

如果有人知道问题是什么或如何调试它会很棒。

1 个答案:

答案 0 :(得分:1)

我要做的第一件事就是开始记录你的API请求和响应,这样你就可以在这样的事情发生时引用它们,并确切地看到PayPal响应中有什么(或没有)回来。您可以通过将文件保存到磁盘,通过电子邮件发送自己,保存到数据库表或任何您喜欢的方式来完成此操作。

有很多不同的东西可能导致付款状态的各种值。欺诈过滤器,电子支票,PayPal持有政策等。

如果您还没有,我建议您也使用Instant Payment Notification (IPN)。它会将事务数据POST到您已设置的脚本以相应地处理数据。它实时发生,因此可以用作额外的数据验证层。 IPN还将包含payment_status参数,因此您可以开始查看不同的值并与API响应进行比较,以便将代码逻辑准确地提供到所需的位置。