Skip to main content
La entitlement de Discord añade un cliente de pago a tu servidor de Discord y puede asignarle un rol. El cliente conecta su cuenta de Discord después de que su suscripción se active o de que su pago único se complete correctamente. Cuando se revoca la concesión, por ejemplo, tras una cancelación o un reembolso, Dodo Payments elimina el rol y retira al cliente del servidor.

Qué se entrega

  • El cliente conecta su cuenta de Discord desde el Customer Portal. El correo de confirmación del pago marca la entitlement como Action Required y enlaza al portal.
  • Después de autorizar, el bot de Dodo Payments lo añade a tu servidor o encuentra su membresía existente y le asigna el rol que configuraste.
  • Si no eliges un rol, el cliente solo obtiene la membresía del servidor.
Úsala para comunidades de pago, beneficios para colaboradores y canales de acceso por niveles.

Conectar Discord

1

Open Entitlements

En el dashboard de Dodo Payments, ve a Entitlements y haz clic en + para iniciar una nueva entitlement.
2

Pick Discord

Elige Discord Access como integración. Si Discord todavía no está conectado para tu empresa, haz clic en Connect Discord.
Panel de nueva autorización solicitando al comerciante que conecte Discord

Connect Discord prompt before the OAuth handoff.

Discord se abre en una pestaña nueva. Inicia sesión, elige el servidor que quieres proteger y aprueba los permisos del bot en ese servidor: Manage Roles, Kick Members y Create Invite.
Pantalla de OAuth de Discord que pregunta a qué servidor añadir el bot de Dodo Payments

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

Pantalla de confirmación de permisos del bot de Discord

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

Cuando Discord redirige de vuelta, una página de confirmación muestra que el servidor está conectado.
Página de confirmación que indica que Discord Access se conectó correctamente

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

3

Pick a Server and Role

De vuelta en el dashboard, selecciona el Server que conectaste. Para asignar un rol al entregar, selecciónalo en Role. Para conceder únicamente la membresía del servidor, deja Role establecido en No specific role. Introduce un Name para la entitlement y haz clic en Create Entitlement.
Formulario New Entitlement - Discord Access con servidor conectado, selector de servidor, menú desplegable de roles y campo de nombre
4

Attach It to a Product

La entitlement se guarda y está disponible para asociarla a cualquier producto. Consulta Asociar entitlements a productos.

Flujo del cliente

  1. El cliente completa el checkout.
  2. Dodo Payments crea un grant en estado Pending. Dodo Payments intenta crear de inmediato una URL de autorización de Discord y la almacena en oauth_url. Si falla, oauth_url permanece en null hasta que el cliente inicia el flujo de aceptación.
  3. El correo electrónico de confirmación del pago muestra el entitlement como Acción requerida y enlaza al Customer Portal. En el portal, el cliente hace clic en Conectar en el entitlement.
  4. El cliente autoriza a Dodo Payments en Discord. El bot lo añade al servidor y le asigna el rol configurado, y el grant pasa a Delivered.
  5. Cuando se revoca el grant (se cancela, pausa, suspende o vence la suscripción, se reembolsa el pago único o revocas el grant), el bot elimina el rol y al cliente del servidor. El grant pasa a Revoked.
Un enlace de autorización caduca 30 minutos después de generarse. Si el cliente vuelve al Customer Portal después de ese tiempo, Dodo Payments genera un enlace nuevo. Si un cliente abandona tu servidor por su cuenta, Dodo Payments revoca su concesión con revocation_reason: platform_external.
Coloca el rol del bot de Dodo Payments above el rol que concedes. Discord no permite que un bot asigne un rol que esté al mismo nivel o por encima de su propio rol más alto. Los roles administrados, como los roles de bots e integraciones, no se pueden asignar.

Configuración necesaria

Crear mediante API

Webhooks

Suscríbete a los eventos de webhook entitlement_grant.* para realizar un seguimiento de las concesiones de Discord:
  • entitlement_grant.created se activa con status: "Pending". oauth_url puede contener ya la URL de autorización. Si es null, se completa cuando el cliente inicia el flujo de aceptación desde el Customer Portal.
  • entitlement_grant.delivered se activa cuando el cliente se une al servidor y se asigna el rol.
  • entitlement_grant.revoked se activa cuando se elimina el rol y el cliente se elimina del servidor.

Solución de problemas

La concesión permanece en Pending hasta que el cliente completa la autorización de Discord. Abre la entitlement en el dashboard y comprueba la concesión del cliente. Si todavía está en Pending, pídele al cliente que abra el Customer Portal y haga clic en Connect en la entitlement de Discord.
Asegúrate de que el bot de Dodo Payments siga en el servidor, tenga el permiso Gestionar roles y esté por encima del rol que se asignará. Si se elimina el bot del servidor, Dodo Payments revoca los grants pendientes y entregados del servidor. Volver a guardar el entitlement comprueba únicamente su configuración, no los permisos del bot. Después de corregir los permisos, pide al cliente que abra el Customer Portal y haga clic en Conectar en el entitlement de Discord para volver a intentar conceder el grant.
La revocación elimina el rol y retira al cliente del servidor. Si la concesión muestra Revoked pero el cliente sigue en el servidor, confirma que el bot aún tenga los permisos Manage Roles y Kick Members y esté por encima del rol. Si la aplicación de Discord del cliente todavía muestra el rol, pídele que la actualice. El estado del servidor es la fuente de verdad.
Última modificación el 26 de septiembre de 2026