【发布时间】:2014-05-10 20:04:00
【问题描述】:
我已经研究并尝试了 2 天,以使用 PayPal Adaptive API 进行测试调用 我使用 php cURL 手写了一个相当简单的测试代码...
protected function makePayment($a=''){
if($a==''){return 'OOPs';}
$amount = "1.00";
$receiver = "RECEIVER TEST EMAIL";
$url = 'https://api-3t.sandbox.paypal.com/nvp/Pay';
$paypalHeaders = array(
'X-PAYPAL-SECURITY-USERID : XXXXXXXX',
'X-PAYPAL-SECURITY-PASSWORD : XXXXXXX',
'X-PAYPAL-SECURITY-SIGNATURE : XXXXXXX',
'X-PAYPAL-SECURITY-VERSION: 1.8.6',
'X-PAYPAL-DEVICE-IPADDRESS: <MY SITE IP>',
'X-PAYPAL-REQUEST-DATA-FORMAT : NV',
'X-PAYPAL-RESPONSE-DATA-FORMAT : NV',
'X-PAYPAL-APPLICATION-ID : APP-80W284485P519543T',
'X-PAYPAL-SANDBOX-EMAIL-ADDRESS: MY-SANDBOX-APP-OWNER@email.com'
);
// Format the call payload.
$payload = array(
"actionType"=>"PAY",
"currencyCode"=>"USD",
"receiverList"=>array(
"receiver"=>array(
array("amount"=>$amount,"email"=>$receiver)
)
),
"returnUrl"=>"https://biddingblock.com/api/payment.php",
"cancelUrl"=>"https://biddingblock.com/index.htm",
"requestEnvelope"=>array(
"errorLanguage"=>"en_US",
"detailLevel"=>"ReturnAll"
)
);
// Make the call
$curl = curl_init();
curl_setopt($curl, CURLOPT_VERBOSE, 1);
curl_setopt($curl, CURLOPT_HEADER, TRUE);
curl_setopt($curl, CURLOPT_HTTPHEADER, $paypalHeaders);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $Request);
$Response = curl_exec($curl);
curl_close($curl);
return $Response;
* 我在此代码上尝试的每项修改都没有超过一垒,我收到以下错误*
HTTP/1.1 400 错误请求 服务器:AkamaiGHost 哑剧版:1.0 内容类型:文本/html 内容长度:176 过期时间:2014 年 3 月 31 日星期一 12:31:45 GMT 日期:2014 年 3 月 31 日星期一 12:31:45 GMT 连接:关闭
处理您的请求时出错。
参考#166.d80300cc.1396269105.de2dda4
我没有使用自适应 API PHP SDK,这或多或少是完整的代码减去真正的密钥和接收者电子邮件
我做错了什么? 有人可以帮忙吗?
PS:我也尝试过使用 DATA-FORMAT JSON 和 JSON 编码负载数组。
【问题讨论】:
标签: php paypal paypal-adaptive-payments