User Guide

Everything you need to understand and operate the Ready1Go WhatsApp AI Agent platform — from first login to managing your knowledge base, designing conversation flows, building industry templates, and handling live customer conversations.

3 Portals 60+ Pages 3 User Roles Live on ready1go.com

What is this platform?

The Ready1Go WhatsApp AI Agent is a complete customer communication platform built on top of the Meta WhatsApp Business Cloud API. It lets organisations deploy an AI-powered WhatsApp chatbot that automatically answers customer questions using a knowledge base, guides users through structured conversation flows, and seamlessly escalates to a human agent when needed.

Three systems work together:

The platform is multi-tenant — each client organisation (tenant) is completely isolated from others. Super Admins manage the platform and all tenants; Client Admins manage their own organisation only.

Roles & Portals

There are three separate portals, each accessed via a different login page. There is no single login that works for all three.

🏢Super Admin

METPL platform operators. Full access to all tenants, infrastructure, industry templates, and billing. Typically one or two people.

Platform-wide
🤖Client Admin

The manager of a client organisation. Sets up the bot, uploads documents, creates campaigns, manages agents. Can only see their own tenant data.

Tenant-scoped
🎧Agent

A customer support representative. Handles live WhatsApp conversations that the bot escalated. No access to bot settings or analytics.

Conversation-scoped

Logging In

Navigate to ready1go.com/whatsapp_agent/ and click the card for your portal. Each portal has its own login page.
1
Open the portal selector
Go to ready1go.com/whatsapp_agent/. You'll see three portal cards: Super Admin (yellow), Client Admin (blue), Agent Portal (green).
2
Click your portal
The Super Admin portal has a yellow warning badge — it grants full platform access. The login page will show a matching indicator so you know which portal you're signing into.
3
Enter your credentials
Type your email and password. If your account has Two-Factor Authentication (2FA) enabled, a second step will appear asking for the 6-digit code from your authenticator app.
4
You're in
After login you're redirected to your dashboard. Your session is stored in the browser. Use the Sign Out button in the bottom of the sidebar when finished — sessions do not expire automatically.
After 5 failed password attempts your account is locked for 30 minutes. If you are locked out, wait or ask your Super Admin to check the audit log for your account.

Default Credentials (Seeded Demo Accounts)

The following accounts are pre-created by the database seeder. Change all passwords immediately in production.

Super Admin — METPL platform operator
Portalready1go.com/whatsapp_agent/super/login.html
Emailsuperadmin@ready1go.com
PasswordSuper@1234!
Client Admin — Demo University tenant
Portalready1go.com/whatsapp_agent/admin/login.html
Emailadmin@demo-university.com
PasswordAdmin@1234!
Agent — Demo University agent
Portalready1go.com/whatsapp_agent/agent/login.html
Emailagent@demo-university.com
PasswordAgent@1234!

Super Admin Portal

🏢
Super Admin Portal
Full platform control — all tenants, infrastructure, industry templates, billing, and audit. Accessed at /super/
The Super Admin portal is for METPL (Mahir Evolving Technologies Pvt. Ltd.) operators only. Every action is logged to an immutable audit trail. Use with care — changes here affect all tenants. The sidebar shows a green-to-blue gradient strip at the top to distinguish the super admin context from tenant admin views.
📊Dashboardsuper/dashboard.html

The landing page after Super Admin login. Shows a real-time snapshot of the entire platform:

  • Active Tenants — total organisations currently live
  • Messages Today — platform-wide message volume
  • Bot Resolution Rate — percentage of conversations handled end-to-end by AI without human escalation
  • Active Agents — agents currently online across all tenants
  • Tenant health table — all tenants with status, message count, and last activity
  • System alerts — phone numbers with degraded quality, LLM API errors, queue backlogs
💡
The dashboard auto-refreshes every 30 seconds. The sidebar Sign Out button is always visible at the bottom — use it when done rather than just closing the tab.
🏗Tenantssuper/tenants.html · super/tenant-detail.html · super/tenant-new.html

Central management for all client organisations on the platform.

  • List view — searchable and filterable. Columns: name, plan, status, message count, reseller, created date.
  • Approve — newly onboarded tenants in "pending" status must be explicitly approved to go live.
  • Suspend — immediately disables a tenant's bot and API access.
  • Impersonate — enter a tenant's context to view and manage their data as if you were their admin (clearly labelled with an impersonation banner).
  • Delete — permanently removes the tenant and all data. Irreversible.

