Skip to main content
O entitlement do Discord adiciona um cliente pagante ao seu servidor do Discord e pode atribuir uma função a ele. O cliente conecta a conta do Discord depois que a assinatura é ativada ou o pagamento único é aprovado. Quando o grant é revogado, por exemplo, após um cancelamento ou reembolso, Dodo Payments remove a função e remove o cliente do servidor.

O que é entregue

  • O cliente conecta a conta do Discord pelo Customer Portal. O e-mail de confirmação do pagamento marca o entitlement como Action Required e inclui um link para o portal.
  • Depois que o cliente autoriza, o bot do Dodo Payments o adiciona ao seu servidor ou encontra a associação existente e atribui a função que você configurou.
  • Se você não escolher uma função, o cliente recebe apenas a associação ao servidor.
Use para comunidades pagas, benefícios para apoiadores e canais de acesso por níveis.

Conectar Discord

1

Open Entitlements

No dashboard do Dodo Payments, acesse Entitlements e clique em + para iniciar um novo entitlement.
2

Pick Discord

Escolha Discord Access como integração. Se o Discord ainda não estiver conectado à sua empresa, clique em Connect Discord.
Novo painel de titularidade solicitando ao comerciante para conectar o Discord

Connect Discord prompt before the OAuth handoff.

O Discord será aberto em uma nova aba. Entre, escolha o servidor que deseja proteger e aprove as permissões do bot nesse servidor: Manage Roles, Kick Members e Create Invite.
Tela do OAuth do Discord perguntando a qual servidor adicionar o bot do Dodo Payments

Discord OAuth: pick the server to add the bot to.

Tela de confirmação das permissões do bot do Discord

Discord OAuth: confirm the bot's permissions on the server.

Quando o Discord redirecionar de volta, uma página de confirmação mostrará que o servidor está conectado.
Página de confirmação de conexão bem-sucedida do Discord Access

Server connected. Return to the Dodo Payments dashboard to continue.

3

Pick a Server and Role

De volta ao dashboard, selecione o Server que você conectou. Para atribuir uma função na entrega, selecione-a em Role. Para conceder apenas a associação ao servidor, mantenha Role definido como No specific role. Insira um Name para o entitlement e clique em Create Entitlement.
Formulário New Entitlement - Discord Access com servidor conectado, seletor de servidor, menu suspenso de funções e campo de nome
4

Attach It to a Product

O entitlement foi salvo e está disponível para ser associado a qualquer produto. Consulte Associar Entitlements a produtos.

Fluxo do cliente

  1. O cliente conclui o checkout.
  2. Dodo Payments cria uma concessão com o status Pending. Dodo Payments tenta criar imediatamente uma URL de autorização do Discord e a armazena em oauth_url. Se isso falhar, oauth_url permanece como null até que o cliente inicie o fluxo de aceitação.
  3. O e-mail de confirmação do pagamento lista o benefício como Ação necessária e inclui um link para o Customer Portal. No portal, o cliente clica em Conectar no benefício.
  4. O cliente autoriza Dodo Payments no Discord. O bot o adiciona ao servidor e atribui a função configurada, e a concessão muda para Delivered.
  5. Quando a concessão é revogada (a assinatura é cancelada, pausada, colocada em espera ou expira, o pagamento único é reembolsado ou você revoga a concessão), o bot remove a função e remove o cliente do servidor. A concessão muda para Revoked.
Um link de autorização expira 30 minutos após ser gerado. Se o cliente retornar ao Customer Portal depois disso, Dodo Payments gerará um novo link. Se um cliente sair do seu servidor por conta própria, Dodo Payments revogará o grant com revocation_reason: platform_external.
Coloque a função do bot do Dodo Payments acima da função que você concede. O Discord não permite que um bot atribua uma função no mesmo nível ou acima da sua própria função mais alta. Funções gerenciadas, como funções de bots e integrações, não podem ser atribuídas.

Configuração necessária

Criar via API

Webhooks

Inscreva-se nos eventos de webhook entitlement_grant.* para acompanhar os grants do Discord:
  • entitlement_grant.created é acionado com status: "Pending". oauth_url pode já conter a URL de autorização. Se for null, ele será preenchido assim que o cliente iniciar o fluxo de aceitação pelo Customer Portal.
  • entitlement_grant.delivered é acionado assim que o cliente entra no servidor e a função é atribuída.
  • entitlement_grant.revoked é acionado quando a função é removida e o cliente é removido do servidor.

Solução de problemas

O grant permanece Pending até que o cliente conclua a autorização do Discord. Abra o entitlement no dashboard e verifique o grant do cliente. Se ele ainda estiver Pending, peça ao cliente para abrir o Customer Portal e clicar em Connect no entitlement do Discord.
Verifique se o bot da Dodo Payments ainda está no servidor, se tem a permissão Gerenciar funções e se está acima da função que será atribuída. Se o bot for removido do servidor, Dodo Payments revogará as concessões pendentes e entregues do servidor. Salvar novamente o benefício verifica apenas as configurações dele, não as permissões do bot. Depois de corrigir as permissões, peça ao cliente para abrir o Customer Portal e clicar em Conectar no benefício do Discord para tentar conceder novamente.
A revogação remove a função e o cliente do servidor. Se o grant mostrar Revoked, mas o cliente ainda estiver no servidor, confirme se o bot ainda tem as permissões Manage Roles e Kick Members e se está acima da função. Se o aplicativo do Discord do cliente ainda mostrar a função, peça que ele atualize o aplicativo. O estado no servidor é a fonte de verdade.
Última modificação em 26 de setembro de 2026