在PHP支付宝API API快速结帐付款错误代码13113
问题描述:
我们已经尝试过使用PayPal沙盒测试我们的网站,并且它可以完全扣除金额。在PHP支付宝API API快速结帐付款错误代码13113
我们将API细节切换到Paypal和链接。我们已经尝试了几个PayPal账户,看它是否有效(所有这些账户都有足够的资金进行交易)。
我们收到通过API我们RETURNURL页面上这回 - 的API调用失败
Array ([TIMESTAMP] => 2012%2d07%2d15T19%3a31%3a43Z [CORRELATIONID] => 927a89205e54a
[ACK] => Failure [VERSION] => 65%2e1 [BUILD] => 3300093 [L_ERRORCODE0] => 13113
[L_SHORTMESSAGE0] => Buyer%20Cannot%20Pay%2e [L_LONGMESSAGE0] =>
The%20Buyer%20cannot%20pay%20with%20PayPal%20for%20this%20Transaction%2e [L_SEVERITYCODE0] => Error)
PHP来作出最后的API调用 -
$APIUSERNAME="*****";
$APIPASSWORD="***";
$APISIGNATURE="*****";
$ENDPOINT = "https://api-3t.paypal.com/nvp";
//$ENDPOINT = "https://api-3t.sandbox.paypal.com/nvp";
$VERSION = "64";
//Build the Credential String:
$cred_str = "USER=" . $APIUSERNAME . "&PWD=" . $APIPASSWORD . "&SIGNATURE=" .
$APISIGNATURE . "&VERSION=" . $VERSION;
//Build NVP String for GetExpressCheckoutDetails
$nvp_str = "&METHOD=GetExpressCheckoutDetails&TOKEN=" . urldecode($token);
//Lets combine both strings then make the API call
$req_str = $cred_str . $nvp_str; $response = PPHttpPost($ENDPOINT, $req_str);
以上阵列来源于当我从paypal收到我的最终确认。
//check Response
if($doresponse['ACK'] == "Success" || $doresponse['ACK'] == "SuccessWithWarning") {
echo "completed"; //just put to test
include "finishtransaction.php"; //cancels my cart sessions
} else{
echo "The API Call Failed"; print_r($doresponse);
}
在谷歌上没有太多关于这个错误的信息,甚至在API错误代码中也没有。有没有人来过这个?
答
PayPal API Error Codes毫无疑问不是很有帮助。
错误代码13113或“买方不能用PayPal支付此交易”意味着PayPal通过拒绝处理交易采取安全措施。这种情况可能是由于下列原因之一(还有更多,但这里有几个):
- 买方没有足够的钱在其帐户
- 买方没有足够的钱在他们的账户,并且他们的信用卡收费存在问题(如果他们已将其设置在他们的设置中)
- 买方已要求退款给卖方的另一件物品,因此PayPal已阻止买方的账户将资金转移到卖方直到情况解决。
- 买方涉嫌欺诈活动,所以他们的账户被冻结。
- 买方的账户被限制寄钱给特定的卖家某些其他原因
- 买方的账户是因为某种特定原因
不幸的是完全冻结,没有太多的人可以告诉你,没有彻底查看您的代码。我会检查我的代码,并确保所有适当的标志和什么 - 没有设置。如果您等待几个小时并仍然收到错误(特别是在多个/新帐户中),那么您需要联系PayPal。
我知道这很糟糕,但只有PayPal能够告诉你为什么交易失败。
谢谢,我现在将检查我的所有代码:D – JP29 2012-07-15 19:57:18
确保在所有参数上使用'urlencode'。你甚至可以使用'urldecode($ token)',当我认为你的意思是'urlencode($ token)' – cegfault 2012-07-15 20:05:13
谢谢,但它似乎并没有这样做。试过编码。当然,如果这是一个促成因素,沙盒将无法工作。 – JP29 2012-07-15 20:31:11