Paypal ExpressCheckout "constant values" 验证交易成功
Paypal ExpressCheckout "constant values" to validate a successful transaction
在SetExpressCheckout
中我设置了以下值
'PAYMENTREQUEST_0_ALLOWEDPAYMENTMETHOD' => 'InstantPaymentOnly',
'PAYMENTREQUEST_0_PAYMENTACTION'=> 'Sale'
成功 DoExpressCheckout
后,这是 returned
的部分内容
ACK => Success
PAYMENTINFO_0_TRANSACTIONTYPE => expresscheckout
PAYMENTINFO_0_PAYMENTTYPE => instant
PAYMENTINFO_0_PAYMENTSTATUS => Completed
PAYMENTINFO_0_ERRORCODE => 0
PAYMENTINFO_0_ACK => Success
PAYMENTINFO_0_PAYMENTSTATUS -- 设置 InstantPaymentOnly
后,DoExpressCheckout
将永远 return PAYMENTINFO_0_PAYMENTSTATUS
of In-Progress
、Pending
、Processed
或除明确的是或否以外的其他内容?
基本上,由于只允许即时付款,因此唯一永远完成的付款将在第一次时有 PAYMENTINFO_0_PAYMENTSTATUS
的 Completed
?
ACK 和 PAYMENTINFO_0_ACK -- 它们有关联吗? Paypal 声明 ACK
“ 指示交易的成功或失败状态以及是否有任何警告 returned。”
两个 ACK
值将是 Success
或 Failure
?这是否明确指交易是否已经完成或将要完成?
非常感谢,
InstantPaymentOnly 阻止买家账户中的非即时资金来源(例如电子支票付款)。这意味着您不会获得等待买家资金移动完成的交易。但是还有其他因素可能导致付款处于待处理状态而不是完成状态。这些其他因素可能适用于您的特定用例,也可能不适用,但示例包括以新货币向您支付的款项将一直持有,直到您决定是否以该货币开立余额或将其自动转换为您的主要货币,或某些欺诈 filter/fraud 检测场景。
至于 ACK/ACK_PAYMENTINFO_0_ACK,如果您只请求一次付款(并且没有任何额外的事情,例如签署结算协议),我猜这两种状态将始终相同,但我建议您通过官方文档验证。
在SetExpressCheckout
中我设置了以下值
'PAYMENTREQUEST_0_ALLOWEDPAYMENTMETHOD' => 'InstantPaymentOnly',
'PAYMENTREQUEST_0_PAYMENTACTION'=> 'Sale'
成功 DoExpressCheckout
后,这是 returned
ACK => Success
PAYMENTINFO_0_TRANSACTIONTYPE => expresscheckout
PAYMENTINFO_0_PAYMENTTYPE => instant
PAYMENTINFO_0_PAYMENTSTATUS => Completed
PAYMENTINFO_0_ERRORCODE => 0
PAYMENTINFO_0_ACK => Success
PAYMENTINFO_0_PAYMENTSTATUS -- 设置 InstantPaymentOnly
后,DoExpressCheckout
将永远 return PAYMENTINFO_0_PAYMENTSTATUS
of In-Progress
、Pending
、Processed
或除明确的是或否以外的其他内容?
基本上,由于只允许即时付款,因此唯一永远完成的付款将在第一次时有 PAYMENTINFO_0_PAYMENTSTATUS
的 Completed
?
ACK 和 PAYMENTINFO_0_ACK -- 它们有关联吗? Paypal 声明 ACK
“ 指示交易的成功或失败状态以及是否有任何警告 returned。”
两个 ACK
值将是 Success
或 Failure
?这是否明确指交易是否已经完成或将要完成?
非常感谢,
InstantPaymentOnly 阻止买家账户中的非即时资金来源(例如电子支票付款)。这意味着您不会获得等待买家资金移动完成的交易。但是还有其他因素可能导致付款处于待处理状态而不是完成状态。这些其他因素可能适用于您的特定用例,也可能不适用,但示例包括以新货币向您支付的款项将一直持有,直到您决定是否以该货币开立余额或将其自动转换为您的主要货币,或某些欺诈 filter/fraud 检测场景。
至于 ACK/ACK_PAYMENTINFO_0_ACK,如果您只请求一次付款(并且没有任何额外的事情,例如签署结算协议),我猜这两种状态将始终相同,但我建议您通过官方文档验证。