Ticket System
Build a professional, multi-panel support system with custom ticket types, transcript exports, and full lifecycle management.
Kythia's ticket system is built for serious support operations. It supports multiple ticket panels, multiple ticket types per panel, a full interactive setup flow, auto-transcripts, and complete lifecycle management — all through beautiful, modern Discord UI.
How the System Works
Panel → Types → Users Click → Ticket Channel Created → Staff Manage → Close + Transcript
- Panels are the "opener" messages posted in a channel (e.g.,
#open-a-ticket). Each panel has a button that triggers the flow. - Types are the categories of tickets a panel can create (e.g., "Billing", "Bug Report", "Partnership"). Each type can have its own dedicated staff role.
- When a user clicks the panel button, they pick a type and submit. A private channel is created with just them and the relevant staff.
Panel Management (Admin)
Creating a Panel
/ticket panel create
This launches a fully interactive, multi-step modal flow right inside Discord. Kythia asks you to configure:
- Panel title and description
- Banner image (uses
ticketBannerImagefrom your config as the default) - Staff role to be notified
- The category where ticket channels will be created
No command arguments — everything is done through Discord modals.
Reloading a Panel
/ticket panel reload
If you need to edit an existing panel's settings (title, banner, etc.), use this to re-display the setup flow and overwrite the previous config.
Deleting a Panel
/ticket panel delete
Select a panel to permanently remove it. Active tickets opened through that panel are not affected.
Ticket Type Management
Each panel can have many ticket types. Types allow users to categorize their request before submitting.
Creating a Ticket Type
/ticket type create
Launches a modal asking for:
- Type name (e.g.,
Bug Report) - A short emoji or description shown in the selection menu
Deleting a Ticket Type
/ticket type delete
Remove a type from a panel. Existing tickets of that type remain open.
Active Ticket Management
These commands are used inside an open ticket channel.
Adding a Member
/ticket add user: @User
Grants a user access to view and participate in a specific ticket channel. Useful for adding a specialist or senior staff member to a complex case.
Removing a Member
/ticket remove user: @User
Revokes a user's access to the ticket channel.
Closing a Ticket
/ticket close
Closes the ticket. Kythia automatically:
- Generates a complete HTML transcript of the conversation.
- Sends the transcript to the configured log channel (if set).
- DMs the transcript link to the user who opened the ticket.
- Archives or deletes the ticket channel.
Exporting a Transcript
/ticket transcript
Manually generates and exports a full transcript of the current ticket channel at any time — even before closing. The transcript includes all messages, timestamps, attachments, and embeds formatted as a clean HTML file.
Configuration
ticket: {
active: true,
},
Customize the default banner image in the settings block:
settings: {
ticketBannerImage: 'https://your-cdn.com/ticket-banner.png',
},