hostdoc — offline cPanel/WHM/WHMCS support brain

← all runbooks

---
title: Handling a support ticket in WHMCS
panel: WHMCS
symptoms:
  - ticket needs replying to
  - ticket is waiting on the customer
  - ticket needs closing
  - ticket needs to be escalated
  - reply to the ticket
  - the customer has replied
  - close the ticket off
  - the ticket is still open
  - escalate to a senior engineer
---

# Handling a support ticket in WHMCS

## 1. Read the whole ticket before the first reply

**Why:** the body, the notes and the previous replies are all in the
ticket, and the answer is very often already in the thread. A reply that
ignores the customer's second message is the thing that turns a ticket
into a complaint, and it is the most common way a good agent gets a bad
review.

**In WHMCS:** open the ticket. Read every note and every reply in it.

**In the terminal:** the API call `getticket` returns the ticket and
`getticketnotes` returns the notes on it.

**Care:** this only reads.

- https://developers.whmcs.com/api-reference/getticket/
- https://developers.whmcs.com/api-reference/getticketnotes/

## 2. Reply on the ticket rather than by email

**Why:** a reply from the ticket keeps the answer attached to the
service and the history. An email reply from a personal inbox leaves the
customer with no record, no way to check what was done, and no way for
the next person to pick it up.

**In WHMCS:** reply from the ticket.

**In the terminal:** the API call `addticketreply` posts the reply.

**Care:** a reply from the ticket is visible to the customer. Do not put
internal notes about other accounts or about the customer in it. Notes
are for those.

- https://developers.whmcs.com/api-reference/addticketreply/

## 3. Use the predefined replies

**Why:** predefined replies keep the wording consistent between two
people on the same desk and keep the time spent on a call down. They
also mean the customer gets the same answer whichever member of staff
they reach.

**In WHMCS:** the predefined replies dropdown on the reply form.

**In the terminal:** the API call `getticketpredefinedreplies` returns
the list, and `getticketpredefinedcats` returns the categories they sit
in.

**Care:** check the wording before sending. A predefined reply that was
right for the last version of the product can be wrong now.

- https://developers.whmcs.com/api-reference/getticketpredefinedreplies/

## 4. Know when to close it and when to leave it open

**Why:** closing a ticket ends the clock on the customer's expectations.
If the customer still has to do something, leave it open and put it in
the waiting state. Closing it and reopening it later is worse for both
of you because it loses the age of the ticket and the customer sees a
slower response.

**In WHMCS:** the ticket's status dropdown.

**In the terminal:** the API call `updateticket` sets the status. The
customer-facing ticket view has its own open and close actions, which is
`openticket`.

**Care:** if you close a ticket with work still outstanding, the next
person has no signal that it is unfinished. Put it in the ticket notes
first.

- https://developers.whmcs.com/api-reference/updateticket/
- https://developers.whmcs.com/api-reference/openticket/

## 5. Hand over with a note rather than with silence

**Why:** a handover goes in as a note so the next person sees it in
context. A ticket that changes hands without a note is the most common
cause of a customer having to repeat themselves, and repeating yourself
is what people remember when they rate the support.

**In WHMCS:** add a note to the ticket.

**In the terminal:** the API call `addticketnote` adds the note.

**Care:** notes are internal. Say what has been done, what has been
tried, and what you would do next. That is what makes the handover
useful.

- https://developers.whmcs.com/api-reference/addticketnote/