Paypal リクエスト許可サービスを使用して、サンドボックス アプリの払い戻し許可を付与しています。これがそのコードです
$url = "https://svcs.sandbox.paypal.com/Permissions/RequestPermissions";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
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_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"X-PAYPAL-SECURITY-USERID: username",
"X-PAYPAL-SECURITY-PASSWORD: password",
"X-PAYPAL-SECURITY-SIGNATURE: signature",
"X-PAYPAL-REQUEST-DATA-FORMAT: NV",
"X-PAYPAL-RESPONSE-DATA-FORMAT: NV",
"X-PAYPAL-APPLICATION-ID: APP-ID"
));
$detailLevel = urlencode("ReturnAll");
$errorLanguage = urlencode("en_US");
$scope = "REFUND";
$callback = "http://www.example.com/permission.php";
$nvpreq = "requestEnvelope.errorLanguage='en_US'&scope=$scope&callback=$callback";
$nvpreq .= "detailLevel=$detailLevel";
curl_setopt($ch, CURLOPT_POSTFIELDS, $nvpreq);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
このコードを使用すると、このメッセージが表示されます
responseEnvelope.timestamp=2016-06-24T05%3A30%3A37.350-07%3A00 responseEnvelope.ack=成功 responseEnvelope.correlationId=06cb98ac28931/ responseEnvelope.build=2210301 token=AAAAAAAi3Sw3MkHlV5t2
しかし、この URL にトークンを配置する場合 、アカウント所有者のブラウザを PayPal にリダイレクトし、request_token パラメータにリクエスト トークンを含めます。
このエラーが発生しています
おっとっと!申し訳ありませんが、トランザクションがタイムアウトしました。取引をやり直してください
では、なぜこれが起こっているのですか?どこが間違っていますか?Paypal アカウントにログインせずにこの URL を使用しています。このプロセスは、すべての管理者および他の販売者からも必要な許可を付与しますか?