Built in Service id tickets 25 commands 6 settings

Tickets

Members open a ticket from a panel button or a right-click on a message, answer an intake form if you want one, and land in a private channel with the right staff team already inside. Staff work it from Discord or from a live queue on the web. Every ticket ends with a transcript.

Turn it onDashboard, Services, Tickets, switch to Enabled
First stepRun setup
PlanEvery feature included for every server: unlimited ticket panels, unlimited canned responses

Set it up

Checked 2026-09-21 against the service source and the dashboard templates. The numbered steps are customer copy. The "Evidence" section at the end maps each step to source lines for the reviewer and is not part of the copy.

  1. Enable Tickets on the dashboard. Open the dashboard, choose the server, and switch Tickets to Enabled on the Services page. Until it is on, every ticket command answers "❌ Tickets is not enabled for this server." and panel buttons answer "The Tickets service is not enabled."

  2. Pick the fast path or the manual path. While the server has no panel, the Tickets Overview page shows a "Run auto-setup" button. It leads to the Ticket Setup page, whose "Run auto-setup" creates two categories, two channels, one staff team and one panel in one go: a "Support Tickets" category and a "Closed Tickets" category hidden from @everyone; an #open-a-ticket channel everyone can see but not type in; a #ticket-logs channel hidden from @everyone, saved as the ticket log channel; a "Support Staff" team built from roles whose names contain mod, admin, staff, moderator, support or helper and that hold kick, ban, manage messages or manage server; and a "General Support" panel (title "Need Help?", button "Open Ticket") posted straight into #open-a-ticket. The bot needs the Manage Channels permission. Running it again only creates what is missing. If you take this path, continue at step 7.

  3. Build a panel on the Panels page ("+ New Panel"). A panel is what members click. It holds a name and slug; the embed title and description members see; the button label, emoji and style; the channel mode, a private channel per ticket or a thread under a chosen parent channel; a name template for the channel name (default "ticket-{number}") and a title template for the queue; the open tickets and closed tickets categories; a welcome message shown on the ticket card; a staff team; an intake form; an SLA policy; an open ticket limit for the panel and a cooldown between tickets. Extra buttons and categories can each override the form, team, role or categories.

  4. Create a staff team on the Teams page and pick it in the panel's "Staff Team" field. Add users or roles, and set a ping role if the team should be pinged on new tickets. Team members get access to every ticket channel opened from that panel, count as staff for claim, close, note and the other staff commands, and can be assigned tickets automatically. Without a team, roles with Manage Server are given access instead, so tickets are never invisible to staff.

  5. Put the panel in Discord. Run /tickets setup and pick the panel: the bot creates a "🎫 <panel name>" category and a "<panel slug>-tickets" channel where members can view but not type, and posts the panel there. Or run /tickets panel with the panel and an existing text or announcement channel; the bot first checks that it has View Channel, Send Messages and Embed Links there. Both commands need Manage Server.

  6. Set the ticket log channel on the Settings page. Pick a staff-only channel under "Log channel". When a ticket closes the bot posts the transcript embed there, plus any files kept from the ticket. Without it, transcripts still reach the dashboard, but staff get no Discord post. While on the page, check "Max open tickets per user" (default 1), "Allow users to close their own tickets" (on by default), and the "Member notifications" switches for DMs on open, claim and staff reply (all off until you turn them on).

  7. Open a first ticket yourself. Click the panel button. The bot checks, in order, the blacklist, support hours, the panel's cooldown, the panel's open limit, the daily limit and your open ticket limit; members with Manage Server skip the hours check. If the panel has categories, a private picker asks "Select a category to open your ticket:"; if it has a form, the form opens. Then a private channel is created under the open tickets category, visible only to you, the bot and the staff team, and the bot posts a message that mentions you with the ticket card and its Claim, Close and Note buttons. Up to three matching help articles may follow. You get a private confirmation, "✅ Your ticket has been created! Head to #channel", which disappears after the confirmation delay (default 5 seconds) because "Auto-clean intake messages" is on by default.

  8. Work the ticket as staff. Claim it with the Claim button or /ticket claim, reply in the channel, add private notes with /ticket note, and close it with the Close button or /ticket close. Staff need the ticket claimed first; the opener does not. The close form takes an optional reason.

  9. Find the results. The transcript of every closed ticket is on the dashboard Transcripts page, described there as the archive of transcripts from /ticket transcript or ticket close. The ticket log channel receives the transcript embed and the files. The member receives a rating DM with five stars, unless they ran /ticket dms off. Ratings, volumes and response times appear on the Analytics page, and open tickets are worked from the Queue page.

