WhatsApp hub — your own WhatsApp API
Connect your own Meta WhatsApp Business API: a shared inbox for customer chats, automatic order updates from your own number, and one home for broadcasts, auto-replies and AI answers.
Watch0:3010 min readUpdated 21 Oct 2026
In this guide
Not looking for the API? The green WhatsApp button on your website only needs your number — set it in your website's Settings → Social & Links → WhatsApp (it uses your phone number unless you type a different one), then switch the button on in the editor → Site Settings (Show WhatsApp Button or Show Floating WhatsApp Button, depending on your design). It opens a plain WhatsApp chat with you and costs nothing. The hub on this page is the Meta API for a business inbox, templates and broadcasts.
What the WhatsApp hub is
The hub is a full WhatsApp messaging desk built into your dashboard — useful the day you're tired of answering every customer from one phone. It works on the WhatsApp Business API (the official Meta service behind tools like Wati and AiSensy), not the small-shop WhatsApp app. Open WhatsApp from your dashboard menu.
The same hub is also inside the CRM, under Customers → WhatsApp, working with that business's own number. The CRM's Integrations page only shows whether a number is connected and brings you here. A team member sees only what their role can do: chats need access to contacts; auto-replies, chat menus, chat settings, store notifications and the business profile are setup, so changing them needs the Manage staff, attendance, branches & setup permission (owners, Admins and Managers by default); connecting the number, message layouts, broadcasts and follow-up sequences are for owners and admins (the Export / download data permission).
One thing to be clear about: the hub is your account, not ours. You connect your own Meta number, messages carry your business name, and Meta's message charges go to your own Meta billing. LentloSites never takes a cut of your messaging. The platform's own WhatsApp number (“Lentlo”) never messages your customers: it writes only to account holders — sign-in codes and alerts about their own account, such as a new order, enquiry or booking on their website. Messages to your customers come from your own number once it is connected.
Inbox
Every customer chat in one place — you and your team reply from the browser, on any device.
Store notifications
Order placed, shipped, delivered — your website messages the customer automatically, from your number.
Broadcasts & templates
Approved messages to many customers at once — offers, festival wishes, restock alerts.
Auto-replies, drips & AI
Keyword answers, day-by-day follow-ups, and AI replies that know your store.
Connect your WhatsApp API
Connecting is a guided, three-step wizard in the WhatsApp page — you paste one token, pick your number from a list, and the rest is checked for you. You need a WhatsApp Business API account from Meta first; if you don't have one yet, the wizard's “Not yet — show me how” path (and the full Meta setup guide) walks every Meta screen — it's free and takes about 20 minutes.
Paste your permanent access token
Made in Meta Business Settings → System users → Generate token → expiry Never, with the whatsapp_business_messaging + whatsapp_business_management permissions. The wizard checks the shape instantly (an ID or a half-copied token is caught before Meta is even asked), then asks Meta whether the token is permanent and what it's allowed to do. A temporary token still connects, with a clear warning about when it will stop.
Pick your number
The wizard lists every WhatsApp account and number the token can see — business name, number, quality rating, daily limit, display-name status. Tap yours. No Phone number ID to copy, no WhatsApp Business Account ID to hunt for (both are recorded for you). If nothing is listed, the wizard tells you the one Meta step that fixes it: give the System User your WhatsApp account under Add assets.
App ID + App secret (recommended), then Connect
From your Meta app → App settings → Basic. With these, the hub sets up the webhook for you — no Meta Configuration screen — verifies every incoming event is signed by Meta, and lets you upload image/PDF headers for message layouts. You can skip and add them later in Settings.
Read the result checklist, then send yourself a test
After connecting you see: number verified ✓, webhook set up ✓ (or the exact address and verify token to paste in Meta, with copy buttons), whether the number is registered with the Cloud API, and whether the token expires. This result screen stays until you tap Continue to the hub, so read every warning first. Then use Send yourself a test — it sends one of your approved message layouts (Meta's “hello_world” sample only exists on test numbers). WhatsApp can't deliver to the very number that sends, so use another phone.
Every rejection is explained in owner words with a why and a fix — “you pasted a phone number where the Phone number ID goes”, “this token has expired”, “your Meta app is deactivated” — and Meta's exact message stays one tap away for support.
How the hub is laid out. Eight tabs, by what you want to do: Overview (who is waiting, the last 30 days, what Meta bills) · Inbox · Broadcasts · Automations — messages your number sends by itself (Order & store updates from your website, Follow-up sequences) · Auto-replies — answers when a customer writes (Welcome & away, Keyword replies, Chat menus, AI replies) · Templates · History (Messages and Charges) · Settings (your number, its health and the webhook). A tab with sections shows them as one row of buttons under the tabs.
Settings — number health, webhook, registration
Once connected, Settings is the control room. At the top, Update token / number runs the same three-step wizard again — to swap a temporary token for a permanent one, or to move to another number — and Disconnect stops sending (see the last question below). The Number health card reads live from Meta: quality rating (High / Medium / Low), your daily limit (how many people you can message first in 24 hours), display-name status, green tick, whether the number is registered, token expiry, and whether the webhook is receiving (with the time of the last event). It says Working only when any event from Meta — a message or a delivery receipt — arrived in the last 7 days and nothing Meta sent to your webhook in the last day was lost; otherwise it says what to check. Re-check with Meta refreshes it. One more tile, Proof a message is from Meta, says whether every incoming message is checked as really coming from Meta: if it reads Not checked — add your App secret, the Webhook card just below shows two boxes for your App ID and App secret (Meta app → App settings → Basic). Nothing is saved unless Meta accepts them.
Webhook card
Option A: we set it up on your Meta app (App ID + secret). Option B: the address, verify token and three fields to paste under WhatsApp → Configuration. Turns green the moment Meta delivers the first event; after a quiet week it shows an amber note, never the setup steps again.
Register number
If sends answer “Account not registered”, register the number once with a 6-digit PIN right here — the fix takes ten seconds.
Send yourself a test
Picks one of your approved layouts (or lets you choose). A failure shows what happened, why, and the fix.
Business profile
Photo, about line, address, email, website, category — what customers see when they tap your name.
The Overview tab shows a “Getting set up” checklist that ticks itself: connected → webhook receiving → first delivered message → first approved layout used. Once all four are done the checklist disappears — you're fully live.
The Inbox — all your customer chats in one place
The Inbox is where conversations live: a customer messages your WhatsApp number, the chat appears here, and anyone on your team can answer from a laptop or phone browser. No more one-person-holds-the-phone.
Who is waiting comes first. The chips above the list sort your chats: Needs reply (a customer wrote and no person has answered yet), Unread, Mine (chats given to you), Unassigned and Resolved. A waiting chat shows how long the customer has waited — amber while a free reply is still possible, red once a day has passed. A keyword reply, a chat menu and a welcome or away message never clear it: a chat stops waiting only when a person replies, taps Mark handled, or resolves it — and if WhatsApp could not deliver that reply, the chat goes back to waiting. When your AI answers a customer by itself, a reply is no longer owed — but the chat stays Unread until a person has opened it, so nothing the AI said goes unseen.
The list refreshes by itself every 20 seconds while the tab is open and the moment you come back to it; if a refresh fails you keep what was loaded and see a Retry. Drafts are kept per conversation: what you typed for one customer stays with that chat when you open another. Long histories load in pages — Load older chats at the bottom of the list, Load earlier messages at the top of a chat.
Customers messaging from outside India (an NRI relative ordering for family, a buyer in Dubai) appear as their full international number, for example +44 7700 900123, and you reply to them exactly like anyone else. Indian numbers keep the familiar 10-digit form.
On a phone an open chat fills the screen, like WhatsApp itself — the arrow at its top takes you back to your chats, and on a phone the search and the chips scroll away with the list. A phone keeps the line above the messages short so the conversation gets the room: it shows how long a customer has waited and Mark handled, the reply-window countdown only in its last two hours, and Give to someone sits in the ⋯ menu until someone looks after the chat. Inside a chat you can type replies, attach a photo, a document or audio, and insert a saved reply with one tap. A message that did not go says so under it, with the reason and what fixes it — your typed words stay in the box. Details opens the customer side: who looks after the chat (Looked after by), tags, Team notes the customer never sees, Follow up later (a reminder in your follow-ups), their recent website orders, and Open customer for the full record. Resolve closes a chat — with or without asking the customer for a rating — and a new message from them opens it again. New chat starts a conversation with a number that has never written to you, using an approved layout (the 24-hour rule below). Under it, Add many numbers at once opens your customers' import with a box to paste a whole list of names and numbers (and a tag) — they are saved as customers, ready for a broadcast by that tag (an offer to more than 50 numbers you typed or imported is checked first — see Offers).
On a computer the inbox uses the width of your screen: the chat opens beside the list, and the customer panel opens beside it only when you click the ⓘ button — it stays open for your next chats until you close it. The filters above the list stay on one line so your chats keep the room; when the filters or the section tabs do not all fit, ‹ › buttons at their ends (or the mouse wheel over them) bring the rest.
New enquiries become customers. When someone new messages your number, they are saved in Customers as a new enquiry and linked to the chat, so an enquiry is never lost in the inbox. Saving someone is not their agreement to receive offers. You can switch this off in Auto-replies → Welcome & away (Save new enquiries as customers); then Add to customers in the chat's Details saves one person at a time. Customers hold Indian mobile numbers for now, so a chat from a number outside India stays in the inbox.
People who wrote before this started are offered in one line above your chats: 38 people who wrote to you are not in Customers yet — Add them all saves each one as an enquiry dated on the day they first wrote and links their chat. Nobody is sent a message and no automatic rule runs. The × beside it (Not now) hides the line on that device for a month. The hub's first screen also reminds you when your number still needs its App secret.
You are told when a customer writes. A notification reaches every phone or computer where you allowed this dashboard's notifications — it goes to the team member a chat is given to, otherwise to you, at most once every few minutes per chat, and not when your AI has already answered by itself. Giving a chat to a team member tells them too. Switch it off under Auto-replies → Welcome & away → Tell me when a customer writes. When you open a chat with unread messages, the customer sees the blue ticks — WhatsApp is told you have read them.
You are told when your number stops sending. If Meta refuses your whole number — an expired access token, a number not registered yet, a payment problem on your Meta account, or Meta disabling the account — a red line appears on every dashboard page with the one fix and a Fix it button, and a notification reaches your devices once a day. A temporary token (the 24-hour one from Meta's API Setup page) is warned about on its last day, before it runs out. When messages go out again you are told that too. A message that fails for one customer only (a wrong number, the 24-hour rule) never raises this. Meta's other account news reaches you the same way, once a day: a restriction, a policy problem, a rejected display name or a lower daily sending limit — each with where to act in Meta's WhatsApp Manager.
Keep a customer's photo or document. WhatsApp holds a file your customer sent only for a while. Under a photo or a document from a saved customer, tap Keep in files — a copy is saved on that customer's page, under their files, and the chat shows Kept in files. A kept file still opens later, even if the number is disconnected. Photos, PDFs, Excel and Word files up to 25 MB can be kept; a voice note or a video can't be kept yet. If the person is not in Customers, add them first.
Send a bill from the chat. When the person is a saved customer with bills still owed, the customer panel beside the chat lists them under Bills to collect, each with what is left to pay. Tap Put its link in my reply and the bill's link is added to your reply box, after anything you have typed — read it, then send. The customer opens the bill from the link. The button shows while free replies are open for that chat; when they are closed, open the bill and share it from its own page.
Send an order from its own page. On a website order, the order page's WhatsApp card sends the order's details (items, total, what is still to pay, status and tracking) or its invoice as a PDF from this number — and on an order whose delivery charge you add after the order, the delivery-charge card sends the final bill the same way. You read the message before it goes, and it lands in this customer's chat like a reply you typed. The same 24-hour rule applies; outside it, the card offers your approved layouts. From the inbox, the customer panel lists their recent website orders — tap Put its details in my reply and the same message is added to your reply box, after anything you have typed; read it, then send.
More than text is understood. A shared location shows its place with Open in Maps; a contact card shows the name and number; a thumbs-up shows as a reaction and never starts an automatic reply; and when an enquiry started from one of your Facebook or Instagram ads, the chat says Came from your ad with the ad's headline. A file a customer sends opens in the browser only when it is a photo, audio, video or PDF — anything else downloads.
The Overview tab opens with who is waiting right now — 4 customers are waiting for a reply — the longest for 3 h, amber while a free reply is still possible and red once a day has passed; tap it to open the inbox. It is the same number as the inbox's Needs reply chip. Below it, your last 30 days — sent, read, replies in, failed — so you can see the desk working.
The 24-hour rule every WhatsApp business follows
WhatsApp has one rule that shapes everything: when a customer messages you, a 24-hour window opens in which you can reply freely — any text, any photo, at no extra Meta charge. Outside that window, you can only start a chat with a pre-approved message template (Meta charges for these).
The hub handles this for you. Every open chat shows how long the free reply window still has. Once it has closed, the reply box says Reply window closed with when the customer last wrote, and offers Send an approved layout right there — pick one, fill its blanks, read the preview of what the customer will get, and send; the chat opens for free replies again the moment the customer answers. Layouts are created once in the Templates tab and reused forever.
Reply fast, save money. Answers inside the 24-hour window are free — the Overview tab's Usage & costs card counts your free replies and estimates your Meta bill for paid layout messages, so nothing on your Meta invoice ever surprises you.
Automations — order updates, cart recovery, price drops, reviews
Automations connect your website to your WhatsApp number: when something happens to a customer's order, cart or booking, they hear from your WhatsApp automatically — with the real details, not a one-liner. Set them up in Automations → Order & store updates once you're connected.
One WhatsApp per update. When your number sends an update — order placed, confirmed, shipped, delivered, ready for pickup, cancelled, the final bill, an order request received or declined — the customer gets that one message. If your number does not send it (the automation is off, it has no approved layout, or Meta refuses it), no WhatsApp goes for that update — we never message your customers from our number. The Notifications page shows, row by row, which updates your number sends.
The list is native to your business. The card shows only the automations your websites can actually fire, worded the way you run it: a restaurant sees Order received, Accepted by the kitchen, Ready to collect and Rider on the way; an auction house sees watchers, outbid, ending-in-an-hour and winner-pay-now; a rental business sees documents-before-pickup, pickup and return reminders and the deposit settlement; a loan desk sees file-stage updates; a news site sees reader-pass purchases and renewals. The ones worth switching on first carry a Recommended chip, and one line at the bottom reveals the automations for other business types if you ever need them. An account with no website yet sees only the alerts to its own number — its CRM automations live in CRM → Automations.
Order placed — full details
Order number, total, the items, delivery address, payment method and a track-order link. COD orders can also ask the customer to tap Confirm / Cancel.
Shipped — with tracking
Courier name, tracking / AWB number and the tracking link (the courier's own, else your Track Order page). Out for delivery and delivered too.
Final bill — delivery charge added
Only for orders whose delivery charge you add after the order, and order requests you confirm first: the moment you save the charge (or confirm the request), the customer gets the delivery charge, the new total and the link to pay or confirm.
Order requests — received, can't accept
Only if your shop confirms orders first: the customer hears that you are checking their order request (nothing charged yet), and — if you can't accept it — why, with your line. A declined request is never sent “Order cancelled”.
Wallet credited
Money really added to one customer's wallet on your website — a top-up, a refund, a bonus or your own credit: that customer hears the amount and the new balance. Never a message to a list.
Abandoned cart recovery
A customer reached checkout and left: after your chosen delay they get the cart items, total and a finish-checkout link.
Price-drop alerts
You lower a price: customers who saved the product (signed-in wishlist) or left it in a cart hear the old price, the new price and the link.
Review request
A few days after delivery, a thank-you with a link to the product page.
Bookings & alerts to you
Booking confirmed with the service, date and time; reminders, reschedules; plus new-lead and booking-change alerts to your own number.
Auctions
Bidding opened on a watched lot, outbid with the bid to beat, ending in an hour, and the winner's confirmation with the payment link — plus sold / unsold / unpaid-winner alerts to you.
Rentals
Documents needed before pickup, pickup and return reminders with the balance and deposit, overdue, extensions, the settlement after check-in and a review request.
Loan files & reader passes
A loan applicant hears every stage change with the file reference; a news reader gets the pass confirmation with the end date and a renew link before it ends.
Give each automation an approved layout
Every automation is a business-initiated message, so it needs an approved layout from the Templates tab. The library has one written for each automation — “Order confirmed — full details”, “Order shipped — with tracking”, “COD — please confirm” (with Confirm / Cancel buttons), “Final bill — delivery charge added”, “Abandoned cart reminder”, “Price drop on a saved item”. Pick a layout from the dropdown on the row, or tap the “create from the library” link under it.
Choose what fills each variable
Tap Variables on the row. For every {{slot}} in the layout you pick a fact from a list that fits the automation — for orders: customer first name, order number, order total, the items list, delivery address, expected delivery, payment method, amount to pay on delivery, courier name, tracking number, tracking link, cart items, cart total, checkout link, product name, old / new price, your business name or phone. A preview with sample facts (Priya, ORD-1041, Delhivery…) updates as you choose. Layouts you made before this update keep working exactly as before until you map them.
Set the knobs, then Save
Cart recovery has a delay (30 minutes to 2 days), review requests a number of days after delivery, price drops a minimum drop (5% by default). With more than one website you can limit an automation to some of them. Switch the row On and tap Save automations.
Send yourself a test
Type your own number in the test box at the top of the card and tap Send me this as a test on any row — you receive the exact message a customer would, filled with sample facts. Billed by Meta like any template message.
A customer who replied STOP is never messaged — not even order updates. Cart recovery, price drops and review requests also respect your quiet hours (Auto-replies → Welcome & away): they wait for 9am. Every automation messages a customer only once per order / cart / price, even if systems retry behind the scenes.
COD confirmation: when a cash-on-delivery customer taps Confirm order or Cancel order, the tap is written to the order's activity log and a cancel tap flags the chat as “needs you” in the Inbox. Nothing is cancelled automatically — you decide.
On a pharmacy website, no message names a medicine. An items list goes out as a count (“3 items”), a single item as “your order”, a saved product as “an item you saved”, and product links open your website's home page. An order waiting for the pharmacist to check its prescription gets no “order placed” or COD confirmation message — the customer is told it is waiting, and hears the outcome once it has been checked.
History and charges — see everything, pay Meta only
The History tab lists every message on your number — automation, broadcast, follow-up sequence, chat, test — with the automation and order number it belonged to, the values that were sent, its delivery status, Meta's verdict explained when it failed, and the estimated cost. Filter by kind (chats, website updates, CRM rules, broadcasts, follow-up sequences, auto-replies and AI, tests), automation, status, phone, order or dates; export a CSV. On any order's page, the WhatsApp card shows the sends for that order, lets you send an automation again, and has Send details / invoice.
History → Charges is your month-by-month statement: template messages by category (marketing / utility), free replies, failed sends (never billed), the estimated Meta bill, spend by automation and by layout, and Meta's own monthly figure when your account lets us read it. Set a monthly spend alert to get a warning in the hub when the estimate crosses your limit. Everything here is billed by Meta to your Meta account; this dashboard adds nothing.
If an agency set this up for you
When your website or CRM comes from an agency, they may connect your WhatsApp number for you, send the first test, or hand over a number they prepared — you see each of these in Activity, and the hub shows “connected by your provider” on the number. Your token stays encrypted on your account. The agency works your inbox only while they hold a seat on your Team page — remove or pause it any time: once you have, they cannot add themselves back, only your re-invite does. Make their seat a Viewer and they can look but cannot connect, disconnect or hand over your number. The webhook address in Settings is on your own domain when you have one.
Where to go next
The hub's deeper tools each have their own guide — this page is the map, those are the roads.
Broadcasts & templates
Send an offer to hundreds of customers, get messages approved, read delivery reports. See WhatsApp broadcasts.
Auto-replies, menus & drips
Instant keyword answers, tap-able chat menus, day-by-day follow-ups. See WhatsApp automations.
AI replies
Auto-replies → AI replies drafts answers from your store's real data — suggestions are free, and an auto-sent answer uses 1 AI answer — your free daily AI answers first, then your answer packs. See AI tools.
Contacts & CRM
Every chat can link to a contact with notes, credit and follow-ups. See CRM getting started.
Read next: WhatsApp broadcasts · WhatsApp automations · AI tools · CRM getting started. For order updates on the customer's phone via app notifications too, see Notifications.
Quick questions
Short answers to the doubts owners hit most often in their first week on the hub.
Does LentloSites charge me per message? No. Messages bill to your own Meta account at Meta's standard rates; replies inside the 24-hour window are free. Nothing in the hub is charged in rupees: optional AI auto-answers use 1 AI answer each — your free daily AI answers first, then your answer packs — and AI suggestions you send yourself are free.
Where do I get the “API key”? WhatsApp has no API key — the equivalent is the permanent access token from a Meta System User (the setup guide, Step 4). The wizard finds your numbers from it, so you never type IDs.
My template has been “Waiting for Meta” for days. Meta reviews message layouts, not this dashboard. The layout's card on the Templates tab says since when it has been waiting and whether that is longer than usual (most are decided within 24 hours), and after that lists what can help — finishing your business verification at Meta, and asking Meta about it from WhatsApp Manager. You get a notification when Meta approves, rejects or pauses it (and one if a review runs past two days), and a rejected card gives Meta's reason in plain words with the fix. More in WhatsApp broadcasts → what the approval statuses mean.
My template is approved but sends fail. Open Settings → Number health: the three usual causes are shown there — the number isn't registered (Register with a PIN), Meta has no payment method for your account, or the token expired. Each has a one-tap fix or the exact Meta screen.
Can I use my normal WhatsApp number? A number can be on the small-shop WhatsApp Business app or the API, not both. Most shops put a second number on the API and keep their personal one as is.
Do I need a website to use the hub? No — the hub works for every LentloSites account. Store notifications need a website with orders; the Inbox, broadcasts and automations work either way.
I manage my site at mysite.com/admin — where's WhatsApp? Same hub, same place: it's in your dashboard menu and opens at /admin/whatsapp on your own domain.
What happens if I disconnect? Sending stops immediately, and your old chats stay readable — the Inbox and History still open, with the reply box switched off until you reconnect. Your token stays saved (encrypted) for 30 days — a Resume connection button brings everything back in one tap, no re-pasting. After 30 days the token is erased automatically, and an “Erase saved token now” option is there if you want it gone immediately. Your Meta account and number are untouched either way.
More in CRM, WhatsApp & AI
Did this answer your question?
It takes one tap and it genuinely changes what we write next.