Quick answer
To set up a ticketing system for a small business, decide which requests become tickets, create five to eight categories, add three or four priorities, keep statuses simple (open, in progress, waiting, resolved), give every ticket one owner, route tickets by category, set response and resolution targets, and keep customers updated. Start small, review after a month and only then add more rules.
Key takeaways
- A ticket is a customer request that cannot be closed in one reply. Not every chat needs to be a ticket.
- Keep the structure small: five to eight categories, three or four priorities and four statuses.
- Every ticket has exactly one owner, even when several people work on it.
- Open tickets from the conversation itself, so the history comes along and customers stay on their preferred channel.
- Review after a month and adjust. A simple system that people use beats a perfect one they avoid.
Most small businesses do not decide to "implement a ticketing system". They get there after a refund promised on WhatsApp is forgotten, an angry customer posts about it, and the owner asks how it happened. Nobody knew whose job it was.
This guide shows how to set up ticketing in a business with two to twenty people handling customers, such as a shop, clinic, repair business, school or service company. The examples use a Kisumu solar installation company, but the steps work for any business that turns customer requests into jobs.
Before you start
Gather the following:
- A list of request types from the last month of WhatsApp chats, emails and calls. Write down what customers asked for and what work it caused.
- Your team and their roles: who talks to customers, who does the work (technicians, stores, accounts), and who supervises.
- Your business hours and any promises you already make to customers, such as "installations within a week".
- A tool that connects tickets to conversations. Spreadsheets work for a week, then break down. A helpdesk linked to your inbox avoids copying details back and forth.
Step 1: Decide what becomes a ticket
Agree a simple rule: if a request cannot be fully handled within the conversation today, it becomes a ticket. Everything else stays as a normal chat.
For the Kisumu solar company, "what does a 3kW system cost?" stays a chat. "My inverter shows an error code" becomes a ticket, because a technician must diagnose it. "Please send last month's invoice" stays a chat if the agent can send it now, and becomes a ticket if accounts must prepare it.
This rule stops two common failures: tickets for everything (which slows the team down) and tickets for nothing (which is how promises get lost). If you are unsure where the line sits, our comparison of a helpdesk vs a shared inbox explains the difference.
Step 2: Create a short list of categories
Categories describe what kind of work a ticket is. They decide who handles it and what you report on. Five to eight is enough at the start.
For the solar installer:
- Installation booking
- Fault or repair
- Warranty claim
- Billing and payments
- Delivery of equipment
- Complaint
- Other
A retailer might use Order problem, Return or refund, Faulty product, Payment issue and Complaint instead. Avoid categories that overlap; if agents hesitate between two, merge them.
Step 3: Add priorities and simple statuses
Priorities tell the team what to do first; statuses tell everyone where the work stands.
Priorities (three or four levels):
| Priority | Solar company example |
|---|---|
| Urgent | System down at a clinic or business |
| High | Fault at a home, partial power |
| Normal | Installation booking, invoice query |
| Low | Feedback or general request |
Statuses (keep to four or five):
- Open: received, not yet started.
- In progress: someone is working on it.
- Waiting: waiting for the customer (a photo, an M-Pesa confirmation code, site access) or a supplier.
- Resolved: done and confirmed with the customer.
Long status lists like "Pending review by technician level 2" look thorough but rarely survive a busy month.
Step 4: Give every ticket one owner and route by category
Each ticket needs exactly one owner who is responsible for it reaching Resolved, even if a technician or accountant does part of the work. Shared ownership means no ownership.
Set routing so tickets reach the right person without a manager reading each one. In chat.or.ke, ticket rules can send tickets to the right agent or team based on their category: Warranty claim to the after-sales lead, Billing to accounts. Agents get an in-app notification when a ticket is assigned to them, and internal notes keep everyone's updates on the ticket rather than in private WhatsApp groups.
Step 5: Open tickets from the conversation
The quickest way to lose information is to retype it. Open the ticket directly from the WhatsApp chat or email where the request arrived, so the customer's details and the conversation history are attached.
With chat.or.ke, an agent working in the shared WhatsApp inbox creates a ticket in one click with the customer already attached, then sets category, priority and owner. Requests that arrive by email, through a connected business mailbox, work the same way. The customer keeps talking on the channel they chose; the ticket tracks the work behind the scenes.
Step 6: Set response and resolution targets
Agree how quickly each priority should get a first response and how long it should take to resolve. Start with targets you already meet most of the time.
For the solar company: Urgent gets a response within 30 minutes and a technician visit the same or next business day; Normal gets a response within two business hours and resolution within three business days.
Then make sure someone is warned before a target is missed. chat.or.ke sends SLA alerts when tickets are close to breaching their response or resolution targets, so the owner can act or update the customer. Our guide on setting up customer support SLAs covers targets, business hours and escalation in detail.
Step 7: Keep customers updated, then review monthly
Customers who cannot see progress keep asking for it. Update them when the status changes, especially when a ticket moves to Waiting (tell them what you need) or Resolved (confirm it is fixed).
A private progress link removes much of that back-and-forth. In chat.or.ke each ticket can have a link that the customer opens without logging in to see the latest status, so "any update?" messages drop.
After the first month, review:
- Which categories had the most tickets, and why?
- Which tickets took longest, and where did they wait?
- Were priorities set consistently?
- Did any requests get handled outside the system?
Use the answers to fix root causes. If "Delivery of equipment" tickets keep waiting on one supplier, that is a supplier conversation, not a support problem.
What mistakes should a small business avoid with ticketing?
- Too much structure on day one. Twenty categories and eight statuses make agents avoid the system.
- Tickets that live outside the conversation. Copying details into a separate tool loses context and wastes time.
- No owner. "The team" is not an owner.
- Closing tickets without telling the customer. Resolved means the customer knows it is resolved.
- Never reviewing. The categories and targets you start with will be wrong in small ways; a monthly look keeps them useful.
Complaints that arrive publicly need extra care before they become tickets; see how to handle customer complaints on social media.
Published 20 October 2026 Updated 20 October 2026 Plain-text version