QRコード決済

Sessionを使ってQRコードを生成することができ、対応する決済アプリやシステムカメラで読み取ることができます。

フロー

1 2 3

セッションQRコードはアプリ内かサイト上で表示されます。セッションの状態はpendingです。

ユーザーは任意の決済アプリでセッションQRコードをスキャンします。セッションの状態はcompleteになり、ペイメントはauthorizedになります。

ユーザーが取引内容を確認するとWebhookが送信され、ペイメントはcapturedになります。

サンプルオンラインストア
商品 商品説明の例文です。商品説明の例文です。商品説明の例文です。
¥3,000 Example QR Code
サンプル決済アプリ
Example QR Code
合計: ¥3,000 残額: ¥99,000

QRコードを取得

  1. Sessionを作成します。
  2. レスポンスに含まれるsession_urlの後に/qr.svg/qr.pngを付与し、QRコード画像を用意します。
    • 例:https://komoju.com/sessions/abc123xyz/qr.svg
  3. フロントエンドでこの画像を表示します。
  4. 決済が完了したことを通知するsessions.completedwebhookを待ちます。このwebhookを受け取ったら決済完了ページに遷移させます。

QRコードの内容は?

このQRコードは決済を行うためのWebページのURLを含みます。このURLにアクセスすることで表示される画面は以下のようにいくつかの条件によって異なります。

  • 複数の決済方法をサポートするSessionの場合、決済方法選択画面が表示されます。
  • セッションが1つの決済方法のみサポートし、かつその決済方法自体がQR決済をサポートしている場合、URLはディープリンクとなり決済アプリが立ち上がります。

アプリ独自QRコードを取得する例(上記2番目のケース)

curl -X POST https://komoju.com/api/v1/sessions \
  -u sk_123456: \
  -d "amount=8888" \
  -d "currency=JPY" \
  -d "return_url=https://example.com" \
  -d "payment_types[]=paypay" # QR決済をサポートする決済方法を1つだけ選択してください。