Skip to main content

Checkout Handler

Dodo Payments のチェックアウトを Hono アプリに統合します。

Customer Portal

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

Webhooks

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

インストール

1

Install the package

プロジェクトのルートで次のコマンドを実行します:
2

Set up environment variables

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

ルートハンドラーの例

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

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

Dodo Payments は Web サイトへの支払い統合のために 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
通貨セレクターを表示します。
integer
支払い金額を指定します(例: 1000 は $10.00)。
boolean
割引フィールドを表示します。
string
metadata_ で始まるクエリパラメーターはメタデータとして渡されます。
productId が欠落している場合、ハンドラーは 400 応答を返します。無効なクエリパラメーターも 400 応答になります。

レスポンス形式

静的チェックアウトは、チェックアウトURLを含むJSONレスポンスを返します:

レスポンス形式

動的チェックアウトは、チェックアウトURLを含むJSONレスポンスを返します:
チェックアウトセッションは、ワンタイム購入とサブスクリプションの両方に対して完全な支払いフローを処理し、カスタマイズ制御が可能なより安全なホスト型チェックアウト体験を提供します。詳細とサポートされているフィールドの完全なリストについては、チェックアウトセッション統合ガイドを参照してください。

レスポンス形式

チェックアウトセッションは、チェックアウトURLを含むJSONレスポンスを返します:

顧客ポータルルートハンドラー

顧客ポータルルートハンドラーを使用すると、Dodo Paymentsの顧客ポータルをHonoアプリケーションにシームレスに統合できます。

クエリパラメーター

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

Webhookルートハンドラー

  • メソッド: POSTリクエストのみがサポートされています。他のメソッドは405を返します。
  • 署名検証: webhookKeyを使用してWebhook署名を検証します。検証に失敗した場合は401を返します。
  • ペイロード検証: Zodで検証されます。無効なペイロードには400を返します。
  • エラーハンドリング:
    • 401: 無効な署名
    • 400: 無効なペイロード
    • 500: 検証中の内部エラー
  • イベントルーティング: ペイロードタイプに基づいて適切なイベントハンドラーを呼び出します。

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


LLMへのプロンプト

最終更新日 2026年5月22日