1 optional features with their own switch
  • Ticket log channel: ticket log

Cómo funciona

  1. Run setup. The wizard creates the channels, builds a Support Staff team from your moderator roles and posts a panel.
  2. A member opens a ticket. They click a panel button or right-click a message. A category picker and an intake form can come first.
  3. Staff work it. In the private channel or on the dashboard: claim, reply, note, set priority, transfer. The status follows the conversation on its own.
  4. It closes with a record. Close with a reason, or let inactivity do it. A transcript is saved, the member can rate the help, and the channel is removed after your retention period.

Permissions the bot needs

Generated

The invite link grants these. If one is missing the service page in the dashboard shows a re-grant banner, and the affected commands say what they cannot do instead of failing silently.

Manage ChannelsView ChannelSend MessagesEmbed LinksRead Message HistoryManage RolesManage ThreadsCreate Private ThreadsSend Messages in Threads

What is included

GeneratedSee pricing

Every Tickets feature is included for every server, on the shared bot and on custom bots. A subscription adds a custom bot identity and marketplace access, not features here.

FunciónIncluded
Overview
Ticket Queue
Ticket Detail
Panel Builder
Staff Teams
Intake Forms
Transcripts
Ticket Analytics
Canned Responses
Settings & SLA
Límites
Ticket PanelsUnlimited
Canned ResponsesUnlimited

Comandos

GeneratedEvery command in detail
comandosQué hace estoWho by default
/kb
/kb searchSearch this server's help articlesEveryone
/kb browseBrowse this server's help articles by categoryEveryone
/ticket
/ticket claimClaim the current ticketModerator roles
/ticket closeClose the current ticketModerator roles
/ticket reopenReopen the current ticketModerator roles
/ticket noteAdd an internal staff noteModerator roles
/ticket dmsChoose whether this server's ticket updates reach you by DMEveryone
/ticket respondPost one of your server's canned responses in this ticketModerator roles
/ticket prioritySet ticket priorityModerator roles
/ticket assignAssign ticket to a staff memberModerator roles
/ticket statusShow this ticket's current statusEveryone
/ticket renameRename this ticketModerator roles
/ticket addAdd a user to this ticketModerator roles
/ticket removeRemove a user from this ticketModerator roles
/ticket transferTransfer this ticket to another teamModerator roles
/ticket closerequestRequest ticket close with a countdownModerator roles
/ticket transcriptGenerate a transcript for this ticketModerator roles
/ticket surveyRate your support experienceEveryone
/tickets
/tickets panelSend a panel embed to a channelServer managers
/tickets blacklist addBlock a member or a role from opening ticketsServer managers
/tickets blacklist removeLet a blocked member or role open tickets againServer managers
/tickets blacklist listShow who is blocked from opening ticketsServer managers
/tickets searchSearch tickets by keyword or numberModerator roles
/tickets setupAuto-create Discord channels for a ticket panelServer managers
Start ticket
Start ticketRight-click a message and pick Apps, then Start ticket.Moderator roles

Everything it does

Panels and entry points

A panel is the message with the buttons. You can run several, each with its own rules.

