Paypal GetRecurringPaymentsProfileDetails-ACK=失败
我有代码获取重复付款详细信息…哪里错了? //--------------------------------------------------------------------------------------------------------------------------------------------------------Paypal GetRecurringPaymentsProfileDetails-ACK=失败,paypal,paypal-sandbox,Paypal,Paypal Sandbox,我有代码获取重复付款详细信息…哪里错了? //-------------------------------------------------------------------------------------------------------------------------------------------------------- public function callNVP($profileId) { $api_request = '&USER='
public function callNVP($profileId) {
$api_request = '&USER=' . urlencode('bestlifeXXXXX.gmaill.com')
. '&PWD=' . urlencode('136XXXXXXX')
. '&SIGNATURE=' . urlencode('XXXXXXXXJJJ4qi4-ASVptjmiE8Sqp4tXXXXXXCa')
. '&VERSION=76.0'
. '&METHOD =GetRecurringPaymentsProfileDetails'
. '&PROFILEID=' . urlencode($profileId);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api-3t.sandbox.paypal.com/nvp'); // For live transactions, change to 'https://api-3t.paypal.com/nvp'
curl_setopt($ch, CURLOPT_VERBOSE, 1);
//curl_setopt($ch, CURLOPT_HEADER, FALSE);
// Uncomment these to turn off server and peer verification
//curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
//curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
// Set the API parameters for this transaction
//curl_setopt($ch, CURLOPT_HTTPHEADER,$headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, $api_request);
// Request response from PayPal
$response = curl_exec($ch);
// If no response was received from PayPal there is no point parsing the response
if (!$response)
die('Calling PayPal to change_subscription_status failed: ' . curl_error($ch) . '(' . curl_errno($ch) . ')');
curl_close($ch);
// An associative array is more usable than a parameter string
parse_str($response, $parsed_response);
return $parsed_response;
}
但它的返回结果是:
Array
(
[0] => Array
(
[TIMESTAMP] => 2015-12-10T03:49:09Z
[CORRELATIONID] => cb2489449e84c
[ACK] => Failure
[L_ERRORCODE0] => 10001
[L_SHORTMESSAGE0] => Internal Error
[L_LONGMESSAGE0] => Timeout processing request
)
)
我想要的是:
(
[PROFILEID] => I-CL7Kxxx
[STATUS] => Active
[AUTOBILLOUTAMT] => AddToNextBilling
[DESC] => xxx
[MAXFAILEDPAYMENTS] => 2
[SUBSCRIBERNAME] => Dan
[PROFILESTARTDATE] => 2013-05-15T07:00:00Z
[PROFILEREFERENCE] => 31571
[NEXTBILLINGDATE] => 2013-05-16T10:00:00Z
[NUMCYCLESCOMPLETED] => 1
[NUMCYCLESREMAINING] => 18446744073709551615
[OUTSTANDINGBALANCE] => 0.00
[FAILEDPAYMENTCOUNT] => 0
[LASTPAYMENTDATE] => 2013-05-15T14:52:04Z
[LASTPAYMENTAMT] => 0.10
[TRIALAMTPAID] => 0.00
[REGULARAMTPAID] => 0.10
[AGGREGATEAMT] => 0.10
[AGGREGATEOPTIONALAMT] => 0.00
[FINALPAYMENTDUEDATE] => 1970-01-01T00:00:00Z
[TIMESTAMP] => 2013-05-15T14:55:58Z
[CORRELATIONID] => 225681xxx
[ACK] => Success
[VERSION] => 64
[BUILD] => 5908853
[SHIPTOSTREET] => xxx
[SHIPTOCITY] => xxx
[SHIPTOSTATE] => CA
[SHIPTOZIP] => xxx
[SHIPTOCOUNTRYCODE] => US
[SHIPTOCOUNTRY] => US
[SHIPTOCOUNTRYNAME] => United States
[SHIPADDRESSOWNER] => PayPal
[SHIPADDRESSSTATUS] => Unconfirmed
[BILLINGPERIOD] => Day
[BILLINGFREQUENCY] => 1
[TOTALBILLINGCYCLES] => 0
[CURRENCYCODE] => USD
[AMT] => 0.10
[SHIPPINGAMT] => 0.00
[TAXAMT] => 0.00
[REGULARBILLINGPERIOD] => Day
[REGULARBILLINGFREQUENCY] => 1
[REGULARTOTALBILLINGCYCLES] => 0
[REGULARCURRENCYCODE] => USD
[REGULARAMT] => 0.10
[REGULARSHIPPINGAMT] => 0.00
[REGULARTAXAMT] => 0.00
)
谁能帮我?请……您有这个:
'&METHOD =GetRecurringPaymentsProfileDetails'
我认为那里的空间导致了一个无效的请求。试试这个:
'&METHOD=GetRecurringPaymentsProfileDetails'
这肯定是因为您的API请求(我猜它的配置文件ID不正确) 您能否尝试(单击)浏览器中的以下链接(替换API凭据、配置文件ID) 看看你得到了什么回应
当我使用“I-XXXXXXXXXX”作为配置文件id时,我得到了内部错误。您试图传递的配置文件id是什么?配置文件ID是在Sandbox中创建的还是Live?在Sandbox中。。。curl_setopt($ch,CURLOPT_URL,')您能告诉我您传入的个人资料ID吗?我会找的你要吗?I-LA5TLTYBLNA9操作:GetRecurringPaymentsProfileDetails我想要它的状态(活动、过期、受支持…等)。您的用户名和密码的API凭据似乎无效。您不应使用帐户登录,而应使用随签名提供给您的API凭据。你能检查一下吗?不!它不起作用。我使用action:SetExpressCheckout和action:ManageRecurringPaymentsProfileStatus。这是工作。但行动:获得定期工资详细资料是行不通的。你试过我告诉你的吗?由于参数名称中有空格,因此无法看到正确的方法。您可以看到呼叫成功运行。该示例正在使用我的,我建议您查看一下。贝宝自己的集成团队更喜欢它。正如您所看到的,这个示例是开箱即用的,并且对于经典API中几乎所有可用的PayPal API调用都有相同的功能。XXXX是一个匿名的。不要真的。。。我在论坛Paypal中看到,它不允许GetRecurringPaymentsProfileDetails,因为API不支持。请提供使用我在回答中提供的链接时得到的完整响应