我正在尝试使用 nvp 安装快速结帐并开始运行。我已经在沙箱中设置了业务帐户并生成了 api 访问签名凭据。
$this->NVPCredentials = 'USER=' . credentials['username'];
$this->NVPCredentials .= '&PWD=' . credentials['password'];
$this->NVPCredentials .= '&VERSION=108.0';
$this->NVPCredentials .= '&SIGNATURE=' . credentials['signature'];
如上所示包装凭据+支付详细信息所需的所有详细信息以创建 nvp 字符串,下面是 curl 调用
$curl = curl_init('https://api-3t.sandbox.paypal.com/nvp');
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $Request);
$Request 保存传递的 nvp 字符串。
我确保设置了所有必填字段,但我总是得到一个 10002 | 身份验证/授权失败 | 您无权进行此 API 调用
我认为这是签名的问题,所以我删除了签名并创建了一个证书文件,从沙盒帐户下载并使用它,但仍然是同样的错误。无论我改变什么,它总是抛出同样的错误。
curl_setopt($curl, CURLOPT_SSLCERT, $pathtocertpem);
我已经没有什么想法可以尝试了。请不要犹豫,询问更多细节,如果有人知道我可能做错了什么,请不要犹豫。这将不胜感激。
问候,
德沃