Three layouts per panel. A private channel, a private thread, or a form that goes to a review queue with no channel at all.
Up to 25 buttons on a panel. Each button has its own label, emoji and style, and can override the form, team, role, category and channel name.
Nested categories. A dropdown menu up to 10 levels deep, and any level can override the routing and the form.
Channel names from a template. Use {number}, {panel}, {username}, {button} and {category}. Ticket titles can also use {subcategory}.
Start a ticket from a message. Right-click any message, choose Apps, then Start ticket. The message is quoted, and you decide whether everyone, staff or only Manage Server can use it.
Applications with a review queue. Form mode posts the answers to a staff channel with Accept and Reject buttons, an optional role on accept and a DM for each outcome.
Limits per panel and per member. Cap open tickets per panel, add a cooldown between a member's tickets, and set a per-member cap and a daily cap for the whole server, with roles that bypass the counting.

Intake forms

Ask the questions up front so the first staff reply is useful.

Eight field types. Short text, paragraph, number, date, dropdown, multi-select, yes or no, and section headers.
Native Discord forms, plus steps. Up to five text fields open as a Discord modal. Dropdowns and toggles come first as short select steps, each with a cancel button.
Conditional fields. Show a field only when another answer equals, contains or has a value.
Prefilled from Discord. Username, display name, join date, roles, booster status and more, shown editable, read-only or hidden.

Working a ticket

Most of the bookkeeping happens without anyone touching a status.

Six statuses that track themselves. Open, claimed, awaiting user, awaiting staff, close requested and closed. A member's message flips it to awaiting staff, a reply flips it back, and the first reply time is recorded for the SLA.
Claim, priority, notes. Claim or unclaim with a button or a command, set low, normal, high or urgent, and leave internal notes members never see.
Close request with a countdown. Ask to close with a countdown, 24 hours by default. If the member replies, the countdown cancels.
Move and reshape. Add or remove a participant, rename the channel, or transfer the ticket to another team, which re-permissions the channel and pings that team.
An Awaiting Reply category. Tickets waiting on the member can move to their own category and come back when they answer.
Tidy channels. The category picker and confirmation messages clear themselves after a delay you set, up to 30 seconds, so the panel stays at the top.

Teams, hours and access

Who answers, when, and who is not allowed to ask.

Staff teams. Each team has a ping role, members added by user or role, and an assignment mode: manual, round-robin or least loaded. Each member's open workload shows next to their name.
Support hours. A daily window per weekday, roles that bypass it, and a custom closed message. The hours follow the server timezone set on the Bot page unless you give them a zone of their own.
A blocklist. Block a member or role from opening tickets, with a reason only staff see.
Member DMs, opt-in. Three notifications, opened, claimed and staff replied, each a switch. Members can turn all of them off with /ticket dms off.

Knowledge base and canned responses

Answer the common questions before a ticket is even needed.

Staff-written articles. Title, body up to 4,000 characters, keywords and categories, with drafts and view counts.
Search from Discord. /kb search returns the top five matches and /kb browse lists a category. Open to everyone.
Suggested on open. When a ticket opens, up to three matching articles are posted right after the welcome message.
Canned responses. Reusable replies grouped by category, with a use counter, one-click copy on the dashboard, and /ticket respond to post one as the bot.

Transcripts, ratings and the web chat

The record of each ticket, and the ways staff can work it without opening Discord.

A transcript for every ticket. An HTML transcript styled like Discord, with avatars, date dividers, links and attachment chips, kept in an archive you can view or download as HTML or plain text.
Attachments kept. Up to 10 files and 8 MB per ticket travel with the transcript, and can be DMed to the member on close.
Star ratings. A 1 to 5 star survey by DM when a ticket closes, with an optional written comment. Members can also rate with /ticket survey.
Reply from the web. The ticket page mirrors the Discord channel. Staff send, edit and delete their own messages there and attach files up to 8 MB.

Backup and reuse

Build the setup once and carry it to the next server.

