WABA — WhatsApp Business Account
A WhatsApp Business Account (WABA) is the container inside Meta Business Manager that owns your phone numbers, templates, and conversations. Xobito connects to your WABA — it doesn’t own it. If you ever disconnect, your WABA stays with you in Meta.Phone Number
Every WABA can have one or more phone numbers. Each phone number has:- A display name (what recipients see — e.g. “Xobito Support”).
- A quality rating (Green, Yellow, Red — set by Meta based on user feedback).
- A messaging tier (250, 1K, 10K, 100K, Unlimited — Meta-imposed cap on unique business-initiated conversations per 24 hours). New numbers usually start at 250 and graduate upward as your quality stays green.
Template Message
A template is a pre-written message approved by Meta. Templates are required because WhatsApp does not allow arbitrary promotional text to be sent to contacts who haven’t messaged you recently. Templates can include:- Text body with variables (
{{1}},{{2}}…) - Header (text, image, video, or document)
- Buttons (quick reply, URL, phone)
- Footer text
Template categories
When you submit a template from Xobito, you pick a category. The current template flow supports two:| Category | Triggered by | Typical use |
|---|---|---|
| Marketing (MARKETING) | Template submitted with category: MARKETING | Offers, launches, promotions |
| Utility (UTILITY) | Template submitted with category: UTILITY | Order confirmations, transactional updates, reminders |
Meta’s wider platform also recognises Authentication and Service categories, but Xobito’s current template submission flow sends templates under Marketing or Utility only. If you specifically need an Authentication (OTP) template, manage that template directly in Meta Business Manager.
Session / 24-hour window
The 24-hour session window is a WhatsApp rule: once a contact sends you a message, you can reply with free-form content (text, images, etc.) for the next 24 hours. Outside that window you must use an approved template to restart the conversation.Xobito computes the session state dynamically — there’s no
session_expires_at field stored in the database. The 24-hour check is evaluated from last_msg_time on the chat record (the timestamp of the customer’s most recent incoming message). If more than 24 hours have elapsed since that time, the inbox blocks free-form replies and prompts you to send a template.Conversation billing
Meta charges per conversation, not per message — a conversation being a 24-hour window between you and one contact. Meta itself assigns the conversation category (Marketing / Utility / Authentication / Service) server-side based on the template used and the context of the exchange, and meters billing accordingly. Xobito surfaces Meta’s conversation costs on the Billing page. Xobito does not stamp its own conversation category on each chat record — that labelling lives entirely on Meta’s side.Webhooks
There are two distinct webhook flows in Xobito — don’t confuse them.Incoming webhook (Meta → Xobito)
Meta calls Xobito’s webhook URL when events happen on your WABA: a message is received, a delivery status changes, a read receipt fires, a template is approved or rejected. This URL is configured automatically when you connect a WABA. Not customer-configurable.Outbound webhook (Xobito → your URL)
You can forward certain Xobito events to a URL of your own for integration with CRMs or automations. Configure at Settings → Webhook Settings. Outbound webhooks fire on:- Contact — create, update, delete
- Status — create, update, delete
- Source — create, update, delete
Contact, Group, Status, Source
Xobito-specific concepts for organising people:Contact
A single person with a phone number, optional first/last name, email, and custom fields.
Group
A named collection of contacts — used to target a campaign.
Status
A label such as “Hot lead”, “Customer”, or “Unsubscribed” — one per contact.
Source
Where the contact came from — “Website”, “Referral”, “Ad Campaign” — useful for reporting.
Bot Flow, Message Bot, Template Bot
Three kinds of automations:| Type | Trigger | Use for |
|---|---|---|
| Bot Flow | Customer sends any message or matches a keyword | Multi-step visual flows with branching logic |
| Message Bot | Keyword match on an incoming message | Quick auto-reply with text or media |
| Template Bot | Time delay or event trigger | Auto-send a template (e.g. follow-up after 2 days) |
Staff, Role, Permission
- Staff — a user invited into your Xobito workspace.
- Role — a named bundle of permissions (e.g. “Agent”, “Manager”, “Admin”).
- Permission — a specific ability such as “View campaigns”, “Edit contacts”, “Reply in chat”.
Tickets
Xobito’s ticketing module handles longer-running support cases that don’t fit a live WhatsApp thread. Tickets have their own statuses (Open / Answered / Closed), priorities (Low / Medium / High / Urgent), and IDs in the formatTKT-000001. See Support Tickets Overview.
Campaigns
A campaign sends an approved template message to a list of contacts — typically a group or a filtered segment. Campaigns can be scheduled in advance or sent immediately. Once a campaign runs, Meta processes each recipient individually and reports per-message delivery and read statuses back through the incoming webhook, which Xobito then surfaces in the campaign report. Because campaigns always send templates, the message’s category (Marketing or Utility) is inherited from the template you picked.Quick mental model
If you remember four things, you’ll have a working grasp of how Xobito sits on top of WhatsApp:Meta owns the WABA
Xobito is a client of your Meta account. Your WABA, your numbers, your templates all live with Meta.
Templates gate outbound
To message someone outside the 24-hour window, you send an approved template.
Sessions are computed
The 24-hour window is derived from
last_msg_time — not stored as a separate field.Outbound webhooks are narrow
Only Contact, Status, and Source events fire outbound. Messages, campaigns, and tickets do not.