Skip to main content

はじめに

n8n integrationは、支払いイベントが発生するたびにn8nワークフローを開始するため、Dodo Paymentsをn8nが連携する任意のアプリに接続できます。ワークフローでは、メールの送信、スプレッドシートの更新、タスクの作成、データベースへの書き込みなどを実行できます。
このintegrationには、n8nワークフローのWebhook nodeから取得したwebhook URLが必要です。

始め方

1

Open the Webhook Section

Dodo Payments ダッシュボードで、Developer → Webhooks に移動し、Add endpoint をクリックします。
Add endpoint dialog with n8n selected in the Integration dropdown
2

Select n8n

Integration リストで n8n を選択します。
3

Create Webhook in n8n

n8nでワークフローを作成し、トリガーとして Webhook nodeを追加します。HTTP Method を POST に設定し、Production URL をコピーします。テストURLでは、n8nがテストイベントを待機している間のみイベントを受信できます。
4

Paste Webhook URL

n8nのproduction URLを Endpoint URL フィールドに貼り付けます。
5

Configure Transformation

Transformation code の下にあるコードを編集し、n8nワークフロー用にデータを整形します。以下の例を参考にしてください。
6

Test & Create

Test this code で、サンプルpayloadに対して変換を実行し、Create endpoint をクリックします。
7

Publish the Workflow

n8nでワークフローをpublishします。n8nは、ワークフローがpublishされたときにのみproduction webhook URLを登録します。
8

Done

これで、支払いイベントによってn8nワークフローがトリガーされます。

変換コードの例

各例では、Dodo Paymentsイベントを、n8n nodeが直接読み取れる小さなJSONオブジェクトにフラット化しています。

Basic Webhook Payload

この例では、支払いが成功したときに、支払い金額、通貨、顧客、支払い方法を送信します。
basic_webhook.js

Subscription Event Handler

この例では、subscription_startedまたはsubscription_cancelledイベントを送信するため、1つのワークフローでevent_typeに基づいて分岐できます。
subscription_webhook.js

Dispute Alert Handler

この例では、すべてのdispute.*イベントを送信し、disputeが開始されたときにurgentをtrueに設定します。
dispute_webhook.js
以下は、merchantがDodo Paymentsイベント上に構築する一般的なワークフローです。
  • 支払い確認のメールをGmailまたはOutlookから送信する。
  • MailchimpまたはConvertKitでメールシーケンスを作成する。
  • webhookを通じてSlackまたはDiscordの通知を送信する。
  • Google Sheetsのレコードを作成する。
  • TelegramまたはWhatsAppのメッセージを送信する。
  • HubSpotまたはSalesforceに連絡先を追加する。
  • PipedriveまたはCloseでdealを作成する。
  • Airtableの顧客レコードを更新する。
  • Monday.comにアクティビティを記録する。
  • PostgreSQLまたはMySQL databaseにデータを同期する。
  • AsanaまたはTrelloでタスクを作成する。
  • Notionにto-do項目を追加する。
  • Google Calendarでイベントを作成する。
  • Twilioを通じてSMS通知を送信する。
  • dispute用のGitHub issueを作成する。
  • 支払いデータを変換してエンリッチする。
  • PostgreSQLやMongoDBなどのdatabaseにイベントを保存する。
  • メトリクスと分析データを集計する。
  • レポートとexportを生成する。
  • 複数ステップのワークフローをトリガーする。

Tips

  • n8n nodeが解析できるように、payloadの構造をシンプルに保ちます。
  • すべてのイベントで同じフィールド名を使用します。
  • ワークフローのタイミングとスケジューリングのためにtimestampを含めます。
  • publishする前に、サンプルデータでワークフローをテストします。
  • 条件分岐とルーティングには IF nodeを使用します。
  • カスタムデータ変換には Code nodeを使用します。
  • 各イベントタイプを独自のpathにルーティングするには Switch nodeを使用します。
  • 実行の失敗を捕捉するため、n8nでerror workflowを設定します。

Troubleshooting

  • endpointがn8nのproduction URLを使用しており、インターネットからn8nに到達できることを確認します。
  • ワークフローがn8nでpublishされていることを確認します。
  • Webhook nodeの HTTP Method が POST であることを確認します。
  • ワークフローの Executions タブで受信リクエストを確認します。
  • firewallとnetwork設定で受信webhookが許可されていることを確認します。
  • Webhook nodeでauthenticationが必要な場合は、Custom Headersのendpointに一致するheaderを追加します。
  • n8n nodeの設定でフィールド名を確認します。
  • データ型がnodeで想定される形式と一致していることを確認します。
  • n8nのテストURLを使用して受信データを確認します。
  • transformation codeが有効なJSONを返すことを確認します。
  • Webhook nodeのresponse設定を確認します。
  • フィールドの名前変更や構造変更には Edit Fields (Set) nodeを使用します。
  • 詳細なエラーメッセージについて、n8nの実行ログを確認します。
  • nodeの接続設定とcredentialsを確認します。
  • payloadに必要なフィールドがすべて含まれていることを確認します。
  • サンプルデータで個々のnodeをテストします。
  • 失敗を捕捉して処理するため、error workflowを有効にします。
  • 接続サービスのrate limitとAPI quotaを確認します。
最終更新日 2026年9月26日