推奨する実装

SetExpressCheckout API で下記を指定します。

PayPal決済画面にサイトロゴやサイトカラーを表示する

ロゴの表示

LOGOIMG=https ://your.site.url/yourlogo.jpg
                            

枠色の設定

CARTBORDERCOLOR=0000CD
                            

PayPal決済画面に注文内容を表示する

注文内容の表示

L_PAYMENTREQUEST_0_NAME0=商品名1
L_PAYMENTREQUEST_0_NUMBER0=商品1の番号等
L_PAYMENTREQUEST_0_DESC0=商品1の説明
L_PAYMENTREQUEST_0_AMT0=商品1の金額
L_PAYMENTREQUEST_0_QTY0=商品1の数量
L_PAYMENTREQUEST_0_NAME1=商品名2
L_PAYMENTREQUEST_0_NUMBER1=商品2の番号等
L_PAYMENTREQUEST_0_DESC1=商品2の説明
L_PAYMENTREQUEST_0_AMT1=商品2の金額
L_PAYMENTREQUEST_0_QTY1=商品2の数量
PAYMENTREQUEST_0_SHIPPINGAMT=送料
PAYMENTREQUEST_0_AMT=合計金額
                            

PayPal決済画面の住所・氏名を入力済みにする

住所・氏名の自動入力

PAYMENTREQUEST_0_SHIPTONAME=氏名
PAYMENTREQUEST_0_SHIPTOZIP=郵便番号
PAYMENTREQUEST_0_SHIPTOSTATE=都道府県
PAYMENTREQUEST_0_SHIPTOCITY=市区町村
PAYMENTREQUEST_0_SHIPTOSTREET=番地
PAYMENTREQUEST_0_SHIPTOSTREET2=ビル名等
PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE=国
PAYMENTREQUEST_0_EMAIL=メールアドレス
PAYMENTREQUEST_0_SHIPTOPHONENUM=電話番号
                            

サンプルリクエスト

curl -v https://api-3t.sandbox.paypal.com/nvp -d
  "USER={YourUserID}
  &PWD={YourPassword}
  &SIGNATURE={YourSignature}
  &METHOD=SetExpressCheckout
  &VERSION=124
  &PAYMENTREQUEST_0_AMT=7975
  &PAYMENTREQUEST_0_CURRENCYCODE=JPY
  &PAYMENTREQUEST_0_PAYMENTACTION=Sale
  &cancelUrl=http ://your.cancel.url/
  &returnUrl=http ://your.return.url/
  &L_PAYMENTREQUEST_0_NAME0=商品名1
  &L_PAYMENTREQUEST_0_NUMBER0=商品1の番号等
  &L_PAYMENTREQUEST_0_DESC0=商品1の説明
  &L_PAYMENTREQUEST_0_AMT0=商品1の金額
  &L_PAYMENTREQUEST_0_QTY0=商品1の数量
  &L_PAYMENTREQUEST_0_NAME1=商品名2
  &L_PAYMENTREQUEST_0_NUMBER1=商品2の番号等
  &L_PAYMENTREQUEST_0_DESC1=商品2の説明
  &L_PAYMENTREQUEST_0_AMT1=商品2の金額
  &L_PAYMENTREQUEST_0_QTY1=商品2の数量
  &PAYMENTREQUEST_0_SHIPPINGAMT=送料
  &PAYMENTREQUEST_0_AMT=合計金額
  &PAYMENTREQUEST_0_SHIPTOZIP=郵便番号
  &PAYMENTREQUEST_0_SHIPTOSTATE=都道府県
  &PAYMENTREQUEST_0_SHIPTOCITY=市区町村
  &PAYMENTREQUEST_0_SHIPTOSTREET=番地
  &PAYMENTREQUEST_0_SHIPTOSTREET2=ビル名等
  &PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE=国
  &PAYMENTREQUEST_0_EMAIL=メールアドレス
  &PAYMENTREQUEST_0_SHIPTOPHONENUM=電話番号
  &LOGOIMG=https ://your.site.url/yourlogo.jpg
  &CARTBORDERCOLOR=0000CD"
                            

エラー時に他のカードの登録画面を表示する

DoExpressCheckoutPaymentのレスポンスでエラーコード10486が返却された場合は、購入者が別のクレジットカードで決済できるよう同じURL、同じTokenを使用して決済画面を再度表示することができます。

API Format Parameter Description
SOAP
NVP
ErrorCode
L_ERRORCODE0
10486
SOAP
NVP
ShortMessage
L_SHORTMESSAGE0
This transaction couldn’t be completed.
SOAP
NVP
LongMessage
L_LONGMESSAGE0
This transaction couldn’t be completed.
Please redirect your customer to PayPal.

購入者は別のクレジットカードを入力するよう求められます。支払い承認後に元のReturnURLに戻りますので、同じようにDoExpressCheckoutPaymentをコールします。

エラー2回まではリカバリ処理し、3回目の同エラーで決済失敗として処理することを推奨します。これにより購入者は3回決済を試行することができます。