php - PHP 支付错误代码 13113 中的 Paypal API Express Checkout

标签 php paypal

我们已经使用 Paypal 沙盒对我们的网站进行了尝试和测试,它完全可以扣除金额。

我们将 API 详细信息切换为 Paypal 和链接。我们已经尝试了几个 paypal 账户,看看它是否有效(他们都有足够的资金进行交易)。

我们通过我们的 returnUrl 页面上的 API 收到这个回复 - 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 才能告诉您交易失败的确切原因。

关于php - PHP 支付错误代码 13113 中的 Paypal API Express Checkout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17340133/

相关文章:

php - 从循环创建多个 MySQL 表?

php - 我怎样才能用 symfony 获得路由的绝对 url

php - 尝试从数组中删除重复的行。到栏目内容

php - PayPal 沙盒帐户不显示交易

android - 如何在 Android 应用程序中集成 Paypal?

php - Magento - 如何在灯箱弹出窗口中显示确认、成功、错误

php - 如何显示基于 friend 的 friend 的推荐列表

php - Paypal cURL 请求 - ERRORCODE0=81002

paypal - 我如何获得访问 token ? - Flutter 中的 Paypal

php - 像Web门户那样的ebay之类的API接口(interface)