Skip to main content
Discord entitlement는 유료 고객의 구독이 활성화되거나 일회성 구매가 승인되는 즉시 고객을 서버에 추가하고(선택적으로 역할도 할당), 취소, 환불 및 플랜 변경이 발생하면 역할을 자동으로 회수합니다.

제공되는 기능

  • 고객은 delivery email 또는 customer portal의 OAuth 링크를 통해 자신의 Discord 계정을 연결합니다.
  • 고객이 인증하면 Dodo Payments 고객을 서버에 추가하거나(기존 멤버십이 있으면 이를 찾음) 구성한 역할을 할당합니다.
  • 특정 역할을 선택하지 않은 경우에는 서버 멤버십만 부여됩니다.
이 integration은 유료 커뮤니티, supporter 혜택 및 tiered access 채널에 적합합니다.

Discord 연결

1

Open Entitlements

Dodo Payments dashboard에서 Entitlements로 이동하고 **+**를 클릭하여 새 entitlement를 시작합니다.
2

Pick Discord

integration으로 Discord Access를 선택합니다. 아직 비즈니스에 Discord를 연결하지 않았다면 Connect Discord하라는 메시지가 표시됩니다.
Discord 연결을 요청하는 새 entitlement 패널

Connect Discord prompt before the OAuth handoff.

클릭하면 새 탭에서 Discord가 열립니다. 로그인하고 액세스를 제한할 서버를 선택한 다음, 해당 서버에서 bot에 필요한 권한(Manage Roles, Kick Members, Create Invite)을 확인합니다.
어느 서버에 Dodo Payments bot을 추가할지 묻는 Discord OAuth 화면Discord bot 권한 확인 화면

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

Discord가 다시 리디렉션되면 서버가 연결되었다는 확인 메시지가 표시됩니다.
Discord Access 연결 성공 확인 페이지

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

3

Pick a server and role

대시보드로 돌아와 방금 연결한 server(guild)를 선택합니다. 선택적으로 delivery 시 할당할 role을 지정하거나, 서버 멤버십만 부여하려면 비워 둡니다. entitlement에 name을 입력하고 Create Entitlement를 클릭합니다.
연결된 서버, 서버 선택기, 역할 드롭다운 및 이름 필드가 포함된 New Entitlement - Discord Access 양식
4

Save the entitlement

entitlement를 저장합니다. 이제 모든 product에 연결할 수 있습니다.

고객 흐름

  1. 고객이 checkout을 완료합니다.
  2. Dodo Payments이 pending 상태이고 Discord를 가리키는 oauth_url가 포함된 grant를 생성합니다.
  3. 고객은 “Join the Discord” 버튼(OAuth 링크)이 포함된 email을 받습니다. 이 링크는 customer portal에서도 확인할 수 있습니다.
  4. 고객이 인증하면 bot이 고객을 서버에 추가하고 구성된 역할을 할당합니다. grant는 delivered로 이동합니다.
  5. 구독이 취소, 일시 중지 또는 만료되거나 merchant가 수동으로 회수하면 bot이 역할을 제거하고 grant는 revoked로 이동합니다.
Dodo Payments bot의 역할이 부여하려는 역할보다 위에 배치되어 있는지 확인하세요. Discord에서는 bot이 자신의 역할보다 순위가 높은 역할을 할당할 수 없습니다.

필수 구성

API로 생성

Webhooks

Discord grant를 추적하려면 entitlement_grant.* webhook events를 구독합니다:
  • entitlement_grant.created는 고객이 인증할 수 있도록 status: "pending"oauth_url와 함께 발생합니다.
  • entitlement_grant.delivered는 역할이 할당되면 발생합니다.
  • entitlement_grant.revoked는 역할이 제거되면 발생합니다.

문제 해결

고객이 OAuth flow를 완료할 때까지 grant는 pending 상태입니다. entitlement의 grants 목록을 확인하고 고객이 OAuth 링크를 클릭했는지 확인합니다. 필요한 경우 delivery email을 다시 보내세요.
Dodo Payments bot이 서버에 계속 존재하고 Manage Roles permission을 보유하며 할당할 역할보다 위에 배치되어 있는지 확인하세요. entitlement를 다시 저장하면 validation이 다시 실행됩니다.
Discord는 역할 제거를 즉시 전파하지만 고객의 로컬 Discord client에는 캐시가 남아 있을 수 있습니다. 고객이 다시 연결하거나 새로 고침해야 합니다. 서버 측 상태는 올바릅니다.
마지막 수정일 2026년 7월 31일