【问题标题】:10001 paypal internal error: timeout processing request Express Checkout10001 paypal 内部错误:超时处理请求 Express Checkout
【发布时间】:2012-12-21 18:31:21
【问题描述】:

首先,我没有商业账户,所以如果是这个问题,请告诉我,因为几乎不可能在他们的官方网站上找到 Paypal Express Checkout 的要求。

我的这个 API 的代码是:

$requestParams = array(
     'METHOD' => $method,
     'VERSION' => $this -> _version,
     'USER' => $PayPalApiUsername,
     'PWD' => $PayPalApiPassword,
     'SIGNATURE' => $PayPalApiSignature
);

$request = array_merge($requestParams, $params);
//$params is bringed from other php.

$ch = curl_init();
  curl_setopt($ch,CURLOPT_URL ,'https://api-3t.paypal.com/nvp');
  curl_setopt($ch,CURLOPT_VERBOSE ,1);
  curl_setopt($ch,CURLOPT_SSL_VERIFYPEER ,false);
  curl_setopt($ch,CURLOPT_SSL_VERIFYHOST ,false);
  curl_setopt($ch,CURLOPT_RETURNTRANSFER ,1);
  curl_setopt($ch,CURLOPT_HTTPGET ,true);
  curl_setopt($ch,CURLOPT_POSTFIELDS ,$request);

$response = curl_exec($ch);

然后,直到这里(我认为)一切都好。但是做一些检查,这是我用 $request 发送的:

$request: array(16) {
["METHOD"]=>
string(18) "SetExpressCheckout"
["VERSION"]=>
string(4) "97.0"
["USER"]=>
string(27) "xxx_api1.example.com"
["PWD"]=>
string(16) "yyyyyyyyyyyyyyyy"
["SIGNATURE"]=>
string(56) "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
["RETURNURL"]=>
string(50) "http%3A%2F%2Fwww.website.com%2Fcontinue.php"
["CANCELURL"]=>
string(53) "http%3A%2F%2Fwww.website.com%2Fpaypal%2Fcancel_url.php"
["PAYMENTREQUEST_0_AMT"]=>
string(5) "10.95"
["PAYMENTREQUEST_0_CURRENCYCODE"]=>
string(3) "EUR"
["PAYMENTREQUEST_0_ITEMAMT"]=>
string(5) "10.95"
["PAYMENTREQUEST_0_SELLERPAYPALACCOUNTID"]=>
string(24) "xxx%40example.com"
["PAYMENTREQUEST_0_PAYMENTACTION"]=>
string(4) "Sale"
["L_PAYMENTREQUEST_0_NAME0"]=>
string(17) "ProductA"
["L_PAYMENTREQUEST_0_AMT0"]=>
string(5) "10.95"
["L_PAYMENTREQUEST_0_QTY0"]=>
string(1) "1"
["L_PAYMENTREQUEST_0_NUMBER0"]=>
string(1) "1"
}

这是我从 Paypal 收到的:

$response: 
TIMESTAMP=2013%2d01%2d07T23%3a20%3a43Z
CORRELATIONID=7a8130fb32e44
ACK=Failure
L_ERRORCODE0=10001
L_SHORTMESSAGE0=Internal%20Error
L_LONGMESSAGE0=Timeout%20processing%20request

有人知道这里发生了什么吗?这是错的吗?主要帐户是这里的问题吗?

【问题讨论】:

    标签: paypal express-checkout


    【解决方案1】:

    您不会有任何机会将您的返回网址作为带有下划线的子域吗?

    【讨论】:

    • 嗯,是像yourwebsite.com/PP_confirm.php和/PP_cancel.php这样的普通网站。这个符号“_”有问题吗?
    • 我发现我的开发域从贝宝收到了一些非常模糊的错误,因为我使用的是带有下划线的子域,例如my_subdomain.example.com
    【解决方案2】:

    解决方案:

    我用这个解决了这个问题:

    避免使用 "urlencode()" 对参数进行编码,正常保存数据。

    示例:

    array(
       'RETURNURL' => 'http://www.yourwebsite.com/confirm.php', //without urlencode()
       'CANCELURL' => 'http://www.yourwebsite.com/cancel.php'  //without urlencode()
    );
    

    在通过“Curl”发送之前使用 http_build_query($request),如下所示:

    curl_setopt($ch,CURLOPT_POSTFIELDS , http_build_query($request));
    

    【讨论】:

    • http_build_query($request) 为我做的
    • 天哪,这是 paypal 处理“multipart/form-data”编码时的一个错误.. 3 年后
    【解决方案3】:

    我遇到了同样的错误,但是我的问题是卡到期日期的格式错误。我收到的错误是由我过去的日期引起的。它的格式不正确。它必须是“032018”而不是“3/2018”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-14
      • 2016-08-05
      • 1970-01-01
      • 2011-05-30
      • 2013-02-23
      • 2013-08-20
      • 2016-11-13
      • 2017-05-31
      相关资源
      最近更新 更多