我正在尝试将 PayPal 预付款集成到我的网站中,以便用户可以直接在网站上进行付款,但是我在设置时遇到了问题。这是我的代码的样子:
$amt = 10.00;
$txt = "Pay Now!";
$PF_HOST_ADDR = "https://pilot-payflowpro.paypal.com";
$secureTokenId = uniqid('', true);
$postData = "USER=" . "username"
. "&VENDOR=" . "username"
. "&PARTNER=" . "PayPalCA"
. "&PWD=" . "Password"
. "&CREATESECURETOKEN=Y"
. "&SECURETOKENID=" . $secureTokenId
. "&TRXTYPE=S"
. "&AMT=" . $amt;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $PF_HOST_ADDR);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
$resp = curl_exec($ch);
if (!$resp) {echo "<p>To order, please contact us.</p>";}
parse_str($resp, $arr);
if ($arr['RESULT'] != 0) {echo "<p>To order, please contact us.</p>";}
echo "<iframe src='https://pilot-payflowlink.paypal.com?SECURETOKEN=" . $arr['SECURETOKEN'] . "&SECURETOKENID=" . $secureTokenId . "&MODE=TEST' width='490' height='565' border='0' frameborder='0' scrolling='no' allowtransparency='true'>";
我正在使用布局 C(嵌入式 iframe)而不是 A 或 B(托管结帐页面,它会在末尾使用表单而不是 iframe)。
我得到的结果是这样的:
Array ( [RESULT] => 1 [RESPMSG] => User authentication failed )
并且 iframe 给出以下错误:
Error: Invalid Merchant or Merchant doesn't exist!
我在 https://manager.paypal.com/ 输入的信息与我用来登录帐户的信息相同并且我已经在该网站上完成了所有必需的设置。任何帮助将不胜感激。
最佳答案
只要管理器凭据正常工作,您提供的代码就可以正常工作。
我能够使用正确的凭据获得该错误的唯一方法是在经理帐户内的托管结帐设置页面内从测试更改为实时。
如果这些设置正确,您可能想尝试在经理帐户中创建辅助用户。
关于 Paypal 付款高级设置错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23392270/