Set Up a Discord Ticket System — Panels, SLAs & Transcripts | TeraOne 2026
Multi-type tickets with panels, claim/assign, internal notes, SLAs, hosted transcripts with full-text search, and seven analytics KPIs — entirely free.
Ticket System: A support workflow that actually works
Classic Discord ticket bots are usually either too simple (one channel, one button, done) or too half-finished (no SLA, no transcript viewer, no analytics). The TeraOne Ticket System closes the gap: multi-type tickets with per-type config, hosted transcripts with full-text search, SLA tracking, and 7 analytics KPIs.
What it does
- Multi-type & multi-panel — any number of ticket types per server, any number of panels (buttons or dropdown). Optional pre-open form with up to 5 fields per type.
- Channel-per-ticket with auto-overflow — every ticket gets its own channel. When the primary category fills up, an overflow category auto-spawns. Empty categories are cleaned up later.
- 10 workflow features — claim, assign, priority, tags, internal notes (via private threads), transfer, SLA, add-user, rename, auto-pin live summary. All toggleable per type.
- Anti-spam — cooldown, max-open per user, manual + auto blacklist, anti-alt integration. All 5 on by default.
- Transcripts with web viewer — HTML attachment + hosted web viewer with full-text search, filter by author/role/kind, deep-link to message timestamps, signed URLs with expiry, attachment mirror. Plus JSON export.
- SLA with escalation — per type and priority: first-response and resolution minutes, escalation chain
claimer → mod role → lead role. Violations logged. - Auto-close — idle warn → auto-close after grace period. Supporters can pause.
- Close flow with CSAT — confirm + reason (min 30 chars for staff), archive stage with 24h grace, re-open possible, optional CSAT rating, opener self-close.
- 7 analytics KPIs — volume trend, first-response time, resolution time, supporter leaderboard, category breakdown, heatmap, repeat-opener rate.
- i18n — complete DE + EN.
How to set it up
- Dashboard → Tickets → Setup — pick the primary category, set the mod-log channel.
- Create types — e.g.
Support,Bug Report,Complaint. Per type: staff roles, welcome embed, workflow toggles, SLA matrix. - Deploy a panel — title, description, display type (buttons or dropdown), assign types, post to a channel.
- Fill tags & blacklist.
- Optionally enable the anti-alt integration — users in quarantine can't open tickets.
- Watch the Live tab, monitor the Analytics tab.
More in the docs.
Tips for better results
- Pre-open form with 2–3 fields — the sweet spot. 0 = spam-prone, 5 = drop-off too high.
- Keep SLAs realistic — 15 min first response sounds nice but is impossible at 100+-server scale. 1 h and keeping it is better.
- Transcripts as a knowledge base — hosted viewers have full-text search. For repeat issues, hand out the link instead of re-explaining.
FAQ
How many ticket types can I create? Unlimited per guild. The Discord channel cap (500 per guild) is the only hard limit; the ticket system checks before every open.
Do transcripts survive bot restarts? Yes. Transcripts are finalized in a durable queue (BullMQ) and written to a persistent volume. A bot restart interrupts nothing.
Can I take the system fully offline? Yes, master toggle per panel and global module toggle. Existing channels remain, new tickets are rejected.
Need help? Join our Discord server.