メインコンテンツへスキップ
Dodo Payments のリソースを管理し、チェックアウトセッションを作成し、Webhook をターミナルから直接テストします。コマンドラインを好む開発者向けに設計されています。

インストール

npm install -g dodopayments-cli

手動インストール

  1. システムに対応した GitHub Releases から最新リリースをダウンロードします
  2. アーカイブを展開し、バイナリを dodo にリネームします
  3. PATH に含まれるディレクトリに移動します:
sudo mv ./dodo /usr/local/bin/

認証

CLI を使用する前に、API キーで認証してください:
dodo login
これにより:
  1. ブラウザで Dodo Payments API Keys ページが開かれます
  2. API キーの入力を求められます
  3. 環境(テストモードまたはライブモード)を選択するよう求められます
  4. 資格情報が ~/.dodopayments/api-key にローカル保存されます
CLI は環境ごとに 1 つの API キーを保存できます。テストモードとライブモードの両方のキーが設定されている場合、現在のセッションで使用する環境を選択するよう促されます。

使用方法

一般的な構文は次のとおりです:
dodo ‹category› ‹sub-command›
dodo を引数なしで実行すると、利用可能なすべてのカテゴリが表示されます。dodo <category> をサブコマンドなしで実行すると、そのカテゴリで利用可能なサブコマンドが表示されます。

商品

製品カタログを管理します。
コマンド説明
dodo products listすべての製品を一覧表示します(ページネーションあり)
dodo products createダッシュボードを開いて製品を作成します
dodo products info特定の製品の詳細を表示します

支払い

支払いトランザクションを表示します。
コマンド説明
dodo payments listすべての支払いを一覧表示します(ページネーションあり)
dodo payments info特定の支払いに関する情報を取得します

顧客

顧客ベースを管理します。
コマンド説明
dodo customers listすべての顧客を一覧表示します(ページネーションあり)
dodo customers create新しい顧客プロファイルを作成します
dodo customers update既存の顧客情報を更新します

割引

クーポンと割引を管理します。
コマンド説明
dodo discounts listすべての割引を一覧表示します(ページネーションあり)
dodo discounts create新しいパーセンテージベースの割引を作成します
dodo discounts deleteID で割引を削除します

ライセンス

ソフトウェアライセンスを管理します。
コマンド説明
dodo licences listすべてのライセンスキーを一覧表示します(ページネーションあり)

アドオン

製品アドオンを管理します。
コマンド説明
dodo addons listすべてのアドオンを一覧表示します(ページネーションあり)
dodo addons createダッシュボードを開いてアドオンを作成します
dodo addons info特定のアドオンの詳細を表示します

返金

返金情報を表示します。
コマンド説明
dodo refund listすべての返金を一覧表示します(ページネーションあり)
dodo refund info特定の返金の詳細を表示します

チェックアウト

チェックアウトセッションを作成します。
コマンド説明
dodo checkout new新しいチェックアウトセッションを作成し、チェックアウト URL を取得します
checkout コマンドは、最小限の住所収集、リターン URL、3D セキュアの強制、割引コード、メタデータなどの高度なオプションに対応しています。

Webhook のテスト

CLI には、本番取引を作成することなく開発中に Webhook をテストできる 2 つの強力なツールが含まれています。1 つはローカルサーバーにライブテスト Webhook を転送する リスナー、もう 1 つは任意のエンドポイントにモック Webhook ペイロードを送信する トリガーです。

Webhook のリッスン

Dodo Payments からの Webhook をリアルタイムでローカル開発サーバーに転送します。
dodo wh listen
1

Enter your local endpoint URL

Webhook を受信したいローカルの URL を指定します(例: http://localhost:3000/webhook)。
2

Automatic setup

CLI は既存の Webhook エンドポイントがない場合、自動的に Dodo Payments アカウントにエンドポイントを作成し、イベントをリアルタイムで受信するために WebSocket 接続を開きます。
3

Receive and forward

Webhook イベント(テスト支払い、定期購読の変更など)が発生すると、CLI はそれを受信し、イベントタイプをログに記録し、ヘッダーと本文を含むリクエスト全体をローカルエンドポイントに転送します。あなたのエンドポイントからのレスポンスもログに記録され、送信されます。
Webhook リスナーは テストモード API キーでのみ動作します。dodo wh listen を使用する前に、テストモードキーでログインしていることを確認してください。
リスナーはローカルエンドポイントに転送する際に元の Webhook ヘッダー(webhook-idwebhook-signaturewebhook-timestamp)を保持するため、署名検証ロジックのテストが可能です。

テスト Webhook のトリガー

実際のトランザクションを作成することなく、任意のエンドポイントにモック Webhook ペイロードを送信して素早くテストできます。
dodo wh trigger
これにより以下をガイドします:
  1. 宛先 エンドポイント URL の設定
  2. 必要に応じて ビジネス IDプロダクト ID、および メタデータ を構成
  3. 対話型メニューから特定の イベント を選択してトリガー
  4. モックペイロードを送信し、レスポンスを確認
各イベントの後、別のイベントを選択するか終了することができるため、1 回のセッションで複数のイベントハンドラを簡単にテストできます。
トリガーツールは署名なしでモックペイロードを送信します。Webhook 署名検証をテスト中に無効にするには、Webhook ハンドラで unsafe_unwrap() を使用し、unwrap() を使用しないでください。

対応 Webhook イベント

カテゴリイベント
Subscriptionsubscription.active, subscription.updated, subscription.on_hold, subscription.renewed, subscription.plan_changed, subscription.cancelled, subscription.failed, subscription.expired
Paymentpayment.success, payment.failed, payment.processing, payment.cancelled
Refundrefund.success, refund.failed
Disputedispute.opened, dispute.expired, dispute.accepted, dispute.cancelled, dispute.challenged, dispute.won, dispute.lost
Licenselicence.created

環境変数

変数説明
DODO_WH_TEST_SERVER_URLdodo wh listen で使用されるデフォルトの Webhook リレーサーバー URL を上書きします

リソース

サポート