Inbox
Every message from every channel — WhatsApp, Instagram, SMS, web widget — lands in one unified inbox. Moxabot's AI handles conversations automatically; your agents step in when it matters most.
Inbox layout
The inbox is split into two panels. The left panel shows your conversation list — sorted by most recent activity — with channel icons, contact names, a message snippet, timestamp, and a status pill. The right panel is the full chat view for the selected conversation.
Every message bubble carries a badge so you can instantly tell who sent it:
| Badge | Meaning |
|---|---|
| Rose bubble · "AI" label | Reply generated and sent by your AI persona automatically |
| Dark bubble · agent name | Reply sent manually by a human agent after taking over |
| Grey bubble (right-aligned) | Message from the customer |
| Internal note (yellow background) | Private comment visible only to your team — not sent to the customer |
Channel icons appear as coloured dots in the conversation list and in the chat header:
| Colour | Channel |
|---|---|
| Green (#25D366) | |
| Pink (#E1306C) | Instagram / Messenger |
| Red (#F22F46) | SMS via Twilio |
| Blue (#2563EB) | SMS via EZ Texting |
| Rose (#E11D48) | Web widget |
| Red (#FF0000) | YouTube comments |
Assign & reply
By default, your AI handles every incoming message. When you need a human touch — for complaints, refunds, or VIP customers — any agent can take over in one click and reply directly from the inbox.
Taking over from the AI
Assigning to a team member
Admins and agents can assign any conversation to a specific team member. Assigned conversations appear at the top of that agent's inbox view, filtered under their name.
Replying manually
The reply bar supports plain text, emoji, and file attachments (images, PDFs up to 10 MB). Press Shift + Enter for a line break without sending. Press Enter or click Send to deliver.
Internal notes
Switch the reply bar to Note mode (toggle above the input field) to leave an internal comment. Notes are highlighted in yellow and are never sent to the customer — they're visible only to your team in the conversation thread.
Quick replies & macros
Macros are saved reply templates your whole team can share. They eliminate repetitive typing for common responses — shipping updates, return instructions, pricing FAQs — and keep tone consistent across every agent.
Creating a macro
{{contact.first_name}} and other variables to personalise automatically.Inserting a macro with /slash
While typing in the reply bar, press / to open the macro picker. Continue typing the macro name to filter results. Click or press Enter to insert the full body into the reply field. You can edit it before sending.
Managing the macro library
Admins can edit, duplicate, or delete macros from Team → Macros. Agents can only use macros — they cannot create or modify them unless granted Admin role.
| Action | Who can do it |
|---|---|
| Use a macro in a reply | All agents, admins |
| Create / edit / delete macros | Admins only |
| Insert variables ({{contact.first_name}} etc.) | All agents, admins |
Contact timeline
Every contact has a unified timeline that aggregates their entire conversation history across all channels. Whether they messaged you on WhatsApp last month and then the web widget yesterday, you see it all in one place.
Viewing the contact panel
Click the contact's name or avatar in the chat header to open the Contact details panelon the right side of the screen. It shows:
- Full name, email, phone number, and location
- First seen date and total conversation count
- All channels they've used
- Complete message history across every channel — scrollable timeline
- Custom attributes you've added (e.g. "VIP", "Shopify customer ID")
- Internal notes attached to the contact (separate from conversation notes)
Adding notes to a contact
Status indicators
Every conversation carries a status that tells your team at a glance what needs attention. Statuses update automatically as the conversation progresses, or you can change them manually.
| Status | Colour | Meaning | How it's set |
|---|---|---|---|
| Open | Blue | Active conversation — AI or agent is handling it | Set automatically when a new message arrives |
| Waiting | Amber | Awaiting a reply from the customer | Set automatically after agent or AI sends a message |
| Escalated | Rose | AI has triggered a hand-off rule or agent manually escalated | Automatic (hand-off rule) or manual button |
| Resolved | Green | Conversation is closed — no further action needed | Agent clicks Resolve, or AI closes after idle period |
To manually change a status, open the conversation and use the status dropdown in the top-right of the chat panel (next to the Assign button). Resolved conversations are hidden from the default inbox view but remain searchable and visible in the contact timeline.
Filters & search
Use the filter bar above the conversation list to narrow down what you see. All filters can be combined and are remembered per browser session.
| Filter | Options |
|---|---|
| Channel | All, WhatsApp, Instagram, SMS (Twilio), SMS (EZ Texting), Widget, YouTube |
| Status | All, Open, Waiting, Escalated, Resolved |
| Assigned to | All, Unassigned, Any team member by name |
| Handled by | All, AI only, Human only |
| Date range | Today, Last 7 days, Last 30 days, Custom range |
Search
The search bar (top of the inbox) searches across contact names, phone numbers, email addresses, and message content. Search is full-text and returns results from all channels and all statuses — including resolved conversations.
#4421) to instantly find every conversation where that order was mentioned, across every channel.