Catalogs
The records that support customer service: tags to mark conversations, quick replies with variables for the composer, closing reasons to classify tickets, and the discard patterns that keep automated messages from opening tickets.
Overview
The Catalogs screen is in the Administration menu, with the subtitle Tags, quick replies and closing reasons. It has three tabs that all work the same way: a table with the items, the create button at the top of the tab, and the Edit and Delete buttons on each row. Each item is created and edited in a window with Cancel and Save.
| Tab | What it is for | Where it is used |
|---|---|---|
| Tags | Mark conversations by subject or situation and work as a filter in the list. | Customer panel, conversation list, report exports. |
| Quick replies | Ready-made replies: in the composer, type / and the shortcut to insert one. | Chat composer. |
| Closing reasons | Classify how conversations were closed and appear in the reports. | Close window, closing by the AI, Overview and Reports. |
Discard patterns are not on this screen: they are created from the message menu, inside the conversation, and monitored in Settings. Since they are also a record that supports customer service, they are documented here under Discard patterns.
Who has access
The screen requires the Records permission (Labels, quick replies and other support records.) in the access profile. Without it, the item does not appear in the menu. Using the records day to day (tagging a conversation, inserting a quick reply, choosing a reason when closing) does not depend on this permission: it is available to anyone who handles conversations. See Users and profiles.
The screen works the same way in ChatISP installed on the internet service provider's (ISP's) own server and in ChatISP Cloud.
Tags
Tags are colored markers the team applies to conversations: "Billing", "Installation", "VIP customer", "No signal", whatever makes sense for the ISP.
Create or edit
- On the Tags tab, click New tag (or Edit on a row).
- Fill in the fields and click Save.
| Field | What it does |
|---|---|
| Name | Required, up to 60 characters. It is the text shown on the pill. |
| Color | Color of the pill and of the dot in the conversation list. Starts as green. |
| Order | Number that sets the position on screen, in menus and in the filter (lowest first; ties in alphabetical order). |
Where tags appear
- Customer panel, in the conversation: applied tags become pills, and the Conversation tags button opens the list with checkboxes. Anyone who can see the conversation can tag it.
- Conversation list: each conversation shows dots in the colors of its tags next to the name, and the All tags selector filters the list by one of them.
- Contact details: tags appear in the window opened by the customer's photo.
- Reports: the conversation export includes a column with the tags of each ticket. See Reports.
While no tag exists, the filter and the panel button stay hidden.
Deleting a tag removes it from every conversation (Delete this tag? It disappears from every conversation.). To just rename it or change its color, use Edit: tagged conversations follow the change.
Quick replies
Quick replies are ready-made answers the agent inserts into the composer by typing a slash and the shortcut. They are meant for text that repeats: instructions to restart the router, the deadline for a technical visit, how to get a copy of the invoice, support hours.
Create or edit
- On the Quick replies tab, click New quick reply (or Edit on a row).
- Fill in the fields and click Save.
| Field | What it does |
|---|---|
| Shortcut | Required. No spaces. E.g.: welcome. Up to 40 characters among letters, numbers, hyphen and underscore. If you type the slash in front, it is dropped when saving. In the table, the shortcut is shown with the slash (/welcome). |
| Department | All departments (default) or a specific department. See below who sees each message. |
| Text | Required, up to 4,096 characters. Accepts line breaks, WhatsApp formatting (*bold*, _italic_) and the variables. |
| Order | Position in the table and in the composer list (lowest first; ties in alphabetical order of the shortcut). |
Variables
The field hint sums it up: Variables replaced when inserted into the conversation: {nome} customer name as shown in the chat, {atendente} the agent on duty, {protocolo} ticket number, {telefone} customer phone.
| Variable | Inserted value |
|---|---|
{nome} | The customer's name in the open conversation: their WhatsApp name or the name edited by the team. If the conversation has no name, the formatted phone number is used. |
{atendente} | The name of the person inserting the message. |
{protocolo} | The ticket number of the open conversation. |
{telefone} | The customer's phone number, formatted. |
The replacement happens in the browser, the moment the agent picks the message, using the data of the open conversation. No external system is queried, and the replaced text stays in the field for review before sending. Braces other than these four are left as they are in the text.
Example
Let's try restarting your router, {nome}: unplug it, wait 30 seconds and plug it back in. When the lights settle, let me know here if it's working again.
Your ticket number is *{protocolo}*.In the chat, the agent types /rest, picks the message, and it goes in with the customer's name and the ticket number already filled in.
Who sees each message
The composer shows the messages for All departments, those of the open conversation's department and those of the agent's own department. A message from another department does not appear. If a department is deleted, its quick replies become available to everyone.
Using it in the chat
- With the text field empty, type /. The list shows the shortcut and text of each available message.
- Keep typing: the search filters by shortcut and also by parts of the text (up to 8 results).
- Arrow keys to choose, Enter or Tab to insert, Esc to close.
With no results, the list shows No quick reply found. Composer details are in Customer service and chat.
How to write good quick replies
- They are mid-conversation text. A quick reply goes into a conversation that is already under way: the greeting and introduction have already happened. Avoid starting with "Hello" or "This is so-and-so"; get straight to the point.
- Use
{nome}when it sounds natural in the middle of a sentence. Keep in mind it brings the name as the customer set it on WhatsApp, sometimes a full name, sometimes a nickname. - Do not repeat the agent's name when message signing is on: the customer already receives the writer's name in bold at the top.
- Choose short, easy-to-remember shortcuts, and prefer vocabulary shared by the team (
/invoicecopy,/visit,/slowness).
Closing reasons
Reasons classify why a ticket ended: "Problem solved", "Question answered", "Technical visit scheduled", "Customer did not reply", "Invoice copy sent". They feed the charts in Overview and Reports and show what takes up most of the team's time.
Create or edit
- On the Closing reasons tab, click New reason (or Edit on a row).
- Fill in the fields and click Save.
| Field | What it does |
|---|---|
| Name | Required, up to 120 characters. |
| Order | Position in the table and among the buttons of the close window. |
| Active | On by default. When off, the reason is no longer offered when closing, but it stays on older tickets and in the reports. The table shows Active or Inactive. |
Where reasons appear
- When closing a conversation: active reasons become one-click buttons in the Close window, along with the None option (when a reason is not required). See Closing the conversation.
- Closing by the AI: when the artificial intelligence closes a ticket, it chooses among the active reasons by name. If none fits, the ticket has no reason; the AI never creates a new one. Clear, distinct names help the AI get it right. See Artificial intelligence.
- Customer panel of a closed ticket: the Reason line.
- Timeline: the Closed event shows the reason's name.
- Overview and Reports: breakdown of closings by reason, and the reason column in the export. See Reports.
Required reason
In Settings, on the customer service card, the Require a reason when closing switch forces the agent to choose a reason: the None option disappears and closing without choosing shows Choose the closing reason. The hint explains: Applies when at least one active reason exists in Catalogs. With no active reason, closing goes ahead without asking for anything.
Deleting a reason erases the classification of older tickets that used it: they show up with no reason in the reports. To retire a reason without losing history, turn off Active instead of deleting it.
Discard patterns
Some numbers receive automated messages that are not from customers: monitoring alerts, system notices, repeated notifications. Each one would open a ticket and clutter the queue. A discard pattern tells ChatISP: messages with this text do not open a ticket.
How it works
- The pattern is the message text with the parts that change on every send replaced by
{var}(a date, an equipment name, an amount). - The match is exact and case-sensitive; each
{var}stands for any stretch of text, including empty text or line breaks. - When applied, existing text messages that match the pattern are deleted from the entire system, in the background. A conversation left with no messages and no internal notes is removed; in the others, the time of the last message and the unread counter are recalculated.
- From then on, new messages that match the pattern are ignored on arrival, on any channel (QR and Official API), before a ticket is opened. This also applies to messages sent by the number itself from outside ChatISP.
- Only text messages are evaluated.
Create a pattern
Requires the Settings permission.
- Open a conversation that contains the automated message, hover over the bubble and open its menu (the arrow in the corner).
- Click Create discard pattern. The Discard pattern window opens with the message text in the Message pattern field.
- Select each part that changes on every send and replace it with
{var}; the {var} button inserts the marker at the cursor. - Watch the live count, which shows how many existing messages match the pattern and will be deleted (%s existing message(s) match this pattern and will be deleted., with the number in place of %s).
- Click Apply discard. The message Pattern created. History cleanup started in the background. appears.
Safety rules
- The pattern must have at least 10 fixed characters outside
{var}. Below that: Pattern too generic: keep at least 10 fixed characters outside {var}. This keeps a vague pattern from deleting customer messages. - The pattern has a maximum of 2,000 characters.
- Two identical patterns cannot be created (An identical pattern already exists.).
Monitor and delete
Patterns are listed on the Discard patterns card of the Service tab in Settings (Automated messages that must not open a ticket: deleted from history and ignored on arrival, on any channel.). Each pattern shows the text with the {var} markers highlighted, who created it and when, and its status:
- Cleaning history… while the cleanup is still running, with the total deleted so far (the list refreshes on its own).
- Afterwards, %s deleted in cleanup and %s ignored since creation, with the numbers.
Deleting a pattern asks for the confirmation Delete this pattern? New identical messages will enter the system and open tickets again. Messages already deleted do not come back.
The cleanup is permanent: messages deleted by a discard pattern cannot be recovered from the panel. Before applying, check the live count. If it looks too large for what you expect, keep more fixed text in the pattern.
Put everything that changes from one message to the next inside {var}, including system or equipment names. A pattern with a fixed name only discards the alerts with that name; alerts from another system keep opening tickets.
Frequently asked questions
| Situation | Explanation |
|---|---|
| The Catalogs menu does not appear. | The access profile does not have the Records permission. |
| I typed / and the quick reply does not appear. | It belongs to another department, the slash is not the first character in the field, or the text already runs past one line. Check the message's department in the table. |
| The variable showed up raw in the text. | Only {nome}, {atendente}, {protocolo} and {telefone} are replaced. Check the spelling: no spaces, lowercase. |
| The shortcut will not save. | Use only letters, numbers, hyphen and underscore, no spaces, up to 40 characters. |
| The tag filter disappeared from the list. | There are no tags registered. |
| Closing asks for a reason and I do not want that. | Turn off Require a reason when closing in Settings, or deactivate all reasons. |
| I do not see Create discard pattern in the message menu. | The option requires the Settings permission and only appears on text messages. |
| The discard count takes a while to settle on the card. | The cleanup runs in batches, in the background; follow it on the card until it leaves Cleaning history…. |