Managing Support Tickets
The Support Ticket Management page (/admin-tickets) gives Admins and Owners a full view of every ticket submitted by users across all companies.
Access it from:
- Admin Portal → Support Tickets card, or
- Direct URL:
/admin-tickets
Role requirement
Only users with the Admin or Owner role can access /admin-tickets.
Overview
At the top of the page, four stat cards summarise the current ticket backlog:
| Card | Shows |
|---|---|
| Total | All tickets ever submitted |
| Open | New tickets awaiting review |
| In Progress | Tickets being actively worked |
| Resolved | Tickets that have been resolved |
Filtering and searching
Use the filter bar to narrow the list:
- Search — matches against ticket title, submitter name, or submitter email
- Status filter — All, Open, In Progress, Resolved, Closed
- Type filter — All, Bug Report, Feature Request, Question
Responding to a ticket
- Click any row in the ticket list to open the detail sheet on the right
- Review the full description and submitter details
- Update the Status dropdown to reflect current progress
- Optionally add Admin Notes — this message is visible to the user on their
/supportpage - Click Save Changes
The ticket list refreshes automatically after saving.
Ticket lifecycle
Open → In Progress → Resolved → Closed
- Use In Progress as soon as you start investigating
- Use Resolved when the fix is deployed or the question is answered
- Use Closed for tickets that are duplicates, out of scope, or won't be actioned
Priority guide
| Priority | Response target |
|---|---|
| High | Review within 1 business day |
| Medium | Review within 3 business days |
| Low | Best effort |
Data stored per ticket
Each ticket in Firestore (support_tickets collection) contains:
| Field | Type | Description |
|---|---|---|
id | string | Auto-generated document ID |
type | enum | bug / feature_request / question |
status | enum | open / in_progress / resolved / closed |
priority | enum | low / medium / high |
title | string | Short summary |
description | string | Full detail |
submittedBy | string | Firebase Auth UID |
submitterEmail | string | |
submitterName | string | |
companyId | string | Submitter's active company |
createdAt | Timestamp | |
updatedAt | Timestamp | Set on every status change |
adminNotes | string? | Visible to submitter |