支払いを行う

チェックアウトやpayjp.jsでカード情報トークンの作成に成功したら、いよいよ支払いを行ってみましょう。トークン作成ではブラウザから <script> タグを使いましたが、支払い処理はサーバーサイドに組み込みます。

ここではcurlによる実際のコマンド例を載せます。PAY.JPではさまざまな言語のライブラリをサポートしているので、お好みの言語をダウンロードして試してみてください。

トークンで支払う

作成したトークンを指定して支払いを行いましょう。トークンは一度のみ使用可能です。

トークンで支払い:

curl https://api.pay.jp/v1/charges \
-u sk_test_c62fade9d045b54cd76d7036: \
-d "amount=500" \
-d "currency=jpy" \
-d "card=作成したトークンID"

顧客情報を使って支払う

トークンは一度しか使用できないので、先ほどの例では、支払いのたびに購入者にカード情報を入力させなければいけません。 これを避けるため、トークンを顧客情報に紐付けておくことで、2回目以降はカード情報を入力せずに何度でも支払いができるようになります。

1. カードを所有する顧客を作成:

curl https://api.pay.jp/v1/customers \
-u sk_test_c62fade9d045b54cd76d7036: \
-d "card=作成したトークン"

2. 顧客情報を使って支払い:

curl https://api.pay.jp/v1/charges \
-u sk_test_c62fade9d045b54cd76d7036: \
-d "amount=500" \
-d "currency=jpy" \
-d "customer=作成した顧客ID"

トークンは、顧客に複数紐付けることができ、それぞれカード情報の編集カード情報の削除ができます。

一番最初に紐付けられたカード情報は default_card として登録されます。 顧客情報を使った支払い作成時にカードの指定を省略した場合や定期課金ではこの default_card に指定されたカードを使って処理が行われます。 default_card顧客情報を更新 から変更することができます。

APIリファレンス - Charge(支払い)

APIリファレンス - Customer(顧客)