Pular para o conteúdo principal

Documentation Index

Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt

Use this file to discover all available pages before exploring further.

A titularidade do Discord adiciona um cliente pagante ao seu servidor (e, opcionalmente, atribui-lhes um papel) no momento em que sua assinatura se torna ativa ou quando sua compra única é confirmada. Cancelamentos, reembolsos e alterações de plano revogam o papel automaticamente.

O que é entregue

  • O cliente conecta sua conta Discord por meio de um link OAuth no e-mail de entrega ou portal do cliente.
  • Uma vez autorizado, o Dodo Payments os adiciona ao seu servidor (ou encontra sua associação existente) e atribui o papel que você configurou.
  • Se você não escolher um papel específico, apenas a associação ao servidor é concedida.
Esta integração é ideal para comunidades pagas, benefícios para apoiadores e canais de acesso por nível.

Conectar Discord

1

Open Entitlements

No painel do Dodo Payments, vá para Entitlements e clique em + para iniciar uma nova titularidade.
2

Pick Discord

Escolha Discord Access como a integração. Se você ainda não conectou o Discord para o seu negócio, será solicitado que Conecte o Discord.
Novo painel de titularidade solicitando ao comerciante para conectar o Discord
Ao clicar, o Discord será aberto em uma nova aba. Faça login, escolha o servidor que deseja proteger e confirme as permissões do bot (Gerenciar Papéis, Expulsar Membros, Criar Convite) nesse servidor.
Tela OAuth do Discord perguntando em qual servidor adicionar o bot do Dodo PaymentsTela de confirmação de permissões do bot do Discord
Quando o Discord redirecionar de volta, você verá uma confirmação de que o servidor está conectado.
Página de confirmação de conexão bem-sucedida do Acesso ao Discord
3

Pick a server and role

De volta ao painel, selecione o servidor (guilda) que você acabou de conectar. Opcionalmente escolha um papel para atribuir na entrega, ou deixe em branco para conceder apenas a associação ao servidor. Dê um nome à titularidade e clique em Criar Titularidade.
Nova Titularidade - Formulário de Acesso ao Discord com servidor conectado, seletor de servidor, dropdown de papéis e campo de nome
4

Save the entitlement

Salve a titularidade. Agora está disponível para anexar a qualquer produto.

Fluxo do cliente

  1. O cliente completa a compra.
  2. Dodo Payments cria uma concessão em pending status com um oauth_url apontando para o Discord.
  3. O cliente recebe um e-mail com um botão “Join the Discord” (o link OAuth). O link também está visível em seu portal do cliente.
  4. Após a autorização do cliente, o bot os adiciona ao servidor e atribui o papel configurado. A concessão muda para delivered.
  5. Se a assinatura for cancelada, pausada ou expirou, ou se o comerciante revogar manualmente, o bot remove o papel e a concessão muda para revoked.
Certifique-se de que o papel do bot do Dodo Payments esteja posicionado acima do papel que você concede. O Discord impede bots de atribuírem papéis com classificação mais alta que a deles.

Configuração necessária

CampoObrigatórioDescrição
guild_idSimID do servidor do Discord. O seletor do painel preenche isso para você.
role_idNãoO papel a ser atribuído na entrega. Omitir para acesso somente à associação ao servidor.

Criar via API

import DodoPayments from 'dodopayments';

const client = new DodoPayments({
  bearerToken: process.env['DODO_PAYMENTS_API_KEY'],
  environment: 'test_mode',
});

const entitlement = await client.entitlements.create({
  name: 'Patrons Discord Role',
  integration_type: 'discord',
  integration_config: {
    guild_id: '123456789012345678',
    role_id: '987654321098765432',
  },
});

Webhooks

Inscreva-se nos eventos do webhook entitlement_grant.* para acompanhar as concessões do Discord:
  • entitlement_grant.created é acionado com status: "pending" e um oauth_url para o cliente autorizar.
  • entitlement_grant.delivered é acionado assim que o papel é atribuído.
  • entitlement_grant.revoked é acionado quando o papel é removido.

Solução de problemas

A concessão está em pending até o cliente completar o fluxo OAuth. Verifique a lista de concessões da titularidade e confirme se eles clicaram no link OAuth. Reenvie o e-mail de entrega, se necessário.
Certifique-se de que o bot do Dodo Payments permaneça no servidor, tenha permissão Manage Roles e esteja posicionado acima do papel sendo atribuído. Re-salvar a titularidade re-executa a validação.
O Discord propaga remoções de papel imediatamente, mas o cliente local do Discord pode fazer cache. Eles devem reconectar ou atualizar; o estado no servidor está correto.
Last modified on May 14, 2026