New Tenant (super/tenant-new.html)

Provisions a new client organisation. Required: organisation name, slug, contact email, subscription plan, language, timezone. Optionally assign a reseller and deploy an industry template immediately on creation.

Deploy Industry Template

After creating or from the tenant detail page, you can deploy an industry template (e.g. University, Legal Firm, Healthcare Clinic) to instantly seed the tenant with: system prompt, FAQ pairs, WA message templates, requirements checklist, and all pre-designed conversation flows. See Industry Templates for how to create and manage these.

🤝Resellerssuper/resellers.html · super/reseller-detail.html

Channel partners who sell the platform under their own branding.

  • Create, edit, activate or deactivate reseller accounts
  • Assign a commission percentage tracked for billing
  • View all tenants under each reseller and revenue breakdown
📱Phone Numberssuper/numbers.html · super/number-health.html

All WhatsApp Business phone numbers registered across all tenants.

  • Number, tenant, quality rating (GREEN / YELLOW / RED), messaging tier (1K / 10K / 100K/day)
  • Number Health — historical quality rating chart per number
  • Quality is polled from Meta every 30 minutes automatically
A phone number that drops to RED must be addressed immediately — Meta may restrict it. Coach the tenant to improve opt-out compliance and messaging relevance.
🧠LLM Routingsuper/llm-routing.html

Controls which AI model is used for which task, globally and per tenant.

  • Global defaults — default model for chat, embedding, and classification
  • Per-tenant overrides — assign a specific model or provider to individual tenants
  • Provider options: OpenAI (GPT-4o, GPT-4o-mini, text-embedding-3-small), Azure OpenAI, Anthropic Claude, and local Ollama (192.168.1.4) for self-hosted inference
  • Token usage — real-time spend per provider
💡
GPT-4o-mini is recommended for most chat use cases — 10× cheaper than GPT-4o with minimal quality difference for FAQ-style responses.
🏭Industry Templatessuper/templates.html · super/template-edit.html · super/flow-editor.html

Industry templates are complete, ready-to-deploy bot configurations for specific business verticals — University, Legal Firm, Healthcare Clinic, E-commerce Store, and more. Super Admins build and maintain these templates; Client Admins deploy them to their tenant with one click.

Templates Grid (super/templates.html)

All industry templates are displayed in a card grid, grouped by Wave (Wave 0 = core verticals, Wave 1 = expanded verticals, Wave 2 = specialised). Each card shows:

  • Industry icon, name, wave, version, and status (Live / Draft / Coming Soon)
  • Minimum plan required and estimated deployment time
  • Number of flows designed for this template
  • Deployment count (how many tenants have used it)

From the grid you can: View Details (opens a detail modal with the full template spec), Edit (goes to the full editor), Deploy (to a specific tenant), or Delete.

Creating a New Template

Click + New Template. Enter a name — the slug (URL key) is auto-generated. After creation you are taken to the template editor to fill in all content.

Template Editor (super/template-edit.html?slug=xxx)

The editor has six tabs — all content is saved with the Save Changes button:

  • Metadata tab — name, version, icon, wave (0/1/2), status (Live/Draft/Coming Soon), minimum plan (Starter/Pro/Enterprise), estimated deployment time, description, integrations list, colour theme. Includes a live card preview showing exactly how it will look in the templates grid.
  • System Prompt tab — the AI persona and instructions seeded into the tenant's bot on deployment. Defines the bot's name, tone, scope, and rules for the industry.
  • Flows tab — manage pre-designed conversation flows (see below).
  • FAQs tab — question/answer pairs seeded into the tenant's FAQ library on deployment. Drag to reorder.
  • WA Templates tab — pre-approved WhatsApp message templates (name, category, languages, approval status) seeded into the tenant's template library.
  • Requirements tab — ordered checklist items shown to the client admin before deployment (e.g. "Pro or Enterprise plan required", "Meta WABA account with approved number").

Designing Template Flows (Flows Tab)

