使用 IPN 处理 "pending payments"的 PayPal 快速结帐

标签 paypal paypal-ipn

我找不到关于此的任何明确文档。
如果您使用 paypal 快速结账,当付款待处理时接下来会发生什么?
如果状态发生变化,paypal 是否会通过 IPN 向您发送更新,您有选择吗?

假设您执行 DoExpressCheckoutPayment(使用 NVP) 你得到这个:

&PAYMENTSTATUS=Pending 
&PENDINGREASON= ECHECK //The payment is pending because it was made by an eCheck that has not yet cleared. 
&REASONCODE=None

所以你已经付款了,你想等到它被清除吗?接下来你应该做什么。

更新一些(外部文档)我发现只有建议你可以使用(IPN?)来处理待处理的付款。

"If the Do Express Checkout Payment PENDINGREASON response is a value other than none or completed , the payment is pending. Typically, this means the customer has paid with aneCheck. In such a case, funds are not guaranteed, and you should not ship or deliver items or services until the payment has successfully completed. NOTE:
PayPal recommends that you block eChecks as a payment method if you are unable tohandle pending state payments.To find out the status of a pending payment, you can:

Submit an Inquiry transaction.

Check the status using PayPal Manager. See PayPal Manager online help for details."

paypal 沙盒似乎可以选择检查快速结帐类型的 IPN 消息。 DoExpressCheckoutPayment 和 IPN 之间唯一的相关性(如果以这种方式使用的话)似乎您可以使用“自定义”字段来跟踪待定状态。 DoExpressCheckoutPayment (nvp) 中未提供 txn_id (ipn)。有没有人有这方面的经验?

最佳答案

交易 ID 肯定在 DoExpressCheckoutPayment 中给出,即使 PAYMENTSTATUS=Pending。待处理的付款仍然是交易。

是的,当交易完成时,您会通过 IPN 收到通知。这通常需要几个工作日。
完成后,您可以将来自 DoExpressCheckoutPayment 的交易与您将通过 IPN 中的 txn_id 收到的 IPN 相关联。

注意:如果您想在 PayPal 沙盒中测试“待处理”付款,只需转至 https://developer.paypal.com/。 > 测试账户并点击您正在测试的卖家账户的“付款审核”。
在该卖家账户上启用付款审查后,它收到的任何交易都将处于“待处理”状态。
只需禁用付款审核即可在之后发布交易。

关于使用 IPN 处理 "pending payments"的 PayPal 快速结帐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9314031/

相关文章:

ios - PayPal 用户对用户付款

magento - 如何在 Magento 中明智地显示运输方式客户组?

PayPal Express Checkout 信用卡按钮要求

php - 表单标签内的 Paypal 表单重定向

php - Paypal IPN 初始和后续响应

paypal - 刷新 PayPal OAuth token

paypal - 用信用卡付款不工作

node.js - Paypal IPN 的 Node Express bodyParser

php - PayPal IPN 模拟器不工作?

PayPal IPN 无法到达 EC2 tomcat