Share codes. Snapshot panels, buttons, categories, forms, teams, SLA policies, canned responses and the knowledge base into a code like TKT-XXXXX-XXXXX, or start from one of the platform's ready-made templates.
JSON export and import. Up to 2 MB, as an alternative to codes.
Imports only add. Nothing is overwritten or deleted. You map the source server's channels, roles and users to yours first, and imported panels stay unpublished until you post them.
No IDs leak. Exports strip channel, role and user IDs, so a code is safe to hand to another server.

In the dashboard

Overview Open, awaiting, mine and closed tiles, tickets at SLA risk, tickets claimed by you, recent activity and a command reference.
Queue Every ticket, filtered by status, priority, assignee, team, category and opened date, with bulk actions.
Ticket detail The details, the live chat mirror, priority, team, staff notes and the close reason.
Panels Appearance, ticket setup with the three layouts and name templates, limits and cooldowns, categories for open, closed and awaiting tickets, the review channel for form mode, routing and form, the category tree editor, and publish to Discord.
Teams Create teams with a ping role, an assignment mode and members by user or role, with each member's workload.
Forms The field builder: label, type, required, placeholder, help text, number ranges, choices, prefill source and visibility, and conditions. Plus embed colour, header image, footer and the confirmation message.
Responses and knowledge base Canned responses with categories, and articles with keywords, categories, drafts and the suggest-on-open switch.
Settings Log channel, per-member and daily caps, bypass roles, auto-close on leave, allow members to close, intake cleanup delay, inactivity and countdown hours, closed channel retention, DM transcript on close, start a ticket from a message, member notifications, support hours in the server timezone or one of their own, the blocklist, SLA policies with first response and resolution minutes and a breach role, and a data purge with typed confirmation.
Backup and Templates Generate or apply share codes, browse platform templates, and export or import JSON, with the channel and role remap screen on import.
Analytics Open and closed counts, average first response, resolution and rating, seven-day volume, SLA breaches, feedback rate, one-touch resolution, auto-closed count, volume by panel, staff performance, peak hours, close reasons, a per-button breakdown, and CSV export.
Transcripts The archive, with view and download as HTML or plain text.
Setup The one-click wizard and its status, with re-run. If the bot can no longer see an existing Support Tickets or Closed Tickets category, the wizard says so and creates new ones instead of failing.

Configuración

GeneratedAll 6 settings
Ticket log channel A staff channel where the bot posts when a ticket closes: the transcript embed (creator, status, priority, close reason, who closed it, staff notes, intake answers), or a close summary for closes made from the dashboard or by the automatic close, plus any files kept from the ticket. Nothing is posted when a ticket opens or is claimed. Transcripts are saved to the Transcripts page whether or not this is set. No default.
Open tickets per member How many tickets one member can have open at the same time across all panels.
Close when the opener leaves Closes a member's open tickets automatically when they leave the server.
Members can close their own tickets Lets the member who opened a ticket close it, with the Close button or /ticket close. The Close button is always shown; with this off the opener's close is refused with "You don't have permission to close this ticket." and only staff can close. Staff still need the ticket claimed first. On by default.
Tidy the intake channel After a ticket opens, removes the private prompts the member saw in the panel channel: the category picker and the "ticket created" confirmation. Only that member ever saw them, and the panel message itself is never touched. On by default.
Confirmation delay Seconds the "ticket created" confirmation stays visible before the tidy-up removes it, from 0 (at once) to 30. Default 5. Only applies while "Auto-clean intake messages" is on.

Runs on its own

SLA watch every 5 minutes. Staff get one warning 30 minutes before a breach, and the policy's breach role is pinged when it happens.
Inactivity to close. A ticket idle past your limit gets a close request with a countdown of 1 to 168 hours. Any member reply cancels it.
Auto-close every 2 minutes. Due close requests are carried out, an auto-closed notice is posted and a transcript archived.
Channel retention. About once an hour, channels of tickets closed longer than your retention period, 7 days by default, are deleted after a transcript is captured. Set 0 to keep them forever.
Orphan repair. A ticket channel deleted by hand closes its ticket, so the member's open-ticket count is freed.
Close on leave. Optionally close a member's open tickets when they leave the server.

