0

我目前正在处理一些 PayPal 代码,并且遇到一个问题,DoExpressCheckoutPayment有时似乎没有返回 PAYMENTINFO_0_PAYMENTSTATUS 的

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

如果有人知道问题可能是什么或如何调试它,那就太好了。

4

1 回答 1

1

我要做的第一件事是开始记录您的 API 请求和响应,以便您可以在发生此类情况时参考它们,并准确查看 PayPal 响应中返回(或未返回)的内容。您可以通过将文件保存到磁盘、给自己发送电子邮件、保存到数据库表或任何您喜欢为这类事情做的事情来做到这一点。

有很多不同的事情可能会导致付款状态的不同值。欺诈过滤器、电子支票、PayPal 持有政策等。

如果您还没有,我建议您也使用即时付款通知 (IPN)。它会将交易数据发布到您设置的脚本以相应地处理数据。它是实时发生的,因此可以用作数据验证的附加层。IPN 还将包含一个 payment_status 参数,因此您可以开始查看不同的值并与 API 响应进行比较,以便将您的代码逻辑准确地放在需要的位置。

于 2014-02-21T06:30:40.373 回答