我想将Paypal Advanced集成到PHP中。 成功通过值并提交表单后,得到了一个 Paypal的错误消息回复。 错误消息是:RESPMSG =用户身份验证失败。
我已使用这些代码:
$PF_HOST_ADDR = "https://pilot-payflowpro.paypal.com";
$post_data = 'USER=' . $PF_USER
. '&VENDOR= ' . $PF_USER
. '&PWD= ' . $PF_PWD
. '&PARTNER= ' . $PF_PARTNAR
. '&AMT=' . $PF_PACKAGE
. '&ACCT=' . $PF_CARD_NO
. '&ACCTTYPE='.$PF_CARD_TYPE
. '&CURRENCY='.$PF_CURRENCY_TYPE
. '&CVV2=' . $PF_CVV
. '&EXPDATE=' . $PF_EXP_DATE
. '&CREATESECURETOKEN=Y'
. '&SECURETOKENID=' . $PF_SECURE_TOKEN_ID
. '&CLIENTIP='. $PF_IP_ADDRESS
. '&TRXTYPE=S';
$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, $post_data); // Ready the Post data to Send ....
$response = curl_exec($ch); //Getting Response from Server
print_r($response);
答案 0 :(得分:0)
$post_data
变量是查询字符串,因此请从VENDOR,PWD和PARNTER旁边删除空格
就像这样
$post_data = 'USER=' . $PF_USER
. '&VENDOR=' . $PF_USER
. '&PWD=' . $PF_PWD
. '&PARTNER=' . $PF_PARTNAR
. '&AMT=' . $PF_PACKAGE
. '&ACCT=' . $PF_CARD_NO
. '&ACCTTYPE='.$PF_CARD_TYPE
. '&CURRENCY='.$PF_CURRENCY_TYPE
. '&CVV2=' . $PF_CVV
. '&EXPDATE=' . $PF_EXP_DATE
. '&CREATESECURETOKEN=Y'
. '&SECURETOKENID=' . $PF_SECURE_TOKEN_ID
. '&CLIENTIP='. $PF_IP_ADDRESS
. '&TRXTYPE=S';
答案 1 :(得分:0)
检查您在API请求中使用的用户帐户的权限。听起来好像用户根本无权进行API调用。
登录到您的http://manager.paypal.com帐户,转到帐户管理 - >管理用户,然后单击您正在使用的用户。
在底部,您将看到“为用户分配权限”部分,其中包含以下选项...
您需要确保将其设置为API_FULL_TRANSACTIONS,或者ADMIN也应该有效。
你能确认一下吗?