Skip to main content
Discordエンタイトルメントは、支払い顧客をサーバーに追加し(オプションで役割を割り当て)、サブスクリプションがアクティブになるか一括購入がクリアされるとすぐに追加します。キャンセル、払い戻し、プラン変更により役割は自動的に取り消されます。

配信される内容

  • 顧客は受け取りメールやカスタマーポータルのOAuthリンクを通してDiscordアカウントを接続します。
  • 認証すると、Dodo Paymentsはあなたのサーバーに追加し(または既存のメンバーシップを見つけ)設定した役割を割り当てます。
  • 特定の役割を選ばなかった場合、サーバーのメンバーシップのみが付与されます。
この統合は有料コミュニティ、サポーターパーク、階層型アクセスチャンネルに最適です。

Discordを接続する

1

Open Entitlements

Dodo Paymentsダッシュボードで、Entitlements に移動し、+ をクリックして新しいエンタイトルメントを開始します。
2

Pick Discord

Discord Access を統合として選択します。まだDiscordをビジネスに接続していない場合は、Connect Discord を促されます。
New entitlement panel prompting the merchant to connect Discord

Connect Discord prompt before the OAuth handoff.

クリックすると、新しいタブでDiscordが開きます。ログインし、ゲートしたいサーバーを選び、ボットの権限(Manage Roles, Kick Members, Create Invite)をそのサーバーで確認します。
Discord OAuth screen asking which server to add the Dodo Payments bot toDiscord bot permission confirmation screen

Discord OAuth: pick the server, then confirm the bot's permissions on it.

Discordがリダイレクトした後、サーバーが接続されていることを確認できます。
Discord Access connected successfully confirmation page

Server connected — return to the Dodo Payments dashboard to continue.

3

Pick a server and role

ダッシュボードに戻ったら、接続した サーバー(ギルド)を選びます。配信時に割り当てる役割を任意に選択するか、空白のままでサーバーのメンバーシップのみを付与します。エンタイトルメントに名前を付けて、Create Entitlementをクリックします。
New Entitlement - Discord Access form with connected server, server picker, role dropdown, and name field
4

Save the entitlement

エンタイトルメントを保存します。これで、製品に添付することが可能です。

顧客フロー

  1. 顧客がチェックアウトを完了します。
  2. Dodo Payments は、Pending ステータスで grant を作成します。その oauth_url は、顧客が accept flow を開始するまで null です。accept flow が開始されると、Discord authorization URL が設定されます。
  3. 顧客は「Discordに参加」ボタン(OAuth link)があるメールを受け取ります。このリンクは Customer Portal でも確認できます。
  4. 顧客が認証すると、bot がサーバーに追加し、設定された role を割り当てます。grant は Delivered に移行します。
  5. subscription がキャンセル、一時停止、または期限切れになった場合、あるいは merchant が手動で revoke した場合、bot が role を削除し、grant は Revoked に移行します。
Dodo Paymentsボットの役割が付与する役割の上に配置されていることを確認してください。Discordは自身より高いランクの役割を割り当てることを防ぎます。

必須設定

APIを使用した作成

Webhooks

Discordのグラントを追跡するために、entitlement_grant.* webhook eventsを購読します:
  • entitlement_grant.createdstatus: "Pending" とともに発生します。この時点で oauth_urlnull です。顧客が delivery email または Customer Portal から accept flow を開始すると設定されます。
  • role が割り当てられると、entitlement_grant.delivered が発生します。
  • role が削除されると、entitlement_grant.revoked が発生します。

トラブルシューティング

grant は顧客が OAuth フローを完了するまで Pending の状態です。entitlement の grants リストを確認し、顧客が OAuth リンクをクリックしたかどうかを確認してください。必要に応じて、配信メールを再送信してください。
Dodo Paymentsボットがサーバーに残り、Manage Rolesの権限を持ち、割り当てられている役割の上に配置されていることを確認してください。エンタイトルメントを再保存すると、検証が再実行されます。
Discordは役割の削除を即座に伝播しますが、顧客のローカルDiscordクライアントがキャッシュすることがあります。再接続またはリフレッシュが必要です。サーバー側の状態は正しいです。
最終更新日 2026年8月21日