メインコンテンツへスキップ

はじめに

Slack integration は、成功した支払い、サブスクリプションの変更、異議申し立てなどの Dodo Payments イベントを、選択した Slack チャンネルに投稿します。チームはダッシュボードを確認しなくても、Slack から支払いを追跡し、異議申し立てに対応できます。
Slack connector は、各 Dodo Payments イベントを transformation によって Slack メッセージに変換します。transformation は、配信前にイベント上で実行される JavaScript コードです。connector には transformation code が付属しているため、開始時にコーディングは必要ありません。Dodo Payments dashboard の Developer → Webhooks へのアクセス権と、Slack workspace にアプリを追加する権限が必要です。

始め方

1

Open the Webhook Section

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

Select Slack Integration

Integration で Slack を選択します。ダッシュボードに Slack の transformation code が読み込まれ、How to connect Slack パネルに設定手順が表示されます。
Add endpoint dialog with Slack selected and the How to connect Slack steps
3

Create a Slack Webhook URL

Slack で、通知を受け取るチャンネル用の incoming webhook を備えたアプリを作成します。
  1. api.slack.com/apps を開き、Create New App をクリックして、From scratch を選択します。
  2. アプリ名(例: Dodo Payments Notifications)を入力し、workspace を選択して Create App をクリックします。
  3. サイドバーで Incoming Webhooks を開き、Activate Incoming Webhooks をオンにします。
  4. Add New Webhook to Workspace をクリックし、チャンネルを選択して Allow をクリックします。
  5. Webhook URL をコピーします。URL は https://hooks.slack.com/services/ で始まります。
チャンネル選択欄と Allow ボタンが表示された Slack 権限画面
4

Paste the Webhook URL

Slack webhook URL を Endpoint URL に貼り付けます。Slack に API key は必要ありません。
5

Select Events

Subscribed events には、Slack connector がサポートするイベントが一覧表示されます。transformation を変更する場合は、処理対象のイベントだけを残してください。Slack は Slack message ではないリクエストを拒否するため、transformation によって変更されないイベントは配信に失敗します。
6

Customize Transformation Code

Transformation code で handler を編集し、メッセージを投稿するイベントと各メッセージの形式を選択します。connector の code をそのまま使用するか、examples を基に開始します。
支払いイベント用の Slack handler が表示された Transformation code editor
7

Test and Create

Test this code でイベントタイプを選択し、Simulate をクリックします。Result に Slack が受信するメッセージが表示されます。次に Create endpoint をクリックします。
Test this code panel with payment.succeeded selected, a Simulate button, and the Create endpoint button
8

Integration Complete!

これで Dodo Payments は、購読した各イベントを Slack チャンネルに投稿します。テストメッセージを投稿するには、endpoint の Testing タブを開き、イベントタイプを選択して Send example をクリックします。

Transformation Code の例

各 handler は webhook.payload を Slack メッセージに置き換え、受信 webhook URL である webhook.url を保持します。Dodo Payments の金額は通貨の最小単位で表されるため、例では 100 で割り、通貨コードを表示しています。JPY や KRW などの小数点以下の桁がない通貨では、金額をそのまま使用してください。

基本的な Payment 通知

Payment が成功、失敗、または処理中になったときに、プレーンテキストのメッセージを投稿します。
payment_notifs.js

リッチな Subscription 通知

Subscription が有効化、キャンセル、または更新されたときに、attachment fields を含む色分けされたメッセージを投稿します。
subscription_notifs.js

Dispute 管理通知

Dispute が開始されたとき、または敗訴したときは赤いメッセージを、勝訴したときは緑のメッセージを投稿します。
dispute_notifs.js

すべてのイベントに対応する包括的な handler

すべてのイベントタイプで同じ形式のメッセージを投稿します。独自の case を持たないイベントには、イベントタイプと時刻を含む汎用メッセージが使用されます。
all_events_notifs.js

ベストプラクティス

Slack 通知を有用なものに保つため、次のプラクティスに従ってください。
  • 各イベントを明確にし、対応しやすくするため、色と fields を含む message attachments を使用します。
  • チームがレコードをすばやく見つけられるよう、金額、customer email、ID などの重要なデータを含めます。
  • イベントタイプに合わせて色を設定します。成功には緑(good)、dispute または失敗には赤(danger)、キャンセルには黄色(warning)、情報イベントには青(#3aa3e3)を使用します。
  • timestamp(ts)を追加し、各メッセージにイベントが発生した時刻を表示します。
機密データを扱う: full license keys や個人データなどの機密性の高い値を Slack に投稿しないでください。all-events の例の license key field のように、値を切り詰めるかマスクしてください。

トラブルシューティング

  • Slack webhook URL が正しく、対応する Slack app が引き続きインストールされていることを確認します。
  • transformation code が有効な JavaScript であることを確認します。
  • 購読しているイベントが発生していることを確認します。イベントを送信するには、endpoint の Testing タブで Send example を使用します。
  • Slack app で Incoming Webhooks が有効になっており、channel に投稿できることを確認します。
  • Developer → Webhooks の Logs タブを開き、失敗した delivery の response を確認します。
  • code が読み取る payload fields が、そのイベントタイプの event payload と一致していることを確認します。
  • Simulate と sample payload を使用して code をテストします。
  • code が読み取る各 field が存在することを確認します。error_message などの optional fields は、null にできます。
  • Subscribed events でイベントが選択されていることを確認します。選択を変更するには、endpoint を開いて Edit をクリックします。
  • Slack connector がイベントをサポートしていることを確認します。Subscribed events には、connector がサポートするイベントのみが一覧表示されます。
  • transformation にそのイベント用の case があることを確認します。例では他のイベントを変更せずに残しているため、Slack に拒否されます。
最終更新日 2026年9月28日