| Role | View | Create draft | Paste & parse | Confirm / advance | Pack |
|---|---|---|---|---|---|
| Owner | Allowed | Allowed | Allowed | Allowed | Allowed |
| Manager | Allowed | Allowed | Allowed | Allowed | Allowed |
| Operator | Allowed | Allowed | Not allowed | Not allowed | Not allowed |
| Sales | Allowed | Allowed | Allowed | Not allowed | Not allowed |
Overview
Your customers already message you on WhatsApp all day. This screen pulls those threads into Neev so your staff reply from one place — no jumping between phones, no "who answered that customer?" The same channel also fires order updates back to the customer automatically: confirmed, packed, out for delivery, delivered. The trader stops typing "ji bhej diya" a hundred times a day.
Where to find it
Open WhatsApp in the left sidebar — it lands you on /whatsapp, the
conversation console. Click any thread to open the full chat at /whatsapp/[id],
with the customer's credit, lifetime value, and last-order date on the right rail.
A separate Catalog view lives at /whatsapp/catalog.
Web only — there is no mobile version of this console. All four tagged roles (Owner, Manager, Operator, Sales) see the WhatsApp sidebar item and can read threads.
Key concepts
- A conversation is one customer's thread on one number. It carries a state — it starts Idle and moves through a finite set of steps driven by Neev's reply engine, separate from the AI order-parsing tray.
- Channel type is either b2b or d2c, set per conversation. B2B and D2C run on different reply engines.
- A channel config is one WhatsApp business number wired through Gupshup (the provider Neev uses). One config per phone number. A config can be active or not — only an active one actually delivers.
- A template is a pre-approved message — header, body, footer, buttons, and a language (default English) — used for the automatic order and shipment updates.
Inbound order messages do NOT get parsed into a draft order here. That AI parse-and-confirm flow lives in the Intake tray — see Related below.
Common workflows
Open WhatsApp, pick the thread, type your message in the composer at the bottom, and send. Neev logs the reply and pushes it to the customer through the active channel config.
Add a channel config with the number's Gupshup details (app name, API key, webhook secret) and mark it active. Each number maps to one config — adding a second config for a number already in use is blocked.
Create the templates Neev sends on order events — order_confirmed,
order_packed, order_out_for_delivery, order_delivered, order_cancelled,
plus the shipment ones. Once they exist, the updates send themselves.
On any open thread the right rail shows the linked customer's outstanding credit, lifetime value, lifetime order count, and last-order date — so you know who you're talking to before you commit to anything.
Role notes
Everyone who sees this screen can read threads and reply. The difference is the setup powers — adding numbers and creating templates — which stay with the people who run the channel.
| Role | View threads & reply | View templates | View channel configs | Add/update channel config | Create/delete templates |
|---|---|---|---|---|---|
| Owner | Allowed | Allowed | Allowed | Allowed | Allowed |
| Manager | Allowed | Allowed | Allowed | Allowed | Allowed |
| Operator | Allowed | Allowed | Not allowed | Not allowed | Not allowed |
| Sales | Allowed | Allowed | Not allowed | Not allowed | Not allowed |
- Owner and Manager run the whole channel — reply, add or update numbers, and create or delete templates.
- Operator and Sales can view threads, reply, and view templates. They cannot see or change channel configs, and cannot create or delete templates.
Tips & time-savers
You never message order status by hand. Once your templates exist, confirming, packing, shipping, or delivering an order — and shipment tracking events — each fire the matching WhatsApp update to the customer automatically. Set the templates up once and the whole channel runs itself.
The right rail saves a lookup: credit, LTV, and last-order date sit next to the chat, so you can spot a customer running close on credit before you promise anything.
Gotchas
If a channel config is inactive — or missing its Gupshup key — your reply still gets saved to the thread, but it is NOT delivered to the customer. The same applies to automatic order updates: no active config (or no existing WhatsApp thread for that customer) means the update silently doesn't send. Keep the number you actually use marked active.
One WhatsApp number, one channel config. Trying to add a second config for a number that's already set up is rejected as a conflict. Update the existing config instead of adding a new one.
WhatsApp's own 24-hour session rule still applies on the provider's side: outside that window only pre-approved templates go through. Neev doesn't override WhatsApp here.