Skip to main content

はじめに

Discord 連携を使用すると、支払い、サブスクリプション、異議申し立て、その他の Dodo Payments イベントを、指定した Discord チャンネルに投稿できます。チームは API をポーリングしたりダッシュボードを確認したりすることなく、普段コラボレーションしている場所で各イベントを確認できます。
Dodo Payments ダッシュボードの Developer → Webhooks へのアクセス権と、Discord サーバーの Manage Webhooks 権限が必要です。

始め方

1

Create a Discord Webhook

Discord で通知を受け取るチャンネルを開き、Edit Channel をクリックします。Integrations → Webhooks → New Webhook に移動し、webhook に名前を付けてチャンネルを確認し、Copy Webhook URL をクリックします。
2

Open the Webhook Section

Dodo Payments dashboardで、Developer → Webhooksに移動し、Add endpointをクリックします。
Add endpoint dialog with Discord selected in the Integration dropdown
3

Select Discord

Integration で Discord を選択します。How to connect Discord パネルには、Discord webhook の作成手順が再度表示されます。
4

Paste the Webhook URL

Discord webhook URL は https://discord.com/api/webhooks/ で始まります。これを Endpoint URL に貼り付けます。Discord では API key は必要ありません。
5

Select Events

Subscribed events で、変換処理が処理するイベントを選択します。Discord は content または embeds のないメッセージを拒否するため、変換処理が変換しないイベントは配信に失敗します。
6

Edit Transformation Code

Transformation code で、各イベントを Discord embed にマッピングする方法を調整するか、examples から始めます。
7

Test & Create

Test this code で Simulate をクリックし、サンプル payload の embed をプレビューします。次に Create endpoint をクリックします。
8

Done

これで、サブスクライブした各イベントのメッセージが Discord チャンネルに届きます。

変換コードの例

各 handler は webhook.payload を、1 つの embed を含む Discord メッセージに置き換えます。Dodo Payments の金額は通貨の最小単位で表されるため、例では 100 で割って通貨コードを表示しています。

最小限の支払い embed

支払いが成功したときに embed を投稿します(payment.succeeded):
payment_embed.js

サブスクリプションイベント

サブスクリプションが有効になったとき(subscription.active)またはキャンセルされたとき(subscription.cancelled)に embed を投稿します:
subscription_embed.js

異議申し立てアラート

dispute.opened、dispute.won、dispute.lost など、すべての異議申し立てイベントに対して embed を投稿します。タイトルと色は、異議申し立ての dispute_status に従います:
dispute_embed.js

ヒント

  • リッチな書式と色には埋め込みを使用します。
  • タイトルは短くし、詳細はフィールドに記載します。
  • 結果を示す色を使用します。成功には緑、失敗には赤、警告にはオレンジを使用します。

トラブルシューティング

  • チャンネルのIntegrations → WebhooksにWebhookがまだ存在し、Endpoint URLがそのURLと一致していることを確認します。
  • transformationがembedsを含むJSONオブジェクトを返すことを確認します。
  • Subscribed eventsに想定しているイベントが含まれていることを確認します。
  • Developer → WebhooksのLogsタブでendpointの配信試行を開き、Discordのレスポンスコードを確認します。
  • エディターでコードを検証します。構文エラーがあると配信がブロックされます。
  • フィールド名がWebhook payloadの構造と一致していることを確認します。
最終更新日 2026年9月26日