多次尝试捕获时出现 Paypal 错误消息 'Buyer cannot pay.'
Paypal Error Message 'Buyer cannot pay.' when trying to capture multiple times
我使用 Paypal 的 Express Checkout。问题是,当我多次尝试获取授权时。我收到失败响应。
本次付款总额为800。
我想获取每个项目的授权。
这是第一个请求。我尝试在 'L_AMT0'
中捕获项目数量
$captureData = array(
'AUTHORIZATIONID' => $payment->payment_id,
'AMT' => $amount, // '41.00'
'COMPLETETYPE' => 'Complete',
'CURRENCYCODE' => 'SGD',
);
$response = $merchant->doCapture($captureData);
这是捕获第一个项目后的第一个响应的某些部分。
一切看起来都很好。
'ACK' => string 'Success' (length=7)
'TRANSACTIONTYPE' => string 'cart' (length=4)
'PAYMENTTYPE' => string 'instant' (length=7)
'AMT' => string '800.00' (length=6)
'L_AMT0' => string '759.00' (length=6)
'L_AMT1' => string '41.00' (length=5)
所以我做了第二个金额并得到了这个错误。
'AUTHORIZATIONID' => string '*****************' (length=17)
'TIMESTAMP' => string '2015-09-09T09:14:51Z' (length=20)
'CORRELATIONID' => string '*************' (length=13)
'ACK' => string 'Failure' (length=7)
'VERSION' => string '115' (length=3)
'BUILD' => string '17972692' (length=8)
'L_ERRORCODE0' => string '10606' (length=5)
'L_SHORTMESSAGE0' => string 'Buyer cannot pay.' (length=17)
'L_LONGMESSAGE0' => string 'Transaction rejected, please contact the buyer.' (length=47)
'L_SEVERITYCODE0' => string 'Error' (length=5)
那么你能帮我找出我的请求有什么问题吗?
好的,我现在找到了解决方案。
只需将第一次和后续捕获的 COMPLETETYPE 更改为 'NotComplete'。
然后在最后一次捕获时将其更改为'Complete'。
https://developer.paypal.com/docs/classic/api/merchant/DoCapture_API_Operation_NVP/
我使用 Paypal 的 Express Checkout。问题是,当我多次尝试获取授权时。我收到失败响应。
本次付款总额为800。
我想获取每个项目的授权。
这是第一个请求。我尝试在 'L_AMT0'
中捕获项目数量 $captureData = array(
'AUTHORIZATIONID' => $payment->payment_id,
'AMT' => $amount, // '41.00'
'COMPLETETYPE' => 'Complete',
'CURRENCYCODE' => 'SGD',
);
$response = $merchant->doCapture($captureData);
这是捕获第一个项目后的第一个响应的某些部分。 一切看起来都很好。
'ACK' => string 'Success' (length=7)
'TRANSACTIONTYPE' => string 'cart' (length=4)
'PAYMENTTYPE' => string 'instant' (length=7)
'AMT' => string '800.00' (length=6)
'L_AMT0' => string '759.00' (length=6)
'L_AMT1' => string '41.00' (length=5)
所以我做了第二个金额并得到了这个错误。
'AUTHORIZATIONID' => string '*****************' (length=17)
'TIMESTAMP' => string '2015-09-09T09:14:51Z' (length=20)
'CORRELATIONID' => string '*************' (length=13)
'ACK' => string 'Failure' (length=7)
'VERSION' => string '115' (length=3)
'BUILD' => string '17972692' (length=8)
'L_ERRORCODE0' => string '10606' (length=5)
'L_SHORTMESSAGE0' => string 'Buyer cannot pay.' (length=17)
'L_LONGMESSAGE0' => string 'Transaction rejected, please contact the buyer.' (length=47)
'L_SEVERITYCODE0' => string 'Error' (length=5)
那么你能帮我找出我的请求有什么问题吗?
好的,我现在找到了解决方案。
只需将第一次和后续捕获的 COMPLETETYPE 更改为 'NotComplete'。
然后在最后一次捕获时将其更改为'Complete'。
https://developer.paypal.com/docs/classic/api/merchant/DoCapture_API_Operation_NVP/