获取 Paypal NVP 相关 ID 的状态
Posted
技术标签:
【中文标题】获取 Paypal NVP 相关 ID 的状态【英文标题】:Get status of Paypal NVP correlationid 【发布时间】:2016-10-07 14:36:27 【问题描述】:我通过 Paypal 的 Express Checkout NVP API 与“Correlationid”进行了交易。如何获取此相关 ID 的详细信息,以了解交易是完成还是拒绝?
【问题讨论】:
【参考方案1】:CorrelationID 几乎没有用,因为 transactionID 用于参考查找,例如这样。最好的解决方案是使用以下命令运行 GETTRANSACTIONDETAILS API 调用以进行快速结帐:
PAYMENTSTATUS 付款状态。
它是以下值之一: 无 - 无状态
Cancelled-Reversal — 撤销已被取消,例如,当您赢得争议并且撤销的资金已退还给您时。
已完成 — 付款已完成,资金已成功添加到您的帐户余额中。
拒绝 — 您拒绝付款。仅当付款之前由于 PendingReason 元素描述的可能原因而处于待处理状态时才会发生这种情况。
已过期 — 已到此付款的授权期限。
失败 — 支付失败。仅当付款是从您买家的银行账户中支付时才会发生这种情况。
进行中 — 交易尚未终止,例如,授权可能正在等待完成。
部分退款 — 款项已部分退款。
待处理 — 付款待处理。有关详细信息,请参阅 PendingReason 字段。
已退款 — 您已退款。
撤消 — 付款因拒付或其他类型的撤消而被撤消。资金已从您的账户余额中扣除并退还给买家。撤销的原因在 ReasonCode 元素中指定。
已处理 — 已接受付款。
作废 — 此交易的授权已作废。
这是一个帮助您处理此调用和参数的文档: GetTransactionsDetails API
【讨论】:
问题是我正在使用 Magento 和 Express 结帐。客户使用 API 请求“SetExpressCheckout”重定向到结帐页面,响应包括“token”、“correlationid”和“ack => success”,但它永远不会回到我的网站,所以我没有它的交易 ID。现在我不知道发生了什么以及为什么客户无法完成付款。 好吧,这不一样。如果付款未完成,您的日志文件中仍应有来自 GETEXPRESSCHECKOUT API 的响应(当客户单击继续 - 重定向到站点时)。在 PayPal Express Checkout 部分中打开 magento 中的调试。测试并检查响应,或者您可以对支付请求运行 HTTP 嗅探器,以查看您在通话中得到的响应类型。 我已经启用了调试模式,并且我看到只有当客户在授权我的网站进行订单审核步骤后返回时才会调用“GetExpressCheckoutDetails”。如果客户从 Paypal 的计费页面离开,则不会对“GetExpressCheckoutDetails”进行 API 调用。以上是关于获取 Paypal NVP 相关 ID 的状态的主要内容,如果未能解决你的问题,请参考以下文章
是否有一个等效的 REST API 函数来获取 Paypal 帐户的余额,类似于 NVP 获取余额 API? [关闭]
Woocommerce + Payment (PayPal) - 安全更新订单状态 + 获取交易 ID