Chat (1-on-1)
Overview
Chat is the WhatsApp-Web-style, one-to-one customer conversation view. Open it from the Chat link in the top navigation. Use it to open a single thread, read the history, and reply with text, templates, media, or an AI-drafted message — just like WhatsApp Web, but inside your workspace.
Chat is built around queues. A queue is one conversation: it can target a single number or be created as one send to many recipients, but you always work it as a single thread. The left rail filters your queues, the middle column lists them, and the right column is the open thread with the message box.
How Chat differs from the other inboxes. Chat is the one-on-one customer view for managers and above. It is not the Team Inbox, the shared queue where agents pick up tickets with assignment, notes, and SLA tracking, and it is not Team Chat, your internal team channels. Agents and viewers work the team queue; Chat is for managers and above.
Engine & plan prerequisites
Chat adapts to whichever WhatsApp engine the workspace is on, and shows only conversations on the workspace's active engine — so a Cloud API workspace never sees leftover Unofficial-API threads. It also hides campaign conversations, which live under WA Campaigns.
| Requirement | Detail |
|---|---|
| Role | Manager or Admin. Agents and Viewers are sent to Team Inbox instead. |
| Engine | Works on all three engines — Unofficial API, WhatsApp Cloud API, and Twilio WhatsApp. Each send is routed through the workspace's active engine automatically. |
| Connected number | At least one connected number. On the Unofficial API the picker lists paired phones; on Cloud API / Twilio it lists your provider numbers. |
| Wallet credits | Each real send uses one message credit. If you're out of credits, the send is blocked and marked failed. |
| Multi-device (optional) | If your plan includes multi-device sending, the compose window lets you pick several numbers and splits recipients evenly across them. Without that plan feature, a send always uses a single number. |
Approved templates and the 24-hour window. On the Cloud API and Twilio engines, WhatsApp only allows free-form messages within the 24-hour customer-service window. To open a conversation or reply after that window closes, send an approved template (see Sending an approved template). The Unofficial API does not enforce this window.
The conversation list
The middle column lists your queues, newest activity first. Each card shows the title, a preview of the last message, a status pill, and a recipient count. Selecting a card opens the thread on the right.
Filters & search
The left rail filters the list by status. The counts next to each filter update live as you send:
- All chats — every (non-archived) conversation in the workspace for the current engine.
- Scheduled — queues with messages set to fire at a future time.
- Archived — conversations you have archived (hidden from the other filters).
- Sent, Pending, Failed — roll-up by the conversation's last send outcome.
Above the list you can also:
- Search queues — type to find a queue by its title or last-message preview.
- Filter by number — show only queues sent from one connected number.
- Sort — Newest, Oldest, A to Z, or Z to A.
The left rail also shows your approved template counts by category (Marketing, Utility, Authentication) for quick reference.
Conversation status pills
After every send WaDesk rolls the conversation's status up from the actual outcomes of its individual messages, so the pill never lies (a queue isn't "sent" if every recipient failed):
| Pill | When it shows |
|---|---|
| scheduled | Every message is queued for a future time and none has sent or failed yet. |
| sent | At least one message reached sent / delivered / read. |
| partial | A mix — some messages sent, some failed. |
| failed | Every outbound message failed. |
| pending | Saved but not yet dispatched. |
Archived conversations show under the Archived filter while still displaying their underlying status, so an archived failure is still visible at a glance.
Starting a conversation
Click the Compose (pencil) button to open the new-queue modal. A queue is a single message sent to one or many recipients:
| Field | Notes |
|---|---|
| Queue name | A label for your own reference, e.g. "Diwali launch — VIPs" (required). |
| Number | The number to send from. On a multi-device plan you can pick several, and recipients are split evenly across them. |
| Recipients | Either type numbers (separated by commas or new lines, duplicates removed) or choose a contact group (pulls every contact's mobile number from that group). |
| Message | The first message (up to 4096 characters). |
| Schedule (optional) | Pick a future date and time in your time zone. The send must be at least one minute in the future. |
When you submit, WaDesk creates the conversation, sends to each recipient through the active engine, and sets the conversation's status from the results. As you type a number, the box can suggest numbers you've messaged before.
Scheduled vs. immediate sends. Immediate sends use wallet credits when you submit. Scheduled sends are charged only when they actually fire, so a cancelled scheduled queue never ties up your balance.
Composing a reply
With a thread open, the composer at the bottom mirrors WhatsApp Web. You can:
- Type text — up to 4096 characters, with a Bold formatting shortcut and an emoji picker.
- Attach media — images, video, audio, or a document (PDF / Word), up to 10 MB. Accepted types are validated server-side (jpg/jpeg/png/gif/webp, mp4/webm, mp3/wav, pdf/doc/docx). A preview banner appears before you send.
- Share a location — attach latitude/longitude (validated to real coordinate ranges) as a location message.
- Schedule the message — pick a future time from the attach menu; a "Scheduled for…" indicator shows until it fires.
- Send a template — see Sending an approved template below.
The recipient for a reply is worked out automatically, so replies always go back to the right person without you re-entering a number — even on a thread the customer started.
AI draft assist
The AI assist button (sparkle icon) on the thread header drafts and reworks messages for you, using the last 30 messages in the conversation as context. Available tools:
| Tool | What it returns |
|---|---|
| Summarize | A 4–6 bullet summary (intent, key facts, blockers, next step). |
| Suggest reply | A short, friendly ready-to-send draft in the customer's language. |
| Rewrite | Restates your last reply in a different tone you pick. |
| Translate | Translates the customer's last message into a chosen language. |
| Extract | Pulls structured details as JSON (name, phone, email, intent, products mentioned, dates, order id). |
| Tone | Analyses sentiment, urgency, and a frustration score (0–10) as JSON. |
Needs an AI key. AI assist uses your workspace's own AI key or the admin-provided key (OpenAI, Anthropic Claude, or Google Gemini), and is subject to your plan's AI access. With no key configured it returns a clearly-labelled demo response so the screen still works — see the AI Suite for setup.
Sending an approved template
Open the attach menu and choose Template to pick from your Meta-approved library (the same templates the Templates page and campaigns use). Select a card, preview it on the right, and send it to the current thread.
WaDesk fills in placeholders for you on send, using the conversation's matched contact:
- Named placeholders like
{{name}},{{phone}}, and{{email}}are filled from the matched contact. - Numbered placeholders like
{{1}}are filled from the template's variable settings. - Authentication templates generate a fresh six-digit code per send and place it in the body and the "Copy code" button.
- Button links and copy-code values are filled in too, so dynamic links and coupon codes carry the real, recipient-specific values.
Only approved templates appear here. Sending a template is the supported way to start a conversation or reply outside the 24-hour window on the Cloud API and Twilio engines.
Per-message actions
Hovering a message bubble opens a WhatsApp-style menu:
| Action | What it does |
|---|---|
| Pin | Pins the message in the thread. On the Unofficial API it also pushes the pinned-bubble indicator to the recipient's WhatsApp. |
| Star | Stars the message for the operator. Syncs to your WhatsApp Web starred list; the recipient is not notified. |
| React | Adds an emoji reaction (or clears it). Best-effort delivery to the recipient on the Unofficial API. |
| Forward | Copies the message (text + media + location) into another conversation and sends it there. Consumes one credit; refunded if it fails. |
| Delete | Removes the message from the thread (soft delete — the row is retained for audit). |
| Info | Shows the message's status timeline — created, scheduled, sent, delivered, read — plus the from/to numbers and any failure reason. |
Toggling state. A pin, star, or reaction can be turned off the same way you turned it on (click again to clear it). Reactions and pins are pushed to the recipient where the engine supports it; if the connection is briefly unavailable, your local record still stays correct.
Archiving & restoring
Use the Archive button on the thread header to move a conversation into the Archived filter and out of your day-to-day list. Open the Archived filter and use Unarchive (restore) to bring it back. Archiving does not delete anything — the full history is preserved. To remove a conversation entirely, delete it from the thread's More menu.
Retry, resend & send now
The thread's gear / More menu carries queue-level actions for handling delivery outcomes:
| Action | What it does |
|---|---|
| Retry failed | Re-attempts every failed message in the conversation and clears its failure reason. The conversation pill returns to sent once nothing is left failing. |
| Send again (resend) | Duplicates the most recent outgoing message and sends it again, without retyping. |
| Send now | On a scheduled queue, fires every still-scheduled message immediately instead of waiting for its scheduled time. |
Failed sends and credits. When a send is rejected, the message is marked failed with the reason recorded, and the credit charged for it is automatically refunded — you are never billed for a message that didn't go out. A common reason is "Out of credits"; top up your wallet and retry.
Troubleshooting
| Symptom | Likely cause & fix |
|---|---|
| "Out of message credits" on send | The wallet is empty. Top up your wallet or earn credits via the affiliate program, then retry. |
| Send fails outside the 24h window (Cloud API / Twilio) | Free-form messages are only allowed inside WhatsApp's 24-hour service window. Send an approved template to re-open the conversation. |
| A just-sent conversation vanished from the list | Chat shows only the active engine's conversations. If the workspace's active engine doesn't match the conversation, it's hidden — check you're on the right engine. |
| "No recipient on this conversation" | The thread has no number to reply to (rare, on threads the customer started). Recreate the queue with the number typed in. |
| Compose window shows the wrong / offline number | The number picker matches the active engine; a Cloud API workspace lists provider numbers, not the old Unofficial API phone. Connect or select the correct engine's number. |
| AI assist returns a "demo response" | No AI key is set for the workspace (and no admin key). Add a key in the AI Suite. |