--- title: "チェックアウト" description: "チェックアウトの使い方を学び、ウェブサイトで支払いを受け取りましょう。" source: "https://docs.tokenz.one/ja/v1/checkout" api_version: "v1" locale: "ja" version_status: "legacy" docs_stage: "prod" --- # チェックアウト チェックアウトの使い方を学び、ウェブサイトで支払いを受け取りましょう。 Tokenz チェックアウトは、オンラインで支払いを安全に受け取ることができる事前構築された支払いフォームです。 既に機能が組み込まれているため、開発時間を短縮することができます。 顧客をホストする支払いページにリダイレクトすることで、支払いを受け取ることができます。 チェックアウトはカスタマイズすることができ、Checkout Session API (チェックアウトセッション API) を使って追加機能にアクセスすることができます。 **金額フォーマット:** すべての金額値(`amount` フィールドなど)は各通貨の最小単位で表現されます。通貨ごとの正確なエンコーディングについては、[サポートされている通貨](https://docs.tokenz.one/ja/v1/checkout/currency)を参照してください。 ## チェックアウトのライフサイクル 1. お客様がウェブサイトで商品を選択し、チェックアウトをクリックします。 2. サーバーが Tokenz API を使って新しい Checkout Session を作成します。 3. Tokenz API が Checkout Session を返します。 4. サーバーがお客様を Tokenz がホストする支払いページにリダイレクトします。 5. お客様が Tokenz がホストする支払いページで支払いを完了します。 6. Tokenz がお客様をウェブサイトにリダイレクトします。 7. Tokenz がサーバーに Webhook イベントを送信します。 8. サーバーが `order.succeeded` イベントを使って注文を履行します。 ```mermaid sequenceDiagram; autonumber; participant U as マーチャントクライアント
(ウェブショップ); participant M as マーチャントサーバー; participant T as Tokenz API; participant TC as Checkout; %% 1 ── 購入リクエスト; U->>M: 商品を選択してチェックアウトをクリック; %% 2 ── Tokenz に Checkout Session をリクエスト; M->>T: Checkout Session を作成; T-->>M: Checkout Session を返す; %% 3 ── ブラウザを Tokenz チェックアウトにリダイレクト; M-->>TC: お客様を Checkout Session の url に
リダイレクト; TC->>TC: お客様が支払いを完了; %% 4 -- ブラウザのリダイレクト; TC-->>U: お客様がページに戻る; %% 5 ── Webhook; T->>M: アプリケーションに Webhook を送信; M->>M: 注文を履行; ``` ## Checkout Session Checkout Session (チェックアウトセッション) とは、支払いフォームでお客様に表示される内容をプログラムで表現したものです。 Checkout Session の作成後、購入を完了するためにお客様を `url` にリダイレクトします。 お客様が購入を完了したら、注文イベントに Webhook を設定すると注文を履行することができます。 以下の例は、Checkout Session の作成方法を示しています。 ```bash curl --request POST \ --url https://api.tokenz.one/v1/checkoutsession \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer secret_test_YOUR_KEY_HERE' \ --data '{ "itemDetails": [ { "product": { "price": { "amount": 1000, "currency": "JPY" }, "images": [ "https://images.ctfassets.net/z82qbo7cv7ia/6LaDyyNBQ5Sqd1THQYxksI/ff5bce84e3864a4f826f5aed0822bd10/treasure-chest-1.png" ], "quantity": 1, "label": "Treasure Chest", "taxCategory": "DIGITAL_GOODS_AND_SERVICES" } } ], "successUrl": "https://example.com/success", "pendingUrl": "https://example.com/pending", "cancelUrl": "https://example.com/cancel", "customerInfo": {} }' ``` ## 税区分 適切な税計算とコンプライアンスのため、チェックアウトセッションの各商品には `taxCategory` フィールドを含める必要があります。以下の区分がサポートされています: - `VIRTUAL_CURRENCY`: ゲーム内通貨、トークン、または仮想コイン - `DIGITAL_GOODS_AND_SERVICES`: ゲームアイテム、ダウンロードコンテンツ、デジタルサービスなどのデジタル製品 - `EBOOK`: 電子書籍および出版物 - `SAAS`: Software as a Service サブスクリプション 正確な税処理を確保するため、商品タイプに最も適した区分を選択してください。 ## 支払い方法 ホストする支払いページでお客様に提供する支払い方法をカスタマイズすることができます。 サポートされている1つまたは複数のオプションを `paymentMethodKinds` 引数に送信すると、お客様が利用できる支払い方法を指定できます。 引数が含まれていない場合や、空のリストが送信された場合は、サポートされているすべての支払い方法が表示されます。