我正在使用 PayPal 自适应支付。我正在此处检索 PaymentDetails 详细信息 https://developer.paypal.com/docs/classic/api/adaptive-payments/PaymentDetails_API_Operation/
我不清楚 senderTransactionStatus 和 transactionStatus 之间的区别?
更奇怪的是我可以有以下场景:
status: COMPLETED
paymentInfoList.paymentInfo.transactionStatus: null
paymentInfoList.paymentInfo.senderTransactionStatus: PENDING
paymentInfoList.paymentInfo.pendingReason: SOME REASON
怎么可能状态是 COMPLETE,但是 senderTransactionStatus 是 PENDING,而 transactionStatus 是 null?
我不知道我应该使用哪种状态,甚至不知道如何组合使用它们来向我的用户报告正确的状态。
我阅读了文档,但仍然一无所知。
最佳答案
status
与提交的付款有关。只要付款已进入处理阶段(即资金正在转移或待转移且交易未被拒绝),这将显示已完成。
senderTransactionStatus
与离开发件人账户的资金有关。如果是 INSTANT 付款(已完成),它将显示已完成:信用卡、即时转账、余额转账。 Pending 将显示资金是否因电子支票、发送限制、风险审查等原因而被搁置。PaymentDetails API 页面上有一个 pendingReasons 列表。 OTHER
可能表示由于隐私政策而未向任何一方披露的内容:它可能与合规性相关、汇款转移规则等。
transactionStatus
应该在收款人的账户中有资金后完成。不过,这可能会根据交易发生的情况而改变。 IE:退款、因退单而暂停、因风险或未经授权的帐户访问而撤销。 编辑:如果收件人的电子邮件地址无效,这将为 NULL。 pendingReason
将显示 UNILATERAL,因为此电子邮件地址在系统中不存在并且UNCLAIMED
如果 transactionStatus
不为 NULL,它和 senderTransactionStatus
将始终相同。这包括等待付款审核、手动接受货币、eCheck、即时银行转账。一切。
关于 Paypal 自适应支付 : transactionStatus vs senderTransactionStatus,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22863429/