Skip to main content

Checkout Handler

静的、動的、セッションのフローを備えたDodo Paymentsチェックアウトを統合します。

Customer Portal

顧客がサブスクリプションと詳細を管理できるようにします。

Webhooks

Dodo PaymentsのWebhookイベントを受信して処理します。

インストール

1

Install the package

プロジェクトのルートで次のコマンドを実行してください:
2

Set up environment variables

プロジェクトのルートに.envファイルを作成してください:
.envファイルやシークレットをバージョン管理にコミットしないでください。

ルートハンドラーの例

すべての例はNext.js App Routerを使用していることを前提としています。
このハンドラを使用してDodo PaymentsのチェックアウトをNext.jsアプリに統合します。静的(GET)、動的(POST)、およびチェックアウトセッション(POST)の各支払いフローをサポートします。

チェックアウトルートハンドラー

Dodo Paymentsはウェブサイトへの支払い統合のために3種類の支払いフローをサポートしており、このアダプターはすべての支払いフローをサポートしています。
  • 静的支払いリンク: すぐに共有可能なURLで、迅速かつコード不要の支払い収集が可能です。
  • 動的支払いリンク: APIまたはSDKを使用してカスタム詳細を持つ支払いリンクをプログラム的に生成します。
  • チェックアウトセッション: 事前に設定された商品カートと顧客詳細を使用して、安全でカスタマイズ可能なチェックアウト体験を作成します。

サポートされているクエリパラメータ

string
必須
商品識別子(例:?productId=pdt_nZuwz45WAs64n3l07zpQR)。
integer
商品の数量。
string
顧客の氏名。
string
顧客の名。
string
顧客の姓。
string
顧客のメールアドレス。
string
顧客の国。
string
顧客の住所行。
string
顧客の市区町村。
string
顧客の州/都道府県。
string
顧客の郵便番号。
boolean
氏名フィールドを無効にします。
boolean
名フィールドを無効にします。
boolean
姓フィールドを無効にします。
boolean
メールフィールドを無効にします。
boolean
国フィールドを無効にします。
boolean
住所行フィールドを無効にします。
boolean
市区町村フィールドを無効にします。
boolean
州フィールドを無効にします。
boolean
郵便番号フィールドを無効にします。
string
支払い通貨を指定します(例:USD)。
boolean
通貨セレクターを表示します。
number
請求額を主要通貨単位で固定します(例:$12.50 の場合は12.5)。Pay What You Want 商品専用で、商品の最低価格を下回る場合は無視されます。
boolean
割引フィールドを表示します。
string
metadata_ で始まるクエリパラメータは、メタデータとして渡されます。
productIdがない場合、ハンドラは400レスポンスを返します。無効なクエリパラメータも400レスポンスになります。

レスポンス形式

静的チェックアウトは、チェックアウトURLを含むJSONレスポンスを返します:
Dynamic Checkout は、非推奨となった POST /payments および POST /subscriptions エンドポイントのプロキシとして機能します。既存のインテグレーションでは引き続き動作しますが、新しいインテグレーションでは以下の Checkout Sessions を使用してください。

レスポンス形式

Dynamic checkout は、チェックアウト URL を含む JSON レスポンスを返します。
Checkout sessions は、完全にカスタマイズを制御でき、単回購入とサブスクリプションの両方で決済フロー全体を処理する、より安全なホスト型チェックアウト体験を提供します。詳細およびサポートされているフィールドの完全な一覧については、Checkout Sessions Integration Guide を参照してください。

レスポンス形式

Checkout sessions は、チェックアウト URL を含む JSON レスポンスを返します。

Customer Portal Route Handler

Customer Portal Route Handler を使用すると、Dodo Payments のカスタマーポータルを Next.js アプリケーションにシームレスに統合できます。

クエリパラメータ

string
必須
ポータルセッションの顧客 ID(例: ?customer_id=cus_123)。
boolean
true に設定すると、ポータルリンクを記載したメールを顧客に送信します。
customer_id がない場合は 400 を返します。

Webhook Route Handler

  • Method: POST リクエストのみサポートされます。その他のメソッドには 405 を返します。
  • Signature Verification: webhookKey を使用して webhook の署名を検証します。検証に失敗した場合は 401 を返します。
  • Payload Validation: Zod で検証されます。ペイロードが無効な場合は 400 を返します。
  • Error Handling:
    • 401: 署名が無効です
    • 400: ペイロードが無効です
    • 500: 検証中に内部エラーが発生しました
  • Event Routing: ペイロードの種類に基づいて、適切なイベントハンドラーを呼び出します。

サポートされている Webhook イベントハンドラー


LLM 用プロンプト

最終更新日 2026年8月21日