Add paying customers to your Discord server with an optional role, and remove them automatically when their access ends.
The Discord entitlement adds a paying customer to your Discord server and can assign them a role. The customer connects their Discord account after their subscription becomes active or their one-time payment succeeds. When the grant is revoked, for example on cancellation or refund, Dodo Payments removes the role and removes the customer from the server.
What Gets Delivered
The customer connects their Discord account from the Customer Portal. The payment confirmation email marks the entitlement Action Required and links to the portal.
After they authorize, the Dodo Payments bot adds them to your server, or finds their existing membership, and assigns the role you configured.
If you don’t pick a role, the customer gets server membership only.
Use it for paid communities, supporter perks, and tiered access channels.
Connect Discord
1
Open Entitlements
In the Dodo Payments dashboard, go to Entitlements and click + to start a new entitlement.
2
Pick Discord
Choose Discord Access as the integration. If Discord isn’t connected for your business yet, click Connect Discord.
Connect Discord prompt before the OAuth handoff.
Discord opens in a new tab. Sign in, pick the server you want to gate, and approve the bot’s permissions on that server: Manage Roles, Kick Members, and Create Invite.
Discord OAuth: pick the server to add the bot to.
Discord OAuth: confirm the bot's permissions on the server.
When Discord redirects back, a confirmation page shows that the server is connected.
Server connected. Return to the Dodo Payments dashboard to continue.
3
Pick a Server and Role
Back in the dashboard, select the Server you connected. To assign a role on delivery, select it under Role. To grant server membership only, leave Role set to No specific role. Enter a Name for the entitlement and click Create Entitlement.
顧客が Discord 上で Dodo Payments を認証します。bot が顧客を server に追加して設定済みの role を割り当て、grant が Delivered に移行します。
grant が取り消されると(subscription がキャンセル、一時停止、保留、または期限切れになった場合、one-time payment が返金された場合、またはお客様が grant を取り消した場合)、bot は role を削除し、顧客を server から削除します。grant は Revoked に移行します。
An authorization link expires 30 minutes after it’s generated. If the customer returns to the Customer Portal after that, Dodo Payments generates a new link. If a customer leaves your server on their own, Dodo Payments revokes their grant with revocation_reason: platform_external.
Place the Dodo Payments bot’s role above the role you grant. Discord doesn’t let a bot assign a role at or above its own highest role. Managed roles, such as bot and integration roles, can’t be assigned.
Required Configuration
Field
Required
Description
guild_id
Yes
The Discord server (guild) ID. The dashboard’s server picker fills this in for you.
role_id
No
The role to assign on delivery. Omit it, or pass null, for server-membership-only access.
// client is a *dodopayments.Client, for example from// dodopayments.NewClient(option.WithEnvironmentTestMode()); ctx is a context.Context.client.Entitlements.New(ctx, dodopayments.EntitlementNewParams{ Name: dodopayments.F("Patrons Discord Role"), IntegrationType: dodopayments.F(dodopayments.EntitlementIntegrationTypeDiscord), IntegrationConfig: dodopayments.F[dodopayments.IntegrationConfigUnionParam]( dodopayments.IntegrationConfigDiscordConfigParam{ GuildID: dodopayments.F("123456789012345678"), RoleID: dodopayments.F("987654321098765432"), }, ),})
顧客が server に参加し、role が割り当てられると、entitlement_grant.delivered が発火します。
role が削除され、顧客が server から削除されると、entitlement_grant.revoked が発火します。
Troubleshooting
Customer never sees the role assigned
The grant stays Pending until the customer completes the Discord authorization. Open the entitlement in the dashboard and check the customer’s grant. If it’s still Pending, ask the customer to open the Customer Portal and click Connect on the Discord entitlement.
Grant moves to failed with permission errors
Dodo Payments bot が引き続き server に参加しており、Manage Roles 権限を持ち、割り当て対象の role より上位に配置されていることを確認してください。bot が server から削除されると、Dodo Payments はその server の保留中および配信済みの grant を取り消します。entitlement を再保存しても、確認されるのはその設定のみで、bot の権限は確認されません。権限を修正したら、顧客に Customer Portal を開いて Discord entitlement の Connect をクリックし、grant を再試行するよう依頼してください。
Customer cancelled but still has the role
Revocation removes the role and removes the customer from the server. If the grant shows Revoked but the customer is still in the server, confirm the bot still has the Manage Roles and Kick Members permissions and sits above the role. If the customer’s Discord app still shows the role, ask them to refresh it. The server-side state is the source of truth.
最終更新日 2026年9月28日
このページは役に立ちましたか?
⌘I
{"docsConfig":{"theme":"maple","$schema":"https://mintlify.com/docs.json","name":"Dodo Payments Documentation","description":"Documentation for Dodo Payments — the all-in-one payments, billing, and merchant of record platform for SaaS, AI, and digital products.","colors":{"primary":"#779812","light":"#C6FE1E","dark":"#166534"},"logo":{"light":"https://mintcdn.com/dodopayments/nM_mJfYkri-OpC5M/logo/light.svg?fit=max\u0026auto=format\u0026n=nM_mJfYkri-OpC5M\u0026q=85\u0026s=23f7a052f7ecb9d6570b7c95ee359a97","dark":"https://mintcdn.com/dodopayments/nM_mJfYkri-OpC5M/logo/dark.svg?fit=max\u0026auto=format\u0026n=nM_mJfYkri-OpC5M\u0026q=85\u0026s=cd6c20238a54526436f21c43fee51b26"},"favicon":"https://mintcdn.com/dodopayments/doYQc9oUE-WNz0cs/favicon.svg?fit=max\u0026auto=format\u0026n=doYQc9oUE-WNz0cs\u0026q=85\u0026s=271c6cc8ce7d6bf4d7f2b9cca029e004","background":{"color":{"light":"#FFFFFF","dark":"#0D0D0D"}},"navbar":{"links":[{"icon":"link","href":"https://docs.dodopayments.com/llms-full.txt","label":"llms-full.txt"},{"icon":"discord","href":"https://discord.gg/bYqAp4ayYh","label":"Community"},{"icon":"house","href":"https://app.dodopayments.com/","label":"Dashboard"}]},"footer":{"socials":{"x":"https://x.com/dodopayments","linkedin":"https://linkedin.com/company/dodopayments","website":"https://dodopayments.com","discord":"https://discord.gg/bYqAp4ayYh","github":"https://github.com/dodopayments","instagram":"https://www.instagram.com/dodo.payments","facebook":"https://www.facebook.com/profile.php?id=61565515607280"}},"seo":{"metatags":{"og:site_name":"Dodo Payments Documentation","twitter:card":"summary_large_image"},"indexing":"navigable"},"fonts":{"heading":{"family":"ApfelGrotezk","weight":400,"source":"fonts/ApfelGrotezk-Regular.woff2","format":"woff2"},"body":{"family":"Inter","weight":400,"source":"fonts/Inter-Variable.woff2","format":"woff2"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","cursor"],"display":"header"},"metadata":{"timestamp":true},"styling":{"latex":true},"navigation":{"languages":[{"language":"en","href":"introduction"},{"language":"es","href":"es/introduction"},{"language":"ar","href":"ar/introduction"},{"language":"fr","href":"fr/introduction"},{"language":"de","href":"de/introduction"},{"language":"id","href":"id/introduction"},{"language":"ja","href":"ja/introduction"},{"language":"ko","href":"ko/introduction"},{"language":"pt-BR","href":"pt-BR/introduction"},{"language":"vi","href":"vi/introduction"},{"language":"cn","href":"cn/introduction"},{"language":"hi","href":"hi/introduction"},{"language":"it","href":"it/introduction"},{"language":"sv","href":"sv/introduction"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"dodopayments","hasAudioNarration":false,"actualSubdomain":"dodopayments","customDomains":["docs.dodopayments.com"],"gitSource":{"type":"github","owner":"dodopayments","repo":"dodo-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"edits":false,"issues":false},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af61516aad23a11c9aa58ca","clientVersion":"0.0.4138","searchFilterCounts":[{"language":"en","tag":"API Reference","count":181},{"language":"en","tag":"Docs","count":178},{"language":"ar","tag":"Docs","count":153},{"language":"cn","tag":"Docs","count":153},{"language":"de","tag":"Docs","count":153},{"language":"es","tag":"Docs","count":153},{"language":"fr","tag":"Docs","count":153},{"language":"hi","tag":"Docs","count":153},{"language":"id","tag":"Docs","count":153},{"language":"it","tag":"Docs","count":153},{"language":"ja","tag":"Docs","count":153},{"language":"ko","tag":"Docs","count":153},{"language":"pt-BR","tag":"Docs","count":153},{"language":"sv","tag":"Docs","count":153},{"language":"vi","tag":"Docs","count":153},{"language":"ar","tag":"API Reference","count":151},{"language":"cn","tag":"API Reference","count":151},{"language":"de","tag":"API Reference","count":151},{"language":"es","tag":"API Reference","count":151},{"language":"fr","tag":"API Reference","count":151},{"language":"hi","tag":"API Reference","count":151},{"language":"id","tag":"API Reference","count":151},{"language":"it","tag":"API Reference","count":151},{"language":"ja","tag":"API Reference","count":151},{"language":"ko","tag":"API Reference","count":151},{"language":"pt-BR","tag":"API Reference","count":151},{"language":"sv","tag":"API Reference","count":151},{"language":"vi","tag":"API Reference","count":151},{"language":"en","tag":"Features","count":87},{"language":"ar","tag":"Features","count":81},{"language":"cn","tag":"Features","count":81},{"language":"de","tag":"Features","count":81},{"language":"es","tag":"Features","count":81},{"language":"fr","tag":"Features","count":81},{"language":"hi","tag":"Features","count":81},{"language":"id","tag":"Features","count":81},{"language":"it","tag":"Features","count":81},{"language":"ja","tag":"Features","count":81},{"language":"ko","tag":"Features","count":81},{"language":"pt-BR","tag":"Features","count":81},{"language":"sv","tag":"Features","count":81},{"language":"vi","tag":"Features","count":81},{"language":"en","tag":"Integrate","count":75},{"language":"en","tag":"Changelog","count":66},{"language":"ar","tag":"Changelog","count":65},{"language":"cn","tag":"Changelog","count":65},{"language":"de","tag":"Changelog","count":65},{"language":"es","tag":"Changelog","count":65},{"language":"fr","tag":"Changelog","count":65},{"language":"hi","tag":"Changelog","count":65},{"language":"id","tag":"Changelog","count":65},{"language":"it","tag":"Changelog","count":65},{"language":"ja","tag":"Changelog","count":65},{"language":"ko","tag":"Changelog","count":65},{"language":"pt-BR","tag":"Changelog","count":65},{"language":"sv","tag":"Changelog","count":65},{"language":"vi","tag":"Changelog","count":65},{"language":"ar","tag":"Integrate","count":59},{"language":"cn","tag":"Integrate","count":59},{"language":"de","tag":"Integrate","count":59},{"language":"es","tag":"Integrate","count":59},{"language":"fr","tag":"Integrate","count":59},{"language":"hi","tag":"Integrate","count":59},{"language":"id","tag":"Integrate","count":59},{"language":"it","tag":"Integrate","count":59},{"language":"ja","tag":"Integrate","count":59},{"language":"ko","tag":"Integrate","count":59},{"language":"pt-BR","tag":"Integrate","count":59},{"language":"sv","tag":"Integrate","count":59},{"language":"vi","tag":"Integrate","count":59},{"language":"en","tag":"External Integrations","count":33},{"language":"ar","tag":"External Integrations","count":30},{"language":"cn","tag":"External Integrations","count":30},{"language":"de","tag":"External Integrations","count":30},{"language":"es","tag":"External Integrations","count":30},{"language":"fr","tag":"External Integrations","count":30},{"language":"hi","tag":"External Integrations","count":30},{"language":"id","tag":"External Integrations","count":30},{"language":"it","tag":"External Integrations","count":30},{"language":"ja","tag":"External Integrations","count":30},{"language":"ko","tag":"External Integrations","count":30},{"language":"pt-BR","tag":"External Integrations","count":30},{"language":"sv","tag":"External Integrations","count":30},{"language":"vi","tag":"External Integrations","count":30},{"language":"en","tag":"Webhooks","count":24},{"language":"ar","tag":"Webhooks","count":23},{"language":"cn","tag":"Webhooks","count":23},{"language":"de","tag":"Webhooks","count":23},{"language":"es","tag":"Webhooks","count":23},{"language":"fr","tag":"Webhooks","count":23},{"language":"hi","tag":"Webhooks","count":23},{"language":"id","tag":"Webhooks","count":23},{"language":"it","tag":"Webhooks","count":23},{"language":"ja","tag":"Webhooks","count":23},{"language":"ko","tag":"Webhooks","count":23},{"language":"pt-BR","tag":"Webhooks","count":23},{"language":"sv","tag":"Webhooks","count":23},{"language":"vi","tag":"Webhooks","count":23},{"language":"en","tag":"Guides","count":22},{"language":"ar","tag":"Guides","count":22},{"language":"cn","tag":"Guides","count":22},{"language":"de","tag":"Guides","count":22},{"language":"es","tag":"Guides","count":22},{"language":"fr","tag":"Guides","count":22},{"language":"hi","tag":"Guides","count":22},{"language":"id","tag":"Guides","count":22},{"language":"it","tag":"Guides","count":22},{"language":"ja","tag":"Guides","count":22},{"language":"ko","tag":"Guides","count":22},{"language":"pt-BR","tag":"Guides","count":22},{"language":"sv","tag":"Guides","count":22},{"language":"vi","tag":"Guides","count":22},{"language":"en","tag":"Entitlements","count":20},{"language":"ar","tag":"Entitlements","count":20},{"language":"cn","tag":"Entitlements","count":20},{"language":"de","tag":"Entitlements","count":20},{"language":"es","tag":"Entitlements","count":20},{"language":"fr","tag":"Entitlements","count":20},{"language":"hi","tag":"Entitlements","count":20},{"language":"id","tag":"Entitlements","count":20},{"language":"it","tag":"Entitlements","count":20},{"language":"ja","tag":"Entitlements","count":20},{"language":"ko","tag":"Entitlements","count":20},{"language":"pt-BR","tag":"Entitlements","count":20},{"language":"sv","tag":"Entitlements","count":20},{"language":"vi","tag":"Entitlements","count":20},{"language":"en","tag":"Invoices","count":17},{"language":"ar","tag":"Customers","count":16},{"language":"cn","tag":"Customers","count":16},{"language":"de","tag":"Customers","count":16},{"language":"es","tag":"Customers","count":16},{"language":"fr","tag":"Customers","count":16},{"language":"hi","tag":"Customers","count":16},{"language":"id","tag":"Customers","count":16},{"language":"it","tag":"Customers","count":16},{"language":"ja","tag":"Customers","count":16},{"language":"ko","tag":"Customers","count":16},{"language":"pt-BR","tag":"Customers","count":16},{"language":"sv","tag":"Customers","count":16},{"language":"vi","tag":"Customers","count":16}]},"assistantConfig":{"deflection":{"enabled":false,"email":"support@dodopayments.com","showHelpButton":true}},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":"#content-area{max-width:60rem}h1,h2,h3,h4,h5,h6{letter-spacing:0.05em!important}.welcome-page .card-group{margin:3rem auto 8rem;max-width:70rem;padding-left:1.25rem;padding-right:1.25rem}.welcome-page .card-group .card{padding:1rem}.welcome-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:20vh;text-align:center;margin-top:3rem;margin-bottom:2.5rem}.welcome-hero h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;line-height:1.2;color:#fff}.welcome-hero p{font-size:1.25rem;max-width:600px;margin:0 auto}.welcome-hero h1{color:rgb(41 42 37 / 1)}.dark .welcome-hero h1{color:rgb(255 255 255 / 1)}.welcome-hero p{color:rgb(83 85 79 / 1)}.dark .welcome-hero p{color:rgb(162 164 158 / 1)}"}],"page":{"pagePath":"ja/features/entitlements/discord","slug":"/ja/features/entitlements/discord","pageMetadata":{"title":"Discord Entitlement","sidebarTitle":"Discord","description":"Add paying customers to your Discord server with an optional role, and remove them automatically when their access ends.","icon":"discord","keywords":["Dodo Payments","Discord","entitlement","Discord role","community access"],"href":"/ja/features/entitlements/discord"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Add paying customers to your Discord server with an optional role, and remove them automatically when their access ends.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,CodeBlock,CodeGroup,Frame,Heading,Info,OptimizedImage,Step,Steps,Table,Tip}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!CodeGroup)_missingMdxReference(`CodeGroup`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsx(Info,{children:_jsx(_components.p,{children:`The Discord entitlement adds a paying customer to your Discord server and can assign them a role. The customer connects their Discord account after their subscription becomes active or their one-time payment succeeds. When the grant is revoked, for example on cancellation or refund, Dodo Payments removes the role and removes the customer from the server.`})}),`\n`,_jsx(Heading,{level:`2`,id:`what-gets-delivered`,children:`What Gets Delivered`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`The customer connects their Discord account from the Customer Portal. The payment confirmation email marks the entitlement `,_jsx(_components.strong,{children:`Action Required`}),` and links to the portal.`]}),`\n`,_jsx(_components.li,{children:`After they authorize, the Dodo Payments bot adds them to your server, or finds their existing membership, and assigns the role you configured.`}),`\n`,_jsx(_components.li,{children:`If you don’t pick a role, the customer gets server membership only.`}),`\n`]}),`\n`,_jsx(_components.p,{children:`Use it for paid communities, supporter perks, and tiered access channels.`}),`\n`,_jsx(Heading,{level:`2`,id:`connect-discord`,children:`Connect Discord`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Open Entitlements`,children:_jsxs(_components.p,{children:[`In the Dodo Payments dashboard, go to `,_jsx(_components.strong,{children:`Entitlements`}),` and click `,_jsx(_components.strong,{children:`+`}),` to start a new entitlement.`]})}),_jsxs(Step,{title:`Pick Discord`,children:[_jsxs(_components.p,{children:[`Choose `,_jsx(_components.strong,{children:`Discord Access`}),` as the integration. If Discord isn’t connected for your business yet, click `,_jsx(_components.strong,{children:`Connect Discord`}),`.`]}),_jsx(Frame,{caption:`Connect Discord prompt before the OAuth handoff.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connect-prompt.png?fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=8a34c436dd7510942db2a9221f623938`,alt:`New entitlement panel prompting the merchant to connect Discord`,style:{maxHeight:`500px`,width:`auto`},\"data-og-width\":`2844`,width:`2844`,\"data-og-height\":`1622`,height:`1622`,\"data-path\":`images/entitlements/discord/connect-prompt.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connect-prompt.png?w=280\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=80a90ce4a602bf3a2019f76c57f76571 280w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connect-prompt.png?w=560\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=315a0a9625630a619dd064bfc3d46495 560w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connect-prompt.png?w=840\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=b019dbe6d66630ba1f3d459f487d6100 840w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connect-prompt.png?w=1100\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=aeb49ba303909dde28dbf66d26793cc9 1100w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connect-prompt.png?w=1650\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=8c7714357bca9cfc57054e053a442dce 1650w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connect-prompt.png?w=2500\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=fb0074b7cd6da4cee8ec266b5727e558 2500w`})}),_jsxs(_components.p,{children:[`Discord opens in a new tab. Sign in, pick the server you want to gate, and approve the bot’s permissions on that server: `,_jsx(_components.strong,{children:`Manage Roles`}),`, `,_jsx(_components.strong,{children:`Kick Members`}),`, and `,_jsx(_components.strong,{children:`Create Invite`}),`.`]}),_jsx(Frame,{caption:`Discord OAuth: pick the server to add the bot to.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-add-bot.png?fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=b57bf306fa15aa3f49b528f803cc625e`,alt:`Discord OAuth screen asking which server to add the Dodo Payments bot to`,style:{maxHeight:`420px`,width:`auto`},\"data-og-width\":`1026`,width:`1026`,\"data-og-height\":`1362`,height:`1362`,\"data-path\":`images/entitlements/discord/oauth-add-bot.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-add-bot.png?w=280\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=9ebcc6e8114f87ae174af644cf0a1b2c 280w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-add-bot.png?w=560\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=bb923e0614d18c6dd4327a175e24d13b 560w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-add-bot.png?w=840\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=52cd505c2e813e71c8ad6132ac8aeb19 840w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-add-bot.png?w=1100\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=df921f9a89d1bb54ed1cc1bf6e141880 1100w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-add-bot.png?w=1650\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=90a5fc68c07ed2f7a325b78d1e1e2707 1650w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-add-bot.png?w=2500\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=17ad7ee8524aeb04a7760f99038e3cc9 2500w`})}),_jsx(Frame,{caption:`Discord OAuth: confirm the bot's permissions on the server.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-permissions.png?fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=438c0b04177e3a4863fb90986f5b95e0`,alt:`Discord bot permission confirmation screen`,style:{maxHeight:`420px`,width:`auto`},\"data-og-width\":`1038`,width:`1038`,\"data-og-height\":`1472`,height:`1472`,\"data-path\":`images/entitlements/discord/oauth-permissions.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-permissions.png?w=280\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=8bd22223c7f709512277dc11fce14ec8 280w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-permissions.png?w=560\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=634d113e4795203dc04e70478223cc21 560w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-permissions.png?w=840\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=65ae6681480c271ffed0f81f2024921c 840w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-permissions.png?w=1100\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=158738713e43c63ad505c4a762d81c92 1100w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-permissions.png?w=1650\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=ab39fe821dd603c70ae839b1b2097295 1650w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/oauth-permissions.png?w=2500\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=768b68192d05254982789bf68dc8cca3 2500w`})}),_jsx(_components.p,{children:`When Discord redirects back, a confirmation page shows that the server is connected.`}),_jsx(Frame,{caption:`Server connected. Return to the Dodo Payments dashboard to continue.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connected.png?fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=bd1cbb3f9960e4eb1881d7a818dc6f16`,alt:`Discord Access connected successfully confirmation page`,style:{maxHeight:`500px`,width:`auto`},\"data-og-width\":`2000`,width:`2000`,\"data-og-height\":`1140`,height:`1140`,\"data-path\":`images/entitlements/discord/connected.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connected.png?w=280\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=7c6bfc974529187857b6c5848bf1c8c5 280w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connected.png?w=560\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=1920933e2dcba6fdf8ea125303e608be 560w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connected.png?w=840\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=d24c947223c229d68e4838372d8ca2d6 840w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connected.png?w=1100\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=c8872cc7aec50f631e0a794fd35e5d2c 1100w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connected.png?w=1650\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=0927f0cf9cf44aa5c44d3258855ef58e 1650w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/connected.png?w=2500\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=d8d0a32d0e704213fa0dd4c0383460ef 2500w`})})]}),_jsxs(Step,{title:`Pick a Server and Role`,children:[_jsxs(_components.p,{children:[`Back in the dashboard, select the `,_jsx(_components.strong,{children:`Server`}),` you connected. To assign a role on delivery, select it under `,_jsx(_components.strong,{children:`Role`}),`. To grant server membership only, leave `,_jsx(_components.strong,{children:`Role`}),` set to `,_jsx(_components.strong,{children:`No specific role`}),`. Enter a `,_jsx(_components.strong,{children:`Name`}),` for the entitlement and click `,_jsx(_components.strong,{children:`Create Entitlement`}),`.`]}),_jsx(Frame,{children:_jsx(OptimizedImage,{src:`https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/create.png?fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=79e95041881d2925e58fc752280d508e`,alt:`New Entitlement - Discord Access form with connected server, server picker, role dropdown, and name field`,style:{maxHeight:`500px`,width:`auto`},\"data-og-width\":`1196`,width:`1196`,\"data-og-height\":`1564`,height:`1564`,\"data-path\":`images/entitlements/discord/create.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/create.png?w=280\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=c59e5ef956446f5ac2f51cf547299987 280w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/create.png?w=560\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=cc24d359cfda5807265319b7cd96e2d0 560w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/create.png?w=840\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=3abd4fa942e351c9cc76cf6be0032554 840w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/create.png?w=1100\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=8630de37a9f57fc183f6f25b75c15dc7 1100w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/create.png?w=1650\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=bb34bffe7f18f75563f6788158b82881 1650w, https://mintcdn.com/dodopayments/do-W-dMDGVB_xzr_/images/entitlements/discord/create.png?w=2500\u0026fit=max\u0026auto=format\u0026n=do-W-dMDGVB_xzr_\u0026q=85\u0026s=4a93adc16ad9b235641066e294583a1d 2500w`})})]}),_jsx(Step,{title:`Attach It to a Product`,children:_jsxs(_components.p,{children:[`The entitlement is saved and available to attach to any product. See `,_jsx(_components.a,{href:`/features/entitlements/introduction#attach-entitlements-to-products`,children:`Attach Entitlements to Products`}),`.`]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`customer-flow`,children:`Customer Flow`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`顧客がチェックアウトを完了します。`}),`\n`,_jsxs(_components.li,{children:[`Dodo Payments が `,_jsx(_components.code,{children:`Pending`}),` ステータスの grant を作成します。Dodo Payments はすぐに Discord authorization URL の作成を試み、それを `,_jsx(_components.code,{children:`oauth_url`}),` に保存します。失敗した場合、顧客が accept flow を開始するまで、`,_jsx(_components.code,{children:`oauth_url`}),` は `,_jsx(_components.code,{children:`null`}),` のままです。`]}),`\n`,_jsxs(_components.li,{children:[`支払い確認メールには entitlement が `,_jsx(_components.strong,{children:`Action Required`}),` として記載され、Customer Portal へのリンクが含まれます。ポータルで、顧客は entitlement の `,_jsx(_components.strong,{children:`Connect`}),` をクリックします。`]}),`\n`,_jsxs(_components.li,{children:[`顧客が Discord 上で Dodo Payments を認証します。bot が顧客を server に追加して設定済みの role を割り当て、grant が `,_jsx(_components.code,{children:`Delivered`}),` に移行します。`]}),`\n`,_jsxs(_components.li,{children:[`grant が取り消されると(subscription がキャンセル、一時停止、保留、または期限切れになった場合、one-time payment が返金された場合、またはお客様が grant を取り消した場合)、bot は role を削除し、顧客を server から削除します。grant は `,_jsx(_components.code,{children:`Revoked`}),` に移行します。`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`An authorization link expires 30 minutes after it’s generated. If the customer returns to the Customer Portal after that, Dodo Payments generates a new link. If a customer leaves your server on their own, Dodo Payments revokes their grant with `,_jsx(_components.code,{children:`revocation_reason: platform_external`}),`.`]}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`Place the Dodo Payments bot’s role `,_jsx(_components.strong,{children:`above`}),` the role you grant. Discord doesn’t let a bot assign a role at or above its own highest role. Managed roles, such as bot and integration roles, can’t be assigned.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`required-configuration`,children:`Required Configuration`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Required`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`guild_id`})}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:`The Discord server (guild) ID. The dashboard’s server picker fills this in for you.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`role_id`})}),_jsx(_components.td,{children:`No`}),_jsxs(_components.td,{children:[`The role to assign on delivery. Omit it, or pass `,_jsx(_components.code,{children:`null`}),`, for server-membership-only access.`]})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`create-via-api`,children:`Create via API`}),`\n`,_jsxs(CodeGroup,{children:[_jsx(CodeBlock,{filename:`TypeScript`,expandable:`true`,numberOfLines:`15`,language:`typescript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`typescript`,children:_jsxs(_components.code,{language:`typescript`,numberOfLines:`15`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` DodoPayments `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'dodopayments'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`;`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` client = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`new`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` DodoPayments({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` bearerToken: process.env[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'DODO_PAYMENTS_API_KEY'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` environment: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'test_mode'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`const`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` entitlement = `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`await`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` client.entitlements.create({`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` name: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'Patrons Discord Role'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` integration_type: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'discord'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` integration_config: {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` guild_id: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'123456789012345678'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` role_id: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'987654321098765432'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`Python`,expandable:`true`,numberOfLines:`16`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`16`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` os`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`from`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` dodopayments `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`import`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` DodoPayments`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`client = DodoPayments(`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` bearer_token=os.environ.get(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"DODO_PAYMENTS_API_KEY\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`),`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` environment=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"test_mode\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`entitlement = client.entitlements.create(`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` name=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Patrons Discord Role\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` integration_type=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"discord\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` integration_config={`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"guild_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"123456789012345678\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"role_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"987654321098765432\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`]})})}),_jsx(CodeBlock,{filename:`Go`,expandable:`true`,numberOfLines:`12`,language:`go`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`go`,children:_jsxs(_components.code,{language:`go`,numberOfLines:`12`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// client is a *dodopayments.Client, for example from`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// dodopayments.NewClient(option.WithEnvironmentTestMode()); ctx is a context.Context.`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`client.Entitlements.New(ctx, dodopayments.EntitlementNewParams{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` Name: dodopayments.F(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Patrons Discord Role\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`),`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` IntegrationType: dodopayments.F(dodopayments.EntitlementIntegrationTypeDiscord),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` IntegrationConfig: dodopayments.F[dodopayments.IntegrationConfigUnionParam](`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` dodopayments.IntegrationConfigDiscordConfigParam{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` GuildID: dodopayments.F(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"123456789012345678\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`),`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` RoleID: dodopayments.F(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"987654321098765432\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`),`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ),`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`})`})}),`\n`]})})})]}),`\n`,_jsx(Heading,{level:`2`,id:`webhooks`,children:`Webhooks`}),`\n`,_jsxs(_components.p,{children:[`Subscribe to the `,_jsxs(_components.a,{href:`/developer-resources/webhooks/intents/entitlement-grant`,children:[_jsx(_components.code,{children:`entitlement_grant.*`}),` webhook events`]}),` to track Discord grants:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`entitlement_grant.created`}),` が `,_jsx(_components.code,{children:`status: \"Pending\"`}),` とともに発火します。`,_jsx(_components.code,{children:`oauth_url`}),` には、すでに authorization URL が含まれている場合があります。`,_jsx(_components.code,{children:`null`}),` の場合、顧客が Customer Portal から accept flow を開始すると値が設定されます。`]}),`\n`,_jsxs(_components.li,{children:[`顧客が server に参加し、role が割り当てられると、`,_jsx(_components.code,{children:`entitlement_grant.delivered`}),` が発火します。`]}),`\n`,_jsxs(_components.li,{children:[`role が削除され、顧客が server から削除されると、`,_jsx(_components.code,{children:`entitlement_grant.revoked`}),` が発火します。`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`troubleshooting`,children:`Troubleshooting`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Customer never sees the role assigned`,id:`customer-never-sees-the-role-assigned`,children:_jsxs(_components.p,{children:[`The grant stays `,_jsx(_components.code,{children:`Pending`}),` until the customer completes the Discord authorization. Open the entitlement in the dashboard and check the customer’s grant. If it’s still `,_jsx(_components.code,{children:`Pending`}),`, ask the customer to open the Customer Portal and click `,_jsx(_components.strong,{children:`Connect`}),` on the Discord entitlement.`]})}),_jsx(Accordion,{title:`Grant moves to failed with permission errors`,id:`grant-moves-to-failed-with-permission-errors`,children:_jsxs(_components.p,{children:[`Dodo Payments bot が引き続き server に参加しており、`,_jsx(_components.strong,{children:`Manage Roles`}),` 権限を持ち、割り当て対象の role より上位に配置されていることを確認してください。bot が server から削除されると、Dodo Payments はその server の保留中および配信済みの grant を取り消します。entitlement を再保存しても、確認されるのはその設定のみで、bot の権限は確認されません。権限を修正したら、顧客に Customer Portal を開いて Discord entitlement の `,_jsx(_components.strong,{children:`Connect`}),` をクリックし、grant を再試行するよう依頼してください。`]})}),_jsx(Accordion,{title:`Customer cancelled but still has the role`,id:`customer-cancelled-but-still-has-the-role`,children:_jsxs(_components.p,{children:[`Revocation removes the role and removes the customer from the server. If the grant shows `,_jsx(_components.code,{children:`Revoked`}),` but the customer is still in the server, confirm the bot still has the `,_jsx(_components.strong,{children:`Manage Roles`}),` and `,_jsx(_components.strong,{children:`Kick Members`}),` permissions and sits above the role. If the customer’s Discord app still shows the role, ask them to refresh it. The server-side state is the source of truth.`]})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Discord Entitlement","sidebarTitle":"Discord","description":"Add paying customers to your Discord server with an optional role, and remove them automatically when their access ends.","icon":"discord","keywords":["Dodo Payments","Discord","entitlement","Discord role","community access"],"href":"/ja/features/entitlements/discord"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"What Gets Delivered","slug":"what-gets-delivered","depth":2,"children":[]},{"title":"Connect Discord","slug":"connect-discord","depth":2,"children":[]},{"title":"Customer Flow","slug":"customer-flow","depth":2,"children":[]},{"title":"Required Configuration","slug":"required-configuration","depth":2,"children":[]},{"title":"Create via API","slug":"create-via-api","depth":2,"children":[]},{"title":"Webhooks","slug":"webhooks","depth":2,"children":[]},{"title":"Troubleshooting","slug":"troubleshooting","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/dodopayments/0ee82a08f7b65bcb/seo.js","/_mintlify/custom/dodopayments/6f88c9bbee313616/assistant-loader.js"],"subdomain":"dodopayments","siteName":"Dodo Payments Documentation","title":"Discord Entitlement - Dodo Payments Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/features/entitlements/discord","matchLevel":1},"es":{"href":"/es/features/entitlements/discord","matchLevel":1},"ar":{"href":"/ar/features/entitlements/discord","matchLevel":1},"fr":{"href":"/fr/features/entitlements/discord","matchLevel":1},"de":{"href":"/de/features/entitlements/discord","matchLevel":1},"id":{"href":"/id/features/entitlements/discord","matchLevel":1},"ja":{"href":"/ja/features/entitlements/discord","matchLevel":0},"ko":{"href":"/ko/features/entitlements/discord","matchLevel":1},"pt-BR":{"href":"/pt-BR/features/entitlements/discord","matchLevel":1},"vi":{"href":"/vi/features/entitlements/discord","matchLevel":1},"cn":{"href":"/cn/features/entitlements/discord","matchLevel":1},"hi":{"href":"/hi/features/entitlements/discord","matchLevel":1},"it":{"href":"/it/features/entitlements/discord","matchLevel":1},"sv":{"href":"/sv/features/entitlements/discord","matchLevel":1}}},"lastModified":"2026-09-28T05:12:06.904Z","gitLastModified":"2026-09-28T05:10:45.000Z","originalFileLocation":"ja/features/entitlements/discord.mdx","locale":"ja"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Add paying customers to your Discord server with an optional role, and remove them automatically when their access ends.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Dodo Payments Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/dodopayments/KuV_TozyHuGHOyyc/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/dodopayments/KuV_TozyHuGHOyyc/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/dodopayments/KuV_TozyHuGHOyyc/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/dodopayments/KuV_TozyHuGHOyyc/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/dodopayments/KuV_TozyHuGHOyyc/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/dodopayments/KuV_TozyHuGHOyyc/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/dodopayments/KuV_TozyHuGHOyyc/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/dodopayments/KuV_TozyHuGHOyyc/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/dodopayments/KuV_TozyHuGHOyyc/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Discord Entitlement - Dodo Payments Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Add paying customers to your Discord server with an optional role, and remove them automatically when their access ends.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Dodo Payments Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.dodopayments.com/ja/features/entitlements/discord\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://dodopayments.mintlify.site/_mintlify/api/og/v2?division=Entitlements\u0026amp;title=Discord+Entitlement\u0026amp;description=Add+paying+customers+to+your+Discord+server+with+an+optional+role%2C+and+remove+them+automatically+when+their+access+ends.\u0026amp;theme=fcc3a546490e883f7462a320\u0026amp;signature=602f68deda38a979f0c551169fd8be9493e949dd1b52dd46ab0430590ed68f3c\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Discord Entitlement - Dodo Payments Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Add paying customers to your Discord server with an optional role, and remove them automatically when their access ends.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://dodopayments.mintlify.site/_mintlify/api/og/v2?division=Entitlements\u0026amp;title=Discord+Entitlement\u0026amp;description=Add+paying+customers+to+your+Discord+server+with+an+optional+role%2C+and+remove+them+automatically+when+their+access+ends.\u0026amp;theme=fcc3a546490e883f7462a320\u0026amp;signature=602f68deda38a979f0c551169fd8be9493e949dd1b52dd46ab0430590ed68f3c\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/dodopayments/KuV_TozyHuGHOyyc/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Dodo Payments Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#779812\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.dodopayments.com/ja/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/ja/features/entitlements/discord.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.dodopayments.com/ja/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.dodopayments.com/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.dodopayments.com/es/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ar\" href=\"https://docs.dodopayments.com/ar/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.dodopayments.com/fr/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://docs.dodopayments.com/de/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"id\" href=\"https://docs.dodopayments.com/id/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.dodopayments.com/ko/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://docs.dodopayments.com/pt-BR/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"vi\" href=\"https://docs.dodopayments.com/vi/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://docs.dodopayments.com/cn/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"hi\" href=\"https://docs.dodopayments.com/hi/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"it\" href=\"https://docs.dodopayments.com/it/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"sv\" href=\"https://docs.dodopayments.com/sv/features/entitlements/discord\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.dodopayments.com/features/entitlements/discord\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.dodopayments.com/#organization\",\"name\":\"Dodo Payments Documentation\",\"url\":\"https://docs.dodopayments.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/dodopayments/nM_mJfYkri-OpC5M/logo/light.svg?fit=max\u0026auto=format\u0026n=nM_mJfYkri-OpC5M\u0026q=85\u0026s=23f7a052f7ecb9d6570b7c95ee359a97\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.dodopayments.com#website\",\"name\":\"Dodo Payments Documentation\",\"url\":\"https://docs.dodopayments.com\",\"publisher\":{\"@id\":\"https://docs.dodopayments.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.dodopayments.com/ja/features/entitlements/discord#webpage\",\"url\":\"https://docs.dodopayments.com/ja/features/entitlements/discord\",\"name\":\"Discord Entitlement\",\"description\":\"Add paying customers to your Discord server with an optional role, and remove them automatically when their access ends.\",\"dateModified\":\"2026-09-28T05:10:45.000Z\",\"isPartOf\":{\"@id\":\"https://docs.dodopayments.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.dodopayments.com/ja/features/entitlements/discord#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.dodopayments.com/ja/features/entitlements/discord#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Features\",\"item\":\"https://docs.dodopayments.com/ja/features/products\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Entitlements\",\"item\":\"https://docs.dodopayments.com/ja/features/entitlements/introduction\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Discord Entitlement\",\"item\":\"https://docs.dodopayments.com/ja/features/entitlements/discord\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.dodopayments.com/ja/features/entitlements/discord#article\",\"headline\":\"Discord Entitlement\",\"name\":\"Discord Entitlement\",\"description\":\"Add paying customers to your Discord server with an optional role, and remove them automatically when their access ends.\",\"url\":\"https://docs.dodopayments.com/ja/features/entitlements/discord\",\"mainEntityOfPage\":{\"@id\":\"https://docs.dodopayments.com/ja/features/entitlements/discord#webpage\"},\"dateModified\":\"2026-09-28T05:10:45.000Z\",\"keywords\":\"Dodo Payments, Discord, entitlement, Discord role, community access\",\"publisher\":{\"@id\":\"https://docs.dodopayments.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.dodopayments.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Dodo Payments Documentation\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Dodo Payments Documentation\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/ja/features/entitlements/discord.md","siteName":"Dodo Payments Documentation","nav":{"global":null,"languages":[{"language":"en","pages":[{"title":"en","href":"/features/entitlements/discord"}]},{"language":"es","pages":[{"title":"es","href":"/es/features/entitlements/discord"}]},{"language":"ar","pages":[{"title":"ar","href":"/ar/features/entitlements/discord"}]},{"language":"fr","pages":[{"title":"fr","href":"/fr/features/entitlements/discord"}]},{"language":"de","pages":[{"title":"de","href":"/de/features/entitlements/discord"}]},{"language":"id","pages":[{"title":"id","href":"/id/features/entitlements/discord"}]},{"language":"ja","tabs":[{"tab":"Docs","icon":"book","groups":[{"group":"Getting Started","pages":[{"title":"Welcome to Dodo Payments","sidebarTitle":"Introduction","icon":"rocket","href":"/ja/introduction"},{"title":"AI Coding Agentsで構築する","sidebarTitle":"AI Coding Agents","icon":"robot","href":"/ja/developer-resources/build-with-ai-coding-agents"},{"title":"Dodo Paymentsへの移行","icon":"arrow-right-arrow-left","href":"/ja/migrate-to-dodo"},{"title":"Account Verification","icon":"id-card","href":"/ja/miscellaneous/verification-process"}]},{"group":"Features","pages":[{"sidebarTitle":"Products","title":"Products","icon":"box","href":"/ja/features/products"},{"sidebarTitle":"製品コレクション","title":"製品コレクション","icon":"layer-group","href":"/ja/features/product-collections"},{"sidebarTitle":"一回限りの支払い","title":"一回限りの支払い","icon":"credit-card","href":"/ja/features/one-time-payment-products"},{"group":"Subscriptions","icon":"infinity","pages":[{"sidebarTitle":"Subscriptions","title":"Subscriptions","icon":"repeat","href":"/ja/features/subscription"},{"sidebarTitle":"アドオン","title":"サブスクリプション用アドオン","icon":"puzzle","href":"/ja/features/addons"},{"title":"オンデマンドサブスクリプション","icon":"bolt","href":"/ja/developer-resources/ondemand-subscriptions"}]},{"group":"Usage Based Billing","icon":"arrow-trend-up","pages":[{"sidebarTitle":"はじめに","title":"Usage-Based Billing","icon":"box","href":"/ja/features/usage-based-billing/introduction"},{"sidebarTitle":"メーター","title":"メーター","icon":"sliders","href":"/ja/features/usage-based-billing/meters"},{"sidebarTitle":"イベント取り込み","title":"イベント取り込み","icon":"bolt","href":"/ja/features/usage-based-billing/event-ingestion"},{"group":"Ingestion Blueprints","icon":"copy","pages":[{"sidebarTitle":"はじめに","title":"インジェクションブループリント","icon":"box","href":"/ja/features/usage-based-billing/ingestion-blueprints"},{"title":"LLM ブループリント","icon":"brain-circuit","href":"/ja/developer-resources/ingestion-blueprints/llm"},{"title":"API Gateway Blueprint","icon":"cloud","href":"/ja/developer-resources/ingestion-blueprints/api-gateway"},{"title":"オブジェクトストレージブループリント","icon":"box-archive","href":"/ja/developer-resources/ingestion-blueprints/object-storage"},{"title":"ストリームブループリント","icon":"tower-broadcast","href":"/ja/developer-resources/ingestion-blueprints/stream"},{"title":"時間範囲ブループリント","icon":"clock","href":"/ja/developer-resources/ingestion-blueprints/time-range"}]}]},{"sidebarTitle":"Credit-Based Billing","title":"Credit-Based Billing","icon":"coins","tag":"NEW","href":"/ja/features/credit-based-billing"},{"sidebarTitle":"シートベースの請求","title":"シートベースの請求","icon":"users","href":"/ja/features/seat-based-billing"},{"sidebarTitle":"ハイブリッド請求","title":"ハイブリッド請求モデル","icon":"layer-group","href":"/ja/features/hybrid-billing"},{"title":"アップセルとダウンセル","icon":"arrow-up-right-dots","href":"/ja/features/upsells-and-downsells"},{"group":"Customers","icon":"user-group","pages":[{"title":"Customer Management","icon":"user-group","href":"/ja/features/customers"},{"sidebarTitle":"カスタマーポータル","title":"カスタマーポータル","icon":"id-card","href":"/ja/features/customer-portal"},{"title":"Customer Wallets","icon":"wallet","tag":"NEW","href":"/ja/features/customer-wallet"},{"sidebarTitle":"送信済みメール","title":"顧客メールログ","icon":"envelope","tag":"NEW","href":"/ja/features/email-logs"},{"sidebarTitle":"顧客ブロックリスト","title":"顧客ブロックリスト","icon":"user-slash","tag":"NEW","href":"/ja/features/customer-blocklist"}]},{"sidebarTitle":"割引","title":"割引","icon":"percent","href":"/ja/features/discount-codes"},{"group":"Recovery","icon":"rotate","tag":"NEW","pages":[{"sidebarTitle":"概要","title":"収益回復","icon":"rotate","href":"/ja/features/recovery/overview"},{"sidebarTitle":"放棄カート回収","title":"放棄カート回収","icon":"cart-shopping","href":"/ja/features/recovery/abandoned-cart-recovery"},{"sidebarTitle":"サブスクリプション督促","title":"サブスクリプション督促","icon":"repeat","href":"/ja/features/recovery/subscription-dunning"},{"sidebarTitle":"サブスクリプション決済の再試行","title":"サブスクリプション決済の再試行","icon":"arrow-rotate-right","href":"/ja/features/recovery/payment-retries"},{"sidebarTitle":"手動リトライ","title":"手動決済リトライ","icon":"hand-pointer","tag":"NEW","href":"/ja/features/recovery/manual-retry"}]},{"group":"Transactions","icon":"credit-card","pages":[{"title":"支払い","icon":"money-bill-transfer","href":"/ja/features/transactions/payments"},{"title":"返金","icon":"rotate-left","href":"/ja/features/transactions/refunds"},{"title":"Disputes","icon":"circle-exclamation","href":"/ja/features/transactions/disputes"}]},{"group":"Entitlements","icon":"gift","tag":"NEW","pages":[{"title":"導入","sidebarTitle":"導入","icon":"box-archive","href":"/ja/features/entitlements/introduction"},{"title":"License Keys","icon":"key","href":"/ja/features/license-keys"},{"title":"Digital Product Delivery","sidebarTitle":"Digital Products","icon":"download","href":"/ja/features/digital-product-delivery"},{"title":"Feature Flag Entitlement","sidebarTitle":"Feature Flags","description":"購入を条件に、自社アプリケーション内の機能を有効化できます。Feature flag entitlements により、支払い時に boolean の capability が付与され、キャンセル時には自動的に revoke されます。","icon":"flag","tag":"NEW","href":"/ja/features/entitlements/feature-flags"},{"title":"Discord Entitlement","sidebarTitle":"Discord","icon":"discord","href":"/ja/features/entitlements/discord"},{"title":"GitHub Entitlement","sidebarTitle":"GitHub","description":"Grant customers collaborator access to a private GitHub repository at the permission level you choose, and revoke it automatically on cancellation.","icon":"github","href":"/ja/features/entitlements/github"},{"title":"Telegram 権限","sidebarTitle":"Telegram","icon":"telegram","href":"/ja/features/entitlements/telegram"},{"title":"Framer Entitlement","sidebarTitle":"Framer","icon":"puzzle-piece","href":"/ja/features/entitlements/framer"},{"title":"Notion エンタイトルメント","sidebarTitle":"Notion","icon":"book","href":"/ja/features/entitlements/notion"}]},{"group":"Payouts and Balances","icon":"wallet","pages":[{"title":"Payouts Process","icon":"money-bill","href":"/ja/features/payouts/payout-structure"},{"title":"残高","icon":"file-invoice-dollar","href":"/ja/features/account-summary-payout-wallet"}]},{"group":"Account Management","icon":"user","pages":[{"sidebarTitle":"Businessをアーカイブ","title":"Businessのアーカイブ","icon":"box-archive","tag":"NEW","href":"/ja/features/archive-business"},{"title":"マルチブランド設定","icon":"building-columns","href":"/ja/features/multi-brands"},{"title":"請求書管理","icon":"file-invoice-dollar","href":"/ja/features/invoice-generation"},{"title":"チームメンバー","icon":"user-gear","href":"/ja/features/team"},{"title":"コミュニケーション設定","sidebarTitle":"コミュニケーション設定","icon":"bell","tag":"NEW","href":"/ja/features/communication-preferences"},{"title":"マイアカウント","icon":"user-gear","href":"/ja/miscellaneous/accounts"}]},{"group":"Pricing","icon":"dollar-sign","pages":[{"sidebarTitle":"税金を含む価格設定","title":"税金を含む価格設定","icon":"file-invoice","href":"/ja/features/tax-inclusive-pricing"},{"sidebarTitle":"好きな金額を支払う","title":"好きな金額を支払う価格設定","icon":"dollar-sign","href":"/ja/features/pay-what-you-want"},{"title":"B2B決済","icon":"money-bills","href":"/ja/features/b2b-payments"},{"title":"ローカライズ価格","sidebarTitle":"ローカライズ価格","icon":"earth-americas","href":"/ja/features/localized-pricing"},{"sidebarTitle":"購買力平価","title":"購買力平価","tag":"NEW","icon":"money-bill-trend-up","href":"/ja/features/purchasing-power-parity"},{"sidebarTitle":"チャームプライシング","title":"チャームプライシング","tag":"NEW","icon":"tag","href":"/ja/features/charm-pricing"}]},{"sidebarTitle":"チェックアウト","title":"チェックアウト機能","icon":"cart-shopping","href":"/ja/features/checkout"},{"sidebarTitle":"デザイン","title":"デザインとテーマのカスタマイズ","icon":"palette","tag":"NEW","href":"/ja/features/design"},{"group":"Payment Methods","icon":"money-bill-wave","pages":[{"title":"Payment Methods","sidebarTitle":"Overview","icon":"layer-group","href":"/ja/features/payment-methods"},{"title":"クレジットカードとデビットカード","sidebarTitle":"カード","icon":"credit-card","href":"/ja/features/payment-methods/cards"},{"title":"Digital Wallets","sidebarTitle":"Digital Wallets","icon":"wallet","href":"/ja/features/payment-methods/digital-wallets"},{"title":"後払い(Buy Now Pay Later、BNPL)","sidebarTitle":"BNPL","icon":"calendar-days","href":"/ja/features/payment-methods/bnpl"},{"title":"ACH Direct Debit","sidebarTitle":"ACH Direct Debit","icon":"building-columns","href":"/ja/features/payment-methods/ach"},{"title":"インドの決済方法","sidebarTitle":"インド","icon":"indian-rupee-sign","href":"/ja/features/payment-methods/india"},{"title":"ヨーロッパの決済方法","sidebarTitle":"ヨーロッパ","icon":"euro-sign","href":"/ja/features/payment-methods/europe"},{"title":"South Korea Payment Methods","sidebarTitle":"South Korea","icon":"won-sign","href":"/ja/features/payment-methods/south-korea"},{"title":"アジア太平洋地域の決済方法","sidebarTitle":"アジア太平洋地域","icon":"earth-asia","href":"/ja/features/payment-methods/asia-pacific"},{"title":"Pix","sidebarTitle":"Pix","icon":"brazilian-real-sign","href":"/ja/features/payment-methods/pix"},{"title":"Stablecoins","sidebarTitle":"Stablecoins","icon":"dollar-sign","href":"/ja/features/payment-methods/stablecoins"},{"title":"WeChat Pay","sidebarTitle":"WeChat Pay","icon":"comment-dollar","href":"/ja/features/payment-methods/wechat"}]},{"title":"サードパーティ分析","sidebarTitle":"サードパーティ分析","icon":"chart-line","tag":"NEW","href":"/ja/features/analytics"},{"sidebarTitle":"適応通貨","title":"適応通貨","icon":"money-bill-transfer","href":"/ja/features/adaptive-currency"},{"group":"BYOP","icon":"shuffle","tag":"BETA","pages":[{"title":"Bring Your Own Processor (BYOP)","sidebarTitle":"概要","tag":"BETA","icon":"boxes-stacked","href":"/ja/features/byop"},{"title":"Stripe - コネクトと生カードAPIアクセス","sidebarTitle":"Stripe","icon":"stripe","href":"/ja/features/byop/stripe"},{"title":"Adyen - Connect \u0026 Raw Card API Access","sidebarTitle":"Adyen","icon":"https://mintlify.s3.us-west-1.amazonaws.com/dodopayments/images/logos/adyen.svg","href":"/ja/features/byop/adyen"}]},{"title":"ストアフロント","icon":"store","href":"/ja/features/storefront"},{"title":"アフィリエイト","icon":"users-line","href":"/ja/features/affiliates"},{"title":"Moderation API","icon":"shield-check","tag":"NEW","href":"/ja/features/moderation"},{"title":"iOSでのデジタル商品販売","icon":"mobile","href":"/ja/features/appstore-digital-goods"},{"title":"ダッシュボード アナリティクス","sidebarTitle":"ダッシュボード アナリティクス","icon":"chart-line","href":"/ja/features/analytics-and-reporting"},{"title":"レポート","sidebarTitle":"レポート","icon":"file-invoice","href":"/ja/features/reports"}]},{"group":"Integrate","pages":[{"group":"SDKs","icon":"box-open","pages":[{"sidebarTitle":"概要","title":"公式 SDK","icon":"box","href":"/ja/developer-resources/dodo-payments-sdks"},{"title":"TypeScript","icon":"js","href":"/ja/developer-resources/sdks/typescript"},{"title":"Python","icon":"python","href":"/ja/developer-resources/sdks/python"},{"title":"Go","icon":"golang","href":"/ja/developer-resources/sdks/go"},{"title":"Ruby","icon":"gem","href":"/ja/developer-resources/sdks/ruby"},{"title":"Java","icon":"java","href":"/ja/developer-resources/sdks/java"},{"title":"Kotlin","icon":"k","href":"/ja/developer-resources/sdks/kotlin"},{"title":"PHP","icon":"php","href":"/ja/developer-resources/sdks/php"},{"title":"C#","icon":"c","href":"/ja/developer-resources/sdks/csharp"},{"title":"Rust","icon":"rust","href":"/ja/developer-resources/sdks/rust"}]},{"group":"Mobile Checkout SDKs","icon":"mobile","pages":[{"title":"Mobile Integration Guide","sidebarTitle":"Integration Guide","icon":"mobile","href":"/ja/developer-resources/mobile-integration"},{"title":"Android","sidebarTitle":"Android","tag":"NEW","icon":"android","href":"/ja/developer-resources/sdks/android"},{"title":"iOS","sidebarTitle":"iOS","tag":"NEW","icon":"apple","href":"/ja/developer-resources/sdks/ios"},{"title":"React Native","sidebarTitle":"React Native","tag":"NEW","icon":"react","href":"/ja/developer-resources/sdks/react-native"},{"title":"Flutter","sidebarTitle":"Flutter","tag":"NEW","icon":"layer-group","href":"/ja/developer-resources/sdks/flutter"}]},{"group":"Framework Adaptors","icon":"frame","pages":[{"sidebarTitle":"概要","title":"Framework Adaptors の概要","icon":"box","href":"/ja/developer-resources/framework-adaptors"},{"title":"Next.js アダプタ","icon":"code-merge","href":"/ja/developer-resources/nextjs-adaptor"},{"title":"Better Auth Adaptor","icon":"code-merge","href":"/ja/developer-resources/better-auth-adaptor"},{"title":"Convexコンポーネント","icon":"code-merge","href":"/ja/developer-resources/convex-component"},{"title":"TanStack Adaptor","icon":"code-merge","href":"/ja/developer-resources/tanstack-adaptor"},{"title":"Nuxt Adaptor","icon":"code-merge","href":"/ja/developer-resources/nuxt-adaptor"},{"title":"Express アダプタ","icon":"code-merge","href":"/ja/developer-resources/express-adaptor"},{"title":"Astro Adaptor","icon":"code-merge","href":"/ja/developer-resources/astro-adaptor"},{"title":"SvelteKit Adaptor","icon":"code-merge","href":"/ja/developer-resources/sveltekit-adaptor"},{"title":"Honoアダプタ","icon":"code-merge","href":"/ja/developer-resources/hono-adaptor"},{"title":"Remixアダプタ","icon":"code-merge","href":"/ja/developer-resources/remix-adaptor"},{"title":"Fastify アダプタ","icon":"code-merge","href":"/ja/developer-resources/fastify-adaptor"},{"title":"Bun Adaptor","icon":"code-merge","href":"/ja/developer-resources/bun-adaptor"}]},{"group":"Webhooks","icon":"webhook","pages":[{"sidebarTitle":"概要","title":"Webhooks","icon":"webhook","href":"/ja/developer-resources/webhooks"},{"title":"Webhook Events Guide","icon":"bell","href":"/ja/developer-resources/webhooks/intents/webhook-events-guide"},{"group":"Webhook Payloads","icon":"code","pages":[{"title":"支払い","icon":"credit-card","href":"/ja/developer-resources/webhooks/intents/payment"},{"sidebarTitle":"サブスクリプション","title":"サブスクリプション Webhook","icon":"repeat","href":"/ja/developer-resources/webhooks/intents/subscription"},{"title":"返金","icon":"rotate-left","href":"/ja/developer-resources/webhooks/intents/refund"},{"sidebarTitle":"異議申し立て","title":"異議申し立て Webhook","icon":"circle-exclamation","href":"/ja/developer-resources/webhooks/intents/dispute"},{"title":"ライセンスキー","icon":"key","href":"/ja/developer-resources/webhooks/intents/license-key"},{"title":"権利付与","icon":"gift","href":"/ja/developer-resources/webhooks/intents/entitlement-grant"},{"sidebarTitle":"クレジットベース課金","title":"クレジットベース課金 Webhook","icon":"coins","href":"/ja/developer-resources/webhooks/intents/credit"},{"title":"回復","icon":"rotate","href":"/ja/developer-resources/webhooks/intents/recovery"},{"sidebarTitle":"Payout","title":"Payout Webhooks","icon":"money-bill-transfer","href":"/ja/developer-resources/webhooks/intents/payout"}]},{"group":"Deploy to Cloud","icon":"rocket","pages":[{"title":"Vercel Functions","icon":"triangle","href":"/ja/developer-resources/webhooks/examples/vercel-example"},{"title":"Cloudflare Workers","icon":"cloud","href":"/ja/developer-resources/webhooks/examples/cloudflare-example"},{"title":"Supabase Edge Functions","icon":"bolt","href":"/ja/developer-resources/webhooks/examples/supabase-example"},{"title":"Netlify Functions","icon":"diamond","href":"/ja/developer-resources/webhooks/examples/netlify-example"}]}]},{"group":"Testing \u0026 Demo Tools","icon":"flask","pages":[{"title":"テストモードとライブモード","icon":"toggle-on","href":"/ja/miscellaneous/test-mode-vs-live-mode"},{"title":"テストプロセス","icon":"flask","href":"/ja/miscellaneous/testing-process"},{"title":"Atlas Demo Product","icon":"palette","href":"/ja/features/atlas-demo-website"}]},{"group":"Boilerplates","icon":"box-open","pages":[{"sidebarTitle":"Expo","title":"Expo Boilerplate","icon":"https://mintlify.s3.us-west-1.amazonaws.com/dodopayments/images/logos/expo.svg","tag":"NEW","href":"/ja/developer-resources/expo-boilerplate"},{"sidebarTitle":"Supabase","title":"Supabase Boilerplate","icon":"https://mintlify.s3.us-west-1.amazonaws.com/dodopayments/images/logos/supabase.svg","href":"/ja/developer-resources/supabase-boilerplate"},{"sidebarTitle":"Figmaプラグイン","title":"Figmaプラグイン","icon":"https://mintlify.s3.us-west-1.amazonaws.com/dodopayments/images/logos/figma.svg","href":"/ja/integrations/figma-plugin"},{"sidebarTitle":"Next.js","title":"Next.js ミニマルボイラープレート","icon":"https://mintlify.s3.us-west-1.amazonaws.com/dodopayments/images/logos/nextjs.svg","href":"/ja/developer-resources/nextjs-boilerplate"},{"sidebarTitle":"Astro","title":"Astro Minimal Boilerplate","icon":"https://mintlify.s3.us-west-1.amazonaws.com/dodopayments/images/logos/astro.svg","href":"/ja/developer-resources/astro-boilerplate"},{"sidebarTitle":"FastAPI","title":"FastAPI ボイラープレート","icon":"https://mintlify.s3.us-west-1.amazonaws.com/dodopayments/images/logos/fastapi.svg","tag":"NEW","href":"/ja/developer-resources/fastapi-boilerplate"},{"sidebarTitle":"Go","title":"Go Boilerplate","icon":"golang","tag":"NEW","href":"/ja/developer-resources/go-boilerplate"}]},{"title":"Dodo CLI","icon":"terminal","tag":"NEW","href":"/ja/developer-resources/sdks/cli"},{"title":"Overlay Checkout","icon":"cart-shopping","href":"/ja/developer-resources/overlay-checkout"},{"title":"Inline Checkout","icon":"credit-card","href":"/ja/developer-resources/inline-checkout"},{"title":"Billing SDK","icon":"boxes-stacked","href":"/ja/developer-resources/billingsdk"},{"title":"Dodo Payments MCP Server","icon":"server","href":"/ja/developer-resources/mcp-server"},{"title":"Agent Skills","icon":"wand-magic-sparkles","href":"/ja/developer-resources/agent-skills"},{"sidebarTitle":"Database Sync","title":"データベースと同期","icon":"database","href":"/ja/developer-resources/dodo-sync"},{"sidebarTitle":"サブスクリプションの移行","title":"サブスクリプションを Dodo Payments に移行","icon":"file-import","href":"/ja/miscellaneous/subscription-migration"}]},{"group":"Merchant of Record","pages":[{"sidebarTitle":"MoRとは?","title":"はじめに","icon":"building-columns","href":"/ja/features/mor-introduction"},{"title":"MoR vs PG","icon":"scale-balanced","href":"/ja/features/mor-vs-pg"},{"title":"Merchant Acceptance 対象国","icon":"globe","href":"/ja/miscellaneous/accepted-countries-and-territories"},{"title":"レビューとモニタリングポリシー","icon":"magnifying-glass","href":"/ja/miscellaneous/review-monitoring-policy"},{"sidebarTitle":"App Store手数料の回避","title":"Dodo Paymentsを使用してApp StoreとPlay Storeの手数料を回避する","icon":"shield-check","href":"/ja/features/bypassing-app-store-fees"}]},{"group":"Miscellaneous","pages":[{"group":"Support Channels","icon":"headset","pages":[{"title":"ヘルプとサポート","icon":"headset","href":"/ja/miscellaneous/help-support"},{"title":"機能リクエストとロードマップ","icon":"lightbulb","href":"/ja/features/feature-request"}]},{"title":"モバイル \u0026 デスクトップアプリ","icon":"mobile","href":"/ja/features/mobile-app"},{"title":"セキュリティ報告ポリシー","icon":"shield","href":"/ja/miscellaneous/security-policy"}]}]},{"tab":"Guides","icon":"compass","pages":[{"title":"Guides","href":"/ja/developer-resources/integration-guide"}]},{"tab":"API Reference","icon":"rectangle-code","pages":[{"title":"API Reference","href":"/ja/api-reference/introduction"}]},{"tab":"External Integrations","icon":"plug","pages":[{"title":"External Integrations","href":"/ja/integrations/introduction"}]},{"tab":"Changelog","icon":"calendar-days","pages":[{"title":"Changelog","href":"/ja/changelog/introduction"}]},{"tab":"Community Projects","icon":"users","pages":[{"title":"Community Projects","href":"/ja/community/overview"}]}]},{"language":"ko","pages":[{"title":"ko","href":"/ko/features/entitlements/discord"}]},{"language":"pt-BR","pages":[{"title":"pt-BR","href":"/pt-BR/features/entitlements/discord"}]},{"language":"vi","pages":[{"title":"vi","href":"/vi/features/entitlements/discord"}]},{"language":"cn","pages":[{"title":"cn","href":"/cn/features/entitlements/discord"}]},{"language":"hi","pages":[{"title":"hi","href":"/hi/features/entitlements/discord"}]},{"language":"it","pages":[{"title":"it","href":"/it/features/entitlements/discord"}]},{"language":"sv","pages":[{"title":"sv","href":"/sv/features/entitlements/discord"}]}]},"basePath":"","title":"Discord Entitlement - Dodo Payments Documentation","buildId":"dpl_715YoAgvjTGBDdo8RtXmHKM22b5p","deploymentId":"dpl_715YoAgvjTGBDdo8RtXmHKM22b5p","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-vIkpUzVS.js","DynamicMarkdown-TAXIW2vN.js","zoom-image-lightbox-y00V8U6G.js","lightbox-handle-r17bVUz3.js"]}