Paypal API:由于商家配置无效,无法处理此交易


Paypal API: This transaction cannot be processed due to an invalid merchant configuration

我已经建立了一个沙箱环境并启用了Business Pro,这样他们就可以接受信用卡付款。

我正在使用您在网站上提供的PHP中的DirectPayment函数,并传递以下参数:$paymentType、$paymentAmount、$creditCardType、$credit CardNumber、$expDate、$cvv2、$firstName、$lastName、$street、$city、$state、$zip、$countryCode、$currencyCode

它使用$resArray=hash_call("DoDirectPayment",$nvpstr)进行调用;

并且$nvpstr字符串是'&AMT=1&货币代码=英镑;PAYMENTACTION=销售&CREDITCARDTYPE=签证;ACCT=4137350247384347&EXPDATE=1122020&CVV2=123&FIRSTNAME=测试&LASTNAME=最后&STREET=Larchlands&城市=宾夕法尼亚大学;STATE=白金汉郡&国家代码=GB&ipad地址=90.207.76.28'

为什么我收到失败响应:

直接信用卡支付API调用失败。详细错误消息:由于商家配置无效,无法处理此交易。短错误消息:配置无效错误代码:10501错误严重性代码:错误

谢谢!

无效的商户配置意味着您的账户上没有启用DoDirectPayment,或者您还没有接受PayPal向您收取的30美元/月的账单协议。

不过,可能发生的情况是,您已经获得批准并同意计费,但您使用的是不同版本的Payments Pro,该版本要求您使用PayFlow API而不是DoDirectPayment。Payments Pro 3.0将只允许您访问DoDirectPayment。Payments Pro 1.5将只允许您访问PayFlow。Payments Pro 2.0应该可以让你访问这两个API,这样你就可以使用你想要的任何一个(尽管,我已经看到2.0账户出于某种原因仍然需要PayFlow。)

事实上,如果你想阅读更多关于PayPal Payments Pro的详细信息,我有一篇关于该历史的博客文章。

如果你确实需要PayFlow,看看这个PayPal PHP SDK。它有一个PayFlow信用卡呼叫设置示例和一个模板供您使用(他们提供的几乎所有其他PayPal Classic API呼叫也是如此),因此您可以在几分钟内完成。