Kotbo 4 min read
Discord ticket bot: a complete support ticket system
A ticket system gives every request on your server its own private space: the member clicks a button, a channel opens, staff answer, then the ticket closes with a transcript. Discord has nothing like it built in, so you need a bot. In Kotbo everything is set up on the Tickets page of the dashboard, and the everyday actions are also available with /ticket from the ticket channel
Included in every plan, with a 15-day trial and no credit card
What a Discord ticket bot is for
Without tickets, support runs through mods’ DMs or a public channel where everyone reads everyone else’s problems
- Each request is isolated: only the member and the staff see the conversation
- Nothing gets lost, a ticket has a status (open, claimed, closed, archived)
- Staff see at a glance who is handling what
- The transcript keeps a record in case of a dispute
What Discord offers without a bot
Nothing like it. Creating a private channel by hand for each request costs a mod time, and the permissions have to be set every time. A bot automates the channel creation, the permissions and the closing
Setting up tickets with Kotbo
Everything is set on dash.kotbo.fr, in the Tickets page. Staff can also answer requests there, without opening Discord
-
Pick the mode
A dedicated channel per ticket, a thread, or direct messages. A dedicated channel is the most common, a thread keeps your channel list tidy
-
Set the channels and the staff role
The category where tickets are filed, the logs channel, and the staff role that handles requests
-
Publish the panel
The message with the open button, in the channel of your choice. You set its title, description, button text and color
-
Add ticket types
Recruitment, report, question… Each type has its own name, emoji, category and staff role, and can ask the member up to five questions when opening
-
Test with your own account
Open a ticket as a member, answer as staff, close it, and check the transcript
Handling a ticket day to day
Inside a ticket channel, these commands replace clicking around. Option names are in French on every client
/ticket claim- Takes charge of the current ticket, so other mods know it’s handled
/ticket close- Closes the ticket. /ticket reopen brings it back
/ticket archive- Archives the ticket without deleting anything: the channel becomes read-only. /ticket unarchive takes it out of the archive
/ticket lock duree:<duration>- Protects the ticket from deletion for 7 days, 30 days, 90 days or permanently. A reason option logs why
/ticket add cible:<member or role>- Adds a member or a role to the ticket. /ticket remove takes them out, /ticket rename renames the channel
/ticket delete- Deletes the ticket along with its transcript
The real dashboard, on a demo server with fictional members. Click around, nothing gets sent
Settings that save time
Once the system is running, a few options spare staff from repeating the same moves
Macros
Pre-written replies staff insert in one click, with optional actions. Ideal for questions that keep coming back
Inactivity reminder
A ticket left without a reply for the number of hours you set gets a follow-up message, which you can write yourself
Satisfaction survey
On closing, the member rates the support and can leave a comment. Reviews can be reposted in a channel, with or without the author’s name
Types with their own team
A recruitment ticket can go to another category and another role than a support ticket
Deletion protection
Lock a sensitive ticket so a mod can’t delete it by mistake
Three common ticket mistakes
What makes ticket support fail is rarely technical
- Too many types from the start: begin with two or three and add more when the need shows up
- Nobody owns the ticket: use claiming so every ticket always has a named mod
- Tickets that linger: turn on the inactivity reminder to nudge the member, then close or archive promptly