Discord Validation Bot GTM Pro

Smart access automation for premium communities
Discord Validation Bot is an exclusive solution built for the GTM Pro community, the digital learning and performance ecosystem created by Danilo Borguetti, a leading authority in tagging, GA4 and the Meta Ads Conversions API.
Designed and implemented by Forcoder Desenvolvimento de Soluções, the system delivers a fully automated, secure student validation experience inside the community's official Discord.
💡 Overview
The bot connects the GTM Pro learning environment to the Discord server, ensuring that only active buyers and subscribers have access to the channels matching their products or plans.
Validation happens by email, the same one used at purchase, and is automatically cross-checked against the database hosted on Supabase, keeping all roles and permissions up to date.
The project combines automation, security and UX, resulting in a robust flow with no manual intervention at all.
⚙️ Project Structure
The system consists of two main environments:
1. Main Bot (Node.js + Discord.js)
Responsible for all interaction with Discord, the bot performs:
- Access validation via modal (purchase email).
- Automatic role assignment and removal according to products and subscriptions.
- Detailed activity logging in internal channels.
- Custom rotating presence (Watching / Listening / Playing).
- Periodic cron jobs to keep the server always in sync.
2. Database (Supabase)
Supabase acts as a secure backend, centralizing the data for:
- Sales (
sales): email, product, type (course, subscription, etc.) and expiration. - Products (
product): name, type and identifier. - Discord links (
discord_users): relationship betweendiscord_idand the validated email.
All communication happens through the Service Role Key, protected in environment variables (.env).
🧱 Technologies Used
| Layer | Technology |
|---|---|
| Backend | Node.js 20 |
| Framework | Discord.js v14 |
| Database | Supabase (PostgreSQL + Storage) |
| Scheduling | node-cron + cron-parser |
| Infrastructure | Docker + Docker Compose |
| Version control | Private GitHub (GTM Pro client) |
| Environment | .env with isolation and per-channel logs |
🚀 Key Features
- Automatic Validation: the user enters their email and the bot identifies the products they purchased.
- Cron Sync: the bot periodically checks for expired subscriptions and access.
- Interactive Messages: dynamic product catalog and action buttons such as “Verificar Acesso” (Verify Access) and “Sincronizar Agora” (Sync Now).
- Logs and Transparency: every action is recorded in a log channel for auditing and support.
- Admin Commands: internal panel in the commands channel with the
!prefix, including listing, reset and checks. - Rotating Presence: configurable phrases shown in the bot's status to reinforce the GTM Pro community identity.
🔐 Security and Best Practices
- Supabase integration via Service Role Key (no public exposure).
- Tokens, IDs and URLs fully encapsulated in
.env. - Restricted permissions on Discord (Manage Roles, Send Messages, Embed Links, etc.).
- Private logs for administration and auditing.
- “RESET” processes with double confirmation and execution logs.
- Compatibility with large servers (paginated REST usage).
📅 Automatic Maintenance (Cron Jobs)
An internal schedule periodically reviews all links and updates access according to purchase status and subscription validity:
- Adds roles when a valid sale is detected.
- Removes roles for expired products.
- Sends notifications via DM to the user (or to internal logs when DMs are closed).
- Shows a consolidated summary in the log channel.
🛠️ Development and Deploy
- Dockerized environment with hot-reload for local development.
- Simplified deploy via Docker Compose (production).
- Configurable timezone support (
TZ=America/Sao_Paulo). - Modularization in
src/index.jsandsrc/util/supabase.js. - Continuous updates with a controlled changelog.
🧾 Current Status
Initial phase completed ✅
Actively running on the official GTM Pro server, with stable logs, active validations and cron automatically reviewing access.
🧩 An Automation and Operational Intelligence Project
Discord Validation Bot represents the balance between software engineering and user experience, taking premium community management to a new level of automation.
With it, the GTM Pro team stays focused on content and student performance, while the bot handles all the logic of access, permissions and expirations.