Límites

WhatValorNotas
Buttons per panel25Discord's limit for one message.
Category menu depth10 levels
Text fields per form5Discord's modal limit. Dropdowns and toggles are asked as steps before it.
Open tickets per member1 to 20Default 1. Bypass roles skip the count.
Tickets per member per day0 to 1000 turns the daily cap off.
Open tickets per panel0 to 5000 means unlimited.
Cooldown between a member's ticketsup to 7 daysPer panel.
Attachments per ticket10 files, 8 MBKept with the transcript.
Inactivity before a close request0 to 720 hours0 turns it off.
Close countdown1 to 168 hoursDefault 24.
Closed channel retention0 to 365 daysDefault 7. 0 keeps channels forever.
Intake cleanup delay0 to 30 sDefault 5.
SLA warning30 minutes before breach
Config export2 MB JSONUp to 20 panels, 20 forms, 25 teams, 10 SLA policies, 200 canned responses and 500 articles.

What it watches

Generated

The Discord events Tickets reacts to while it is enabled. It does not read history from before it was turned on.

Channel deletionsMembers leavingNew messages

Safety

Fails closed. If the bot cannot hide a new ticket channel from everyone, it refuses to create the channel rather than open a public one.
Who counts as staff. Manage Server, membership of the ticket's team, or a route role granted when the ticket opened.
Least privilege. Channel permissions the bot writes are trimmed to what it holds, so a bot with fewer permissions still creates the channel.
Purge is deliberate. Deleting old tickets removes records, transcripts, notes and ratings but never panels, teams, forms, responses or SLA policies, and needs a typed confirmation.
DM opt-out is respected everywhere. /ticket dms off stops the opened, claimed and replied DMs and the rating survey for that member.
A transcript before every deletion. Retention cleanup captures a transcript before it removes a channel, so a short retention never destroys history.
Every action is logged. Opened, claimed, closed, reopened, priority, assignment, renames, participants, transfers, form decisions, blocklist changes, SLA events and auto-closes all write to the audit log.

What it does not do

  • The web chat mirror refreshes by polling, not a live socket.
  • One breach ping per SLA policy. There is no multi-step escalation chain.
  • Text channels and threads only. No voice or video tickets.
  • The knowledge base is searched from Discord. There is no public web help centre.
  • No rule engine beyond category routing and team assignment.
  • No email or SMS channel.
  • One claimer per ticket. Adding a member grants access but is not a claim.

Preguntas

Do tickets use channels or threads?

Your choice per panel: a private channel, which is the default, a private thread, or no channel at all for application-style forms that go to a review queue.

Can members open a ticket from a message?

Yes. Right-click any message, choose Apps, then Start ticket. The message is quoted in the new ticket, and you choose who may use it.

What happens to closed tickets?

Each one gets an HTML transcript. The channel is deleted after the retention period you set, 7 days by default, or kept forever with 0, and a transcript is captured first.

Can staff reply without opening Discord?

Yes. The ticket page on the dashboard mirrors the channel. Staff can send, edit and delete their messages there and attach files up to 8 MB.

Which timezone do support hours use?

The server timezone from the Bot settings page, which the other services follow too. Give the hours a zone of their own only if your support team keeps different hours from the server.

How do I move my setup to another server?

Generate a share code or a JSON export from Backup and Templates, apply it on the other server, and map channels and roles on the confirm screen. Imports only add, never overwrite.

Will members get too many DMs?

Three DMs exist, opened, claimed and staff replied, and each is a server-side switch. Any member can run /ticket dms off to stop all of them, including the rating survey.

YourBot docs Reference tables are generated from the code that is running. Ask in Discord Suggest a correction