2012-04-02 12 views
0

私はcURL経由でNVP支払いリクエストをPayPalサーバーに送信しようとしていますが、私はいつもERRORCODE0 = 81002を取得してしまいます。PayPalのcURLリクエスト - ERRORCODE0 = 81002

//The request parameters 
$request_params = array(
    'METHOD' => 'PAY', 
    'VERSION' => '85.0', 
    'USER' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 
    'PWD' => 'xxxxxxxxxxxxxxxx', 
    'SIGNATURE' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 
    'CURRENCYCODE' => 'USD', 
    'RETURNURL' => 'https://localhost', 
    'CANCELURL' => 'https://localhost' 
); 
$endpoint = 'https://api-3t.sandbox.paypal.com/nvp?'; 

//Building the NVP string 
$request = http_build_query($request_params); 

//cURL settings 
$curl_options = array(
    CURLOPT_URL => $endpoint, 
    CURLOPT_RETURNTRANSFER => 1, 
    CURLOPT_POST => 1, 
    CURLOPT_POSTFIELDS => $request, 
    CURLOPT_VERBOSE => 1, 
    CURLOPT_SSL_VERIFYPEER => FALSE, 
    CURLOPT_TIMEOUT => 30, 
); 

$ch = curl_init(); 
curl_setopt_array($ch, $curl_options); 

$response = curl_exec($ch); 

curl_close($ch); 

答えて

1

あなたからこのサンプルを得ました: しかし、私はちょうどカントは、問題を見つけるように見えますか?

「方法」の値「PAY」は見たことがありません これらは有効なpaypalアクションである必要があります。 http://rvyu.com/rcuu

更新:そう例えば、最近私は

すべての操作自分のサイト上で、この表でご利用いただけます(私はPayPalのプロでのお支払いのための最も使用される方法であるが考えると)DoDirectPaymentを使用しました主な質問は:あなたは何をしたいですか?基本的なフィールド(金額やカード番号など)を送信していないため、支払いを行っているとは思わないので、その後、あなたが取る必要があるアクションに一致する値を探します

+0

「Pay」はAdaptive Payments APIメソッドですが、これはhttps://api-3t.sandbox.paypal.com/nvpで利用できません - あなたが言ったように、DoDirectPayment、SetExpressCheckout、GetBalanceなどの適切なメソッドを使用する必要があります。 – Robert