Discord Validation Bot GTM Pro

Automatización inteligente de accesos para comunidades premium
Discord Validation Bot es una solución exclusiva desarrollada para la comunidad GTM Pro, el ecosistema de enseñanza y performance digital creado por Danilo Borguetti, referente en etiquetado (tagging), GA4 y la API de Conversiones de Meta Ads.
Diseñado e implementado por Forcoder Desenvolvimento de Soluções, el sistema ofrece una experiencia totalmente automatizada y segura de validación de alumnos dentro del Discord oficial de la comunidad.
💡 Visión general
El bot conecta el entorno de enseñanza de GTM Pro con el servidor de Discord, garantizando que solo compradores y suscriptores activos tengan acceso a los canales correspondientes a sus productos o planes.
La validación se hace por correo electrónico, el mismo usado en la compra, y se cruza automáticamente con la base de datos alojada en Supabase, manteniendo todos los roles y permisos siempre actualizados.
El proyecto combina automatización, seguridad y UX, dando como resultado un flujo robusto y totalmente sin intervención manual.
⚙️ Estructura del proyecto
El sistema se compone de dos entornos principales:
1. Bot principal (Node.js + Discord.js)
Responsable de toda la interacción con Discord, el bot ejecuta:
- Validación de acceso mediante modal (correo de compra).
- Asignación y remoción automática de roles según productos y suscripciones.
- Registro detallado de logs de actividad en canales internos.
- Presencia rotativa personalizada (Watching / Listening / Playing).
- Ejecución periódica de cron jobs para mantener el servidor siempre sincronizado.
2. Base de datos (Supabase)
Supabase actúa como backend seguro, centralizando los datos de:
- Ventas (
sales): correo, producto, tipo (curso, suscripción, etc.) y vigencia. - Productos (
product): nombre, tipo e identificador. - Vínculos de Discord (
discord_users): relación entrediscord_idy el correo validado.
Toda la comunicación ocurre mediante la Service Role Key, protegida en variables de entorno (.env).
🧱 Tecnologías utilizadas
| Capa | Tecnología |
|---|---|
| Backend | Node.js 20 |
| Framework | Discord.js v14 |
| Base de datos | Supabase (PostgreSQL + Storage) |
| Programación de tareas | node-cron + cron-parser |
| Infraestructura | Docker + Docker Compose |
| Control de versiones | GitHub privado (cliente GTM Pro) |
| Entorno | .env con aislamiento y logs por canal |
🚀 Funcionalidades principales
- Validación automática: el usuario ingresa su correo y el bot identifica los productos adquiridos.
- Sincronización por cron: el bot verifica periódicamente suscripciones y accesos vencidos.
- Mensajes interactivos: catálogo dinámico de productos y botones de acción como “Verificar Acesso” y “Sincronizar Agora”.
- Logs y transparencia: toda acción se registra en un canal de logs para auditoría y soporte.
- Comandos administrativos: panel interno en el canal de comandos con prefijo
!, que incluye listado, reset y verificaciones. - Presencia rotativa: frases configurables mostradas en el estado del bot para reforzar la identidad de la comunidad GTM Pro.
🔐 Seguridad y buenas prácticas
- Integración con Supabase mediante Service Role Key (sin exposición pública).
- Tokens, IDs y URL totalmente encapsulados en
.env. - Permisos restringidos en Discord (Manage Roles, Send Messages, Embed Links, etc.).
- Logs privados para administración y auditoría.
- Procesos de “RESET” con doble confirmación y logs de ejecución.
- Compatibilidad con servidores grandes (uso de REST paginado).
📅 Mantenimiento automático (cron jobs)
Una programación interna revisa periódicamente todos los vínculos y actualiza el acceso según el estado de la compra y la vigencia de la suscripción:
- Agrega roles cuando se detecta una venta válida.
- Quita los roles de productos vencidos.
- Envía notificaciones por DM al usuario (o a los logs internos, cuando los DM están cerrados).
- Muestra un resumen consolidado en el canal de logs.
🛠️ Desarrollo y deploy
- Entorno dockerizado con hot-reload para desarrollo local.
- Deploy simplificado mediante Docker Compose (producción).
- Soporte de zona horaria configurable (
TZ=America/Sao_Paulo). - Modularización en
src/index.jsysrc/util/supabase.js. - Actualizaciones continuas con changelog controlado.
🧾 Estado actual
Fase inicial concluida ✅
En operación activa en el servidor oficial de GTM Pro, con logs estables, validaciones activas y cron revisando automáticamente los accesos.
🧩 Un proyecto de automatización e inteligencia operativa
Discord Validation Bot representa el equilibrio entre ingeniería de software y experiencia de usuario, llevando la gestión de comunidades premium a un nuevo nivel de automatización.
Con él, el equipo de GTM Pro mantiene el foco en el contenido y en el desempeño de los alumnos, mientras el bot se encarga de toda la lógica de accesos, permisos y vencimientos.
