paypal - DoExpressCheckoutPayment 问题 - 不返回付款状态

标签 paypal paypal-nvp

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

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

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

最佳答案

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

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

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

关于paypal - DoExpressCheckoutPayment 问题 - 不返回付款状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21905746/

相关文章:

paypal - 从 paypal 发送付款时需要主要用户批准

ruby-on-rails - Rails 4 Paypal REST API 集成

用于捐赠的 Paypal REST API

c# - 是否可以在没有 "APIPassword"的情况下使用 PayPal API 接受付款

php - 如何在 PayPal 沙盒账户中启用 DPRP?

paypal - 如何制作 Paypal 按钮字段 'Required' ?

php - Paypal 自适应链式支付 - 发件人的金额是主要收款人的金额而不是总金额。怎么修?

paypal - SetExpressCheckout Paypal API : Using "physical" category for digital goods

php - Paypal DoDirectPayment 无需用户在场(例如使用 cron 作业)