私はSetExpressCheckoutの方法を使用して、正常にトークンを取得した後、リンクを解放し、ユーザーが支払いを行うことができます:PayPal API
https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=<? echo $token[1]; ?>
クエリコード:結果
$paypal_create_token = post('https://api-3t.paypal.com/nvp',
array(
'params' => array(
'USER' => $paypal_config['user'],
'PWD' => $paypal_config['password'],
'SIGNATURE' => $paypal_config['sign'],
'METHOD' => 'SetExpressCheckout',
'VERSION' => $paypal_config['version'],
'REQCONFIRMSHIPPING' => 0,
'NOSHIPPING' => 1,
'SOLUTIONTYPE' => 'Sole',
'LANDINGPAGE' => 'Billing',
'LOGOIMG' => $protocol.'://'.$host.'/images/logo197x40.png?'.$time,
'HDRIMG' => $protocol.'://'.$host.'/images/logo.png?'.$time,
'BRANDNAME' => mb_strtoupper($host),
'PAYMENTREQUEST_0_AMT' => $amount,
'PAYMENTREQUEST_0_ITEMAMT' => $amount,
'L_PAYMENTREQUEST_0_AMT0' => $amount,
'L_PAYMENTREQUEST_0_NAME0' => $description,
'PAYMENTREQUEST_0_INVNUM' => $order_id,
'L_PAYMENTREQUEST_0_NUMBER0' => $order_id,
'PAYMENTREQUEST_0_PAYMENTACTION' => 'SALE',
'PAYMENTREQUEST_0_CURRENCYCODE' => 'RUB',
'EMAIL' => $orders_info['email'],
'RETURNURL' => $paypal_config['success_url'].'?order_id='.$order_id.'&order_hash='.$order_hash,
'CANCELURL' => $paypal_config['fail_url'].'?order_id='.$order_id.'&order_hash='.$order_hash,
)
)
);
$paypal_create_token_content = $paypal_create_token['content'];
preg_match('/TOKEN\=(.*?)\&/', $paypal_create_token_content, $token); // get token
、必要であるとして、支払いのページアカウントが存在し、すべて:
をクリックしても問題ありませんが、テストモードが設定されていてもサンドボックスリンクが使用されていない場合、カードは請求されません。面白いことに、PayPalアカウントとAPIデータを同じ支払いサービスに接続することにしました。支払いサービスでは、カードの手段から差し引かれます。
銀行は、支払いを確認するためにSMSコードを要求することもありますが、何も書き留められていない場合もあります。奇妙なこと。
何が問題ですか?私はサンドボックスリンクを使用しませんが、まだこの問題はありません。私は、何かが正しくないというパラメータを渡したと思う。