The Flows tab connects to the template_flows table — actual canvas-designed flows, not just metadata.

  • Click + New Flow — enter a flow name and optional tag (e.g. "Entry Flow", "Utility", "RAG"). The flow is created and you're taken directly to the canvas editor.
  • Each existing flow shows its name, tag, and status badge (Draft or Ready).
  • Click 🎨 Design on any flow to open the canvas editor for that flow.
  • Click to delete a flow (with confirmation).

When a template is deployed to a tenant, all Ready flows are copied into the tenant's flow library automatically. Draft flows are not deployed.

Template Flow Canvas Editor (super/flow-editor.html)

The same full-featured flow canvas editor used by tenant admins — but scoped to template flows. It has a thin green-to-blue gradient strip at the top to confirm you're in the super admin context. See Flow Canvas Reference for complete instructions on building flows. When finished, click ✅ Mark Ready to promote the flow from Draft to Ready status, making it eligible for deployment.

🔖Preset Queriessuper/preset-queries.html

Preset queries are the quick-tap suggestion buttons shown in the Sandbox chat — they help admins and agents quickly test common questions without typing them out.

Super Admins define the system-level defaults — the baseline set of preset queries used by all tenants that haven't created their own overrides.

  • Normal queries — regular test questions (shown in blue)
  • Danger queries — edge-case or adversarial tests (shown in red, e.g. "Can I get a refund?" or off-topic questions)
  • Drag rows to reorder within each list
  • Add or remove queries freely — changes apply to all tenants using the system defaults
💡
Client Admins can override these with their own industry-specific questions. If they haven't set overrides, they see the system defaults you configure here.
💳Billingsuper/billing.html
  • Monthly recurring revenue (MRR) by plan
  • Per-tenant usage vs. plan limits (messages, agents, KB documents, LLM tokens)
  • Tenants approaching limits are highlighted for upsell
  • Subscription plan management — create or edit plans with different quotas and pricing
📜Audit Logsuper/audit-log.html

An immutable log of every action taken by any admin or super admin. Every mutating API call (create, update, delete, approve, suspend, deploy) is recorded automatically.

  • Filter by: tenant, actor, action keyword, date range
  • Each entry shows: who, what, which resource, when (timestamp), IP address, and full request payload
  • Records can never be edited or deleted through the UI
System Healthsuper/system.html
  • Queue depth — pending jobs per queue (default, ingestion, campaigns)
  • Job failure rate — percentage of failed jobs in the last hour
  • Database connections — active MariaDB connections vs. pool limit
  • API error rates — 4xx and 5xx rates on the backend
  • LLM latency — average response time per provider
  • Storage — disk usage for document uploads
🔑API Keyssuper/api-keys.html

All API keys issued to tenants for external integrations. Super admins can see which tenant owns each key, when it was last used, and revoke keys if needed.

Platform Settingssuper/settings.html
  • Meta App ID and App Secret (webhook signature verification)
  • Default LLM providers and fallback models
  • Maintenance mode toggle (takes all tenants offline)
  • Platform email / SMTP configuration
  • Data retention policies

Client Admin Portal

🤖
Client Admin Portal
Full control over your organisation's bot, team, content, campaigns, and conversation flows. All data is scoped to your tenant only.
This is where you operate the platform day-to-day. Everything here is specific to your organisation — you cannot see data from other tenants.
📊Dashboardadmin/dashboard.html

Your operational overview at a glance.

  • KPI cards: Total conversations (7 days), Bot Resolution Rate, Avg Handle Time, CSAT Score
  • Conversation volume chart: Daily conversations vs. escalations
  • Bot vs Human split: Doughnut chart showing AI vs. agent-handled traffic
  • Top unanswered questions: Low-confidence questions — signals KB gaps
  • Agent leaderboard and active campaigns with delivery progress
💡
A bot resolution rate above 70% is excellent. If yours is lower, check the KB Gap Log for what questions the bot is failing on.
📥Inboxadmin/inbox.html

Supervisor-level view of all conversations needing attention.

  • Unassigned: Conversations in the queue with no agent yet
  • Mine: Conversations assigned to you
  • All Open: Every active conversation across all agents — searchable by name or phone
💬Conversationsadmin/conversations (from inbox)
  • Complete message thread: bot (labelled "AI"), agent, and user messages with timestamps and delivery ticks
  • Send messages, transfer to another agent, add internal notes, close with optional CSAT survey
  • Expand any AI message to see which KB chunks sourced the answer and their similarity scores
  • Thumbs up/down feedback on AI responses — negative feedback feeds the improvement cycle
👥Contactsadmin/contacts.html
  • Search by name or phone; filter by tag, language, last active date, or opt-in status
  • View full conversation history per contact
  • Tags: Segment contacts for campaign targeting (e.g. "VIP", "Student")
  • Opt-in status: Required by Meta policy for outbound campaigns
  • Export contact list as CSV
📚Knowledgebaseadmin/knowledgebase.html · admin/kb-chunks.html · admin/kb-test-query.html · admin/kb-gap-log.html

The AI's memory. Upload documents — the bot searches them to answer customer questions.

Documents tab

  • Upload PDF, DOCX, or TXT. Files are extracted, split into chunks, vectorised, and stored for semantic search.
  • Status: Pending → Processing → Ready (or Error)
  • Each document shows how many chunks were extracted

Chunks tab

Browse raw text chunks the AI searches. Useful for verifying extraction quality.

Test Query tab

Type any question and see what the bot would find and say — without sending a real WhatsApp message. Shows top-5 matching chunks with similarity scores and the LLM's generated response.

Gap Log tab

Questions real customers asked where the bot's confidence was below threshold. Sort by frequency — recurring gaps are highest priority for KB expansion.

💡
Start with a simple plain-text Q&A file. You don't need perfectly formatted PDFs — the AI works very well with clean Q&A text.
🔀Flows & Flow Editoradmin/flows.html · admin/flow-editor.html

Flows are scripted conversation paths — interactive forms delivered via WhatsApp. Use them for structured processes: admission enquiries, appointment booking, complaint logging, lead capture.

Flows list (admin/flows.html)

  • All your flows with trigger keywords, status (Draft / Active / Inactive), and last updated date
  • A flow triggers when a user sends one of its keywords (e.g. user sends "BOOK" → booking flow starts)
  • Activate or deactivate flows without deleting them
  • If your tenant was set up with an industry template, pre-designed flows will already appear here

Flow Editor (admin/flow-editor.html)

A full drag-and-drop canvas editor for designing conversation paths. See Flow Canvas Reference below for complete instructions on using the editor.

📣Campaignsadmin/campaigns.html · admin/campaign-new.html

Send proactive WhatsApp messages to a segmented audience. Campaigns require pre-approved Meta templates and opted-in recipients.

Creating a campaign

  1. Give the campaign a name (internal only)
  2. Select a pre-approved WhatsApp template
  3. Define your audience using contact filters: tags, language, last active date, opt-in status. Estimated reach is shown before launch.
  4. Optionally set up A/B variants (two templates, 50/50 split)
  5. Set send time (now or scheduled) and launch

Campaign stats

  • SentDeliveredReadFailed
You may only send campaigns to users who have explicitly opted in. Sending to non-opted-in users violates Meta policy and can get your number blocked.
💧Drip Sequencesadmin/drip-sequences.html

Automated multi-message sequences sent over time. Each step has a template and a delay from the previous step.

Example: New student onboarding — "Welcome!" (immediate) → "Complete your registration" (24 hours) → "Classes start Monday" (5 days later)

  • Create the sequence, add steps with delays (hours or days), enrol contacts
  • View per-contact progress and completion rate
  • Unenrol a contact at any time
📋WA Message Templatesadmin/templates.html · admin/template-new.html

WhatsApp message templates — pre-written messages that must be approved by Meta before use in campaigns.

  • Categories: Marketing, Utility (transactional), Authentication (OTP)
  • Each template can have multiple language translations
  • Variables ({{1}}) are substituted at send time
  • Status: Pending → Approved → Rejected (with Meta's rejection reason)
🤖Bot Configurationadmin/bot-config.html

Core settings that define how your bot behaves. Organised into tabs:

Identity tab

  • Bot Name: The name the bot uses when introducing itself
  • System Prompt: AI persona, tone, rules, and scope
  • Fallback message: What the bot says when it can't answer
  • Escalation message: What the bot says when handing off to a human

Rules tab (admin/bot-rules.html)

  • Confidence threshold: Minimum similarity score (0–1) to answer vs. escalate. Default: 0.70.
  • Max bot turns: Escalate after this many exchanges without resolution
  • Escalation keywords: Keywords that immediately transfer to an agent (e.g. "AGENT", "HUMAN")

Business Hours tab (admin/bot-hours.html)

Set operating hours per day. During closed hours the bot sends an after-hours message.

Bot Messages tab (admin/bot-messages.html)

Customise all standard bot messages: greeting, opt-out confirmation, after-hours notice, CSAT survey text, escalation notice. Supports multiple languages.

Preset Queries tab

Links to the Preset Queries editor — see Preset Queries below.

🔖Preset Queriesadmin/bot-preset-queries.html (tab in admin/bot-config.html)

Preset queries are the quick-tap suggestion buttons in the Sandbox — they let you test common customer questions without typing them each time.

As a Client Admin, you can create custom preset queries for your specific industry and use case. Your custom set overrides the system defaults set by Super Admin.

  • Normal queries — typical customer questions for your business (shown in blue in Sandbox)
  • Danger queries — adversarial or edge-case questions to test bot robustness (shown in red)
  • Drag rows to reorder within each category
  • Add or remove queries at any time
  • Reset to system defaults — removes your custom overrides and reverts to the Super Admin defaults

A notice at the top of the page indicates whether you are currently using your own custom queries or the system defaults.

💡
Set up 5–10 representative questions from your actual customers as presets. This makes sandbox testing much faster for your whole team.
AI Settingsadmin/ai-models.html · admin/ai-prompt.html · admin/ai-tuning.html · admin/ai-feedback.html

AI Models

Select which LLM your bot uses for chat and embedding. If you have your own API key, enter it here.

AI Prompt

Dedicated editor for the system prompt with character count and best-practice guidance.

AI Tuning

  • Temperature: 0.2–0.4 is recommended for customer support (factual and consistent)
  • Max response tokens: Caps reply length
  • Retrieval K: How many KB chunks to retrieve per query (default: 5)

AI Feedback

All thumbs-down feedback from agents on AI responses — with the original question and bot answer. Use this to improve your KB or system prompt.

📈Analyticsadmin/analytics.html · admin/analytics-rag.html · admin/analytics-agents.html · admin/analytics-reports.html

Overview

Conversation volume, bot resolution rate, CSAT score, average handle time, and top escalation reasons — all over the selected date range.

RAG / AI Performance

Total AI queries, % above confidence threshold, average similarity score per day, token usage, and most cited KB documents.

Agent Performance

Conversations handled per agent, first response time, handle time, and CSAT per agent.

Reports

Export conversation logs, message logs, and analytics data as CSV or PDF.

👤Team / Agentsadmin/agents.html
  • Invite a new agent by email — they receive an invitation with a temporary password
  • Roles: Agent (conversations only), Supervisor (all conversations + stats), Tenant Admin (full access)
  • Enable / disable accounts, enable 2FA (generates QR code for authenticator app)
  • See each agent's current status (online/away/offline) and performance summary
🎮Sandboxadmin/sandbox.html

Test your bot without sending real WhatsApp messages. Simulates the full pipeline: message → language detection → flow match → RAG query → response.

  • Type a message as if you were a customer and see the bot's response in real time
  • See behind-the-scenes detail: language detected, flow triggered, KB chunks retrieved with similarity scores, model used, token count
  • Test escalation, opt-out, and multilingual responses
  • Preset Query buttons — quick-tap your configured preset queries (normal queries in blue, danger queries in red). Tap any button to instantly send that message to the bot.
💡
Use the sandbox every time you update your knowledge base or system prompt. Test at least 10 representative customer questions before deploying changes to production.
🔗Integrationsadmin/integrations.html

Connect external systems to the bot — used in API Call flow nodes to push or pull data during conversations.

  • Add a named integration with base URL, auth type (None, API Key, Bearer, Basic Auth), and optional headers
  • Reference integrations by name in flow nodes without exposing credentials in the flow config
  • Test an integration from the UI before using it in a flow
Settingsadmin/settings.html
  • Organisation profile: display name, logo, timezone, default language
  • WhatsApp connection: Phone Number ID and permanent access token from Meta Business account
  • Webhook URL: https://ready1go.com/whatsapp_agent/api/v1/webhook/whatsapp
  • IP Allowlist, GDPR / data deletion requests, API key management
  • Change password and 2FA

Agent Portal

🎧
Agent Portal
Fast, focused workspace for handling live customer conversations. Accessed at /agent/
The agent portal is designed for speed. Everything needed to handle a conversation is on one screen. Agents have no access to settings, analytics, or bot configuration.
📋My Queueagent/queue.html
  • Waiting (left panel): Unassigned conversations sorted oldest first. Each card shows contact name, last message, and wait time.
  • My Conversations (right panel): Conversations currently assigned to you.
  • Click Claim on a waiting card to take it — it moves to your panel and is removed from the queue for other agents.

Availability status

  • Online: Ready to receive conversations
  • Away: Temporarily unavailable (won't be auto-assigned)
  • Offline: Done for the day
💡
Always set yourself to Away or Offline before leaving your desk — conversations assigned to offline agents create poor customer experience.
📊All Queue (Supervisor)agent/all-queue.html
  • Full view of all waiting and active conversations across all agents
  • See which agents are online, away, or offline and how many conversations each has
  • Transfer a waiting conversation directly to a specific agent
💬Conversation Viewagent/conversation.html

Left panel — Contact info

Contact name, phone, language, total conversation count, tags, and previous conversation history.

Centre — Message thread

  • Full history: user messages (left), bot messages (right, green tint), agent messages (right, blue tint)
  • Delivery status icons: clock (pending), single tick (sent), double tick (delivered), blue ticks (read)
  • AI messages show a small "AI" badge — click to expand source citations

Right panel — Actions

  • Reply box: Type and press Send (or Enter). Message goes via WhatsApp immediately.
  • Quick replies: Saved response templates — click to insert
  • AI Assist: Bot suggests a reply based on conversation context — you review before sending
  • Add Note: Internal note visible to agents only, not sent to customer
  • Transfer: Hand off to another agent
  • Close: Resolve the conversation. Optionally sends a CSAT survey to the customer.
👁Supervisor Viewagent/supervisor.html
  • Agent cards: name, status, open conversations, avg response time today
  • Live queue depth and longest waiting conversation
  • Click any agent to see their current conversations (read-only)
  • Broadcast a message to all online agents as an in-page notification

Flow Canvas Reference

The flow canvas editor is used in two contexts: Client Admins designing tenant flows (admin/flow-editor.html) and Super Admins designing template flows (super/flow-editor.html). The interface and instructions are identical — the super admin version shows a green-to-blue strip at the top and saves to the template flow library instead of a tenant flow.

Canvas Navigation

Adding Nodes

The left panel lists all available node types, grouped by category. Drag any node from the panel and drop it onto the canvas. The "Drag nodes to start building" hint disappears after the first node is placed.

Node Types

💬 Send MessageSend a fixed text message to the user
🔘 ButtonsPresent up to 3 tap-to-reply buttons
☰ ListPresent a scrollable list of up to 10 items
🖼 Send MediaSend an image, video, or document
⌨ Collect InputAsk a question and save the reply to a variable
📱 WA Flow FormLaunch a native Meta WhatsApp Flow form
⑂ ConditionBranch based on a variable value (True / False)
$x Set VariableAssign a value to a conversation variable
↩ Go To NodeJump to another node by ID (loops)
⏱ DelayWait a number of seconds before continuing
✨ AI ResponseLet the AI answer from the knowledge base
🔌 API CallCall an external system (CRM, booking API)
🧑‍💼 EscalateHand off to a human agent queue
⏹ EndClose the flow (optionally sends CSAT)

Selecting & Editing Nodes

Click any node on the canvas to select it — its properties appear in the right-hand panel immediately. Click a different node to switch to its properties. Click on the empty canvas background to deselect.

The properties panel shows:

Click Apply to save property changes to the node. Click 🗑 to delete the selected node and all its connections.

Moving Nodes

Click and drag any node to reposition it on the canvas. Edges automatically follow the nodes they connect.

Connecting Nodes

Connections (edges) go from an output port (the green dot on the bottom of a node) to the input of another node.

  1. Hover over a node with output ports — the green dots appear at the bottom.
  2. Click and drag from a green port dot. A dashed line follows your cursor.
  3. Release the mouse over the destination node. The edge snaps in place as a curved line.

Each output port can have one outgoing edge. Drawing a new connection from the same port replaces the old one.

Removing Connections

Select either the source or target node. In the Connections section of the properties panel, find the connection and click next to it.

Saving

Other Toolbar Actions

How Messages Flow Through the System

When a customer sends a WhatsApp message, here's exactly what happens:

1
Message arrives at Meta
Meta delivers the message to your webhook URL (ready1go.com/whatsapp_agent/api/v1/webhook/whatsapp) as an HTTP POST. The signature is verified to confirm it's genuinely from Meta.
2
Message is queued
The webhook returns 200 OK immediately (so Meta doesn't retry). Actual processing is dispatched to a background queue job.
3
Contact is looked up or created
The sender's phone number is looked up. If it's their first message, a new contact record is created and their conversation session opened.
4
Language detected
The message text is analysed to identify the language, which determines which templates and KB content are used for the response.
5
Router makes a decision
Checked in order: (a) Opt-out keyword → opt the user out, no response. (b) Escalation keyword → transfer to agent queue. (c) Business hours → if closed, send after-hours message. (d) Flow trigger keyword → start the matching flow.
6
AI answers (if no flow matched)
The message is embedded and compared against the knowledge base. Top matching chunks are retrieved. The AI model generates a response using the retrieved content and your system prompt. If the similarity score is below threshold, the conversation is escalated instead.
7
Response is sent
The response is sent back via the Meta Cloud API. Stored in the conversation record with delivery tracking.
8
Agent handles it (if escalated)
Escalated conversations appear in the agent queue in real time. An agent claims it and replies — all replies go through the same Meta API, seamlessly continuing the WhatsApp conversation.

Frequently Asked Questions

Why is the bot not answering my test questions?

Check that documents show "Ready" status in the knowledge base. Then use Sandbox or the Test Query tool to see what the bot finds. Low similarity scores usually mean the documents don't contain the information, or the question phrasing differs significantly from the content's wording.

A customer's message is in the queue but no agent is picking it up

Check the Supervisor View to confirm agents are online. If all agents are Away or Offline, the queue accumulates. Set at least one agent to Online.

My campaign read rate is 0%

Read receipts are only visible when the recipient has them enabled in WhatsApp settings — many users turn this off. A 0% read rate can be normal. Focus on reply rate as a better engagement signal.

Why did my campaign fail?

Common reasons: (a) Template not yet approved by Meta. (b) Invalid recipient number or user blocked your number. (c) User has not opted in to receive messages.

How do I delete a customer's data (GDPR)?

Go to Admin Settings → GDPR / Data Requests. Enter the customer's phone number to remove all messages, contact data, and conversation records. The action is logged in the audit trail.

What is the difference between a Flow and the AI bot?

A Flow is a pre-scripted dialogue — the bot follows a fixed path you designed, collecting specific inputs in a specific order. It's deterministic. The AI bot is open-ended — it reads your knowledge base and tries to answer any question. Use Flows for structured processes (booking, forms) and the AI for open Q&A.

How do I add a new language?

Go to Admin → Languages and add the language code. Then: (a) Upload KB documents in that language, (b) configure bot messages in that language, (c) add translated WA templates for multilingual campaigns.

How do industry templates get deployed?

Super Admin designs and publishes an industry template (with system prompt, FAQ pairs, WA templates, and conversation flows). From the tenant detail page or tenant creation flow, a Super Admin deploys the template to a tenant. All content is copied into the tenant's account. Pre-designed flows marked as "Ready" appear immediately in the tenant's flow library.

What happens when I "Mark Ready" on a template flow?

The flow's status changes from Draft to Ready. Ready flows are the ones copied to tenant accounts when the template is deployed. Draft flows are visible in the template editor but are not deployed. Use Draft status for flows still being designed.

Can a user switch from bot to human mid-conversation?

Yes — configure an escalation keyword (e.g. "AGENT", "HUMAN", "HELP") in Bot Configuration → Rules. When a user types this keyword, the conversation immediately transfers to the agent queue regardless of what the bot was doing.