All docs Channels
Connect WhatsApp
Let Kalfa AI answer your customers on WhatsApp — step-by-step Meta setup, what customers see, the 24-hour rule and troubleshooting.
With the WhatsApp channel, customers message your WhatsApp Business number and get the same answers as in the website chat: Kalfa AI uses the same knowledge, workflows, order look-ups and handoff rules, and your team replies from the same inbox. The WhatsApp channel is included in every plan.
Before you start: you need a Meta Business account (business.facebook.com), a phone number that can receive an SMS or a call and is not used in the WhatsApp or WhatsApp Business app, and about 15 minutes. You will copy four values from Meta into Arasta. Only an Owner or Admin can connect WhatsApp.
How it works
- A customer sends a message to your WhatsApp number.
- Meta forwards it to Arasta. The conversation appears in your Inbox with a green WhatsApp badge.
- Kalfa AI answers on WhatsApp, exactly as it would in the website chat. Order details are shown only after the customer has been verified (see Verification on WhatsApp).
- When Kalfa AI cannot help, or the customer asks for a person, the conversation is handed to your team. You reply from the Inbox and your answer is sent to the customer's WhatsApp.
Step 1 — Create a Meta app with WhatsApp
- Open Meta for Developers and sign in with the Facebook account that manages your business.
- Click Create app. When asked what the app should do, choose the WhatsApp / "Connect with customers through WhatsApp" use case (or Other → app type Business). Select your business portfolio.
- In the app dashboard, add the WhatsApp product if it is not added yet, and open WhatsApp → API Setup.
- Click Add phone number, enter your business display name and category, then the phone number, and confirm it with the code Meta sends by SMS or call.
Tip: Meta also gives you a free test number. It can only message up to five phone numbers you add as recipients, which is enough to try Arasta before you add your real number.
Step 2 — Copy the IDs and create a permanent token
You need four values:
| Value | Where to find it in Meta |
|---|---|
| Phone Number ID | WhatsApp → API Setup, under the selected "From" number. It is a long number, not the phone number itself. |
| WhatsApp Business Account ID | WhatsApp → API Setup, next to the Phone Number ID. |
| Access token | A permanent system user token (see below). |
| App Secret | App settings → Basic → App secret → Show. |
Create a permanent access token. The temporary token on the API Setup page expires after 24 hours, so use a system user:
- Open Business settings (business.facebook.com/settings) → Users → System users → Add. Give it a name (for example "Arasta") and the Admin role.
- Click Assign assets: add your app (full control) and your WhatsApp account (full control).
- Click Generate new token, choose your app, set the expiry to Never, and tick the permissions
whatsapp_business_messagingandwhatsapp_business_management. - Copy the token. Meta shows it only once.
Keep it secret: never send these values by email or chat. Arasta stores the token and app secret encrypted and never shows them again.
Step 3 — Connect the number in Arasta
- Open Stores, choose your store and open the Channels tab.
- In Connect your number, paste the Phone Number ID, the WhatsApp Business Account ID, the access token and the app secret.
- Click Connect WhatsApp. Arasta checks the values with Meta straight away. On success you see your number, display name and quality rating.
If you see "Meta did not accept these values", check that the token belongs to the same WhatsApp Business Account as the Phone Number ID and has both permissions.
Step 4 — Add the webhook in Meta
The webhook is how Meta delivers your customers' messages to Arasta.
- On the Channels tab, copy the Callback URL and the Verify token.
- In your Meta app open WhatsApp → Configuration. Under Webhook, click Edit, paste both values and click Verify and save.
- Under Webhook fields, click Manage and subscribe to messages.
- Back in Arasta, the webhook step shows Verified by Meta with the date.
Arasta also tries to subscribe your app to the WhatsApp account automatically when you connect. If that fails you see a notice; the manual subscription in step 3 above solves it.
Live mode: Meta delivers real customer messages only to apps in Live mode. In the app dashboard switch App Mode to Live (Meta asks for a privacy policy URL first). If Meta asks for a payment method in WhatsApp Manager, add one.
Step 5 — Send a test message
Send "Hi" from your own phone to your WhatsApp number. Within a few seconds:
- the conversation appears in the Inbox with a WhatsApp badge,
- Kalfa AI replies on your phone,
- the Channels tab shows "Last message received" and the setup is complete.
Settings
| Setting | What it does |
|---|---|
| Kalfa AI answers WhatsApp messages | On (default): Kalfa AI answers first and hands over when needed. Off: every new WhatsApp conversation goes straight to your team in the Inbox, and the customer is told the team will reply on WhatsApp. |
| Reconnect with new values | Use after you created a new token or moved to another number. The callback URL and verify token stay the same, so you do not need to change the webhook in Meta. |
| Disconnect WhatsApp | Stops answering on WhatsApp. Existing conversations stay in the Inbox, but you can no longer reply to them on WhatsApp. |
The website chat settings that also apply to WhatsApp: knowledge sources, workflows (Autonomous / Shadow / Off per topic), business hours and "Let Kalfa AI answer outside business hours", handoff rules and saved replies. See Kalfa AI settings and Workflows and shadow mode.
The 24-hour reply window
WhatsApp allows businesses to send free-form replies only within 24 hours of the customer's last message. Every new message from the customer opens the window again.
- In the Inbox, a WhatsApp conversation shows Replies possible for 5 h 12 min (or Reply window closed).
- After the window closes, the reply box is disabled. You can answer as soon as the customer writes again.
- Messages that could not be sent because the window had closed appear as an internal note in the conversation.
Arasta does not send WhatsApp message templates, so it cannot start a conversation or write after the window has closed.
What customers see
- Text only. If a customer sends a photo, voice message, document, sticker or location, they are asked to type their question, and your team sees "[image]" (or the type) in the conversation.
- Formatting. Bold text and links are shown in WhatsApp style. Product recommendations appear as short lines with name, price and link.
- Handoff. When your team takes over, the customer gets "A team member has joined the chat." When nobody is available, they are told your team will reply on WhatsApp as soon as it is back — there is no offline email form on WhatsApp.
- Read receipts and a typing indicator show that the message arrived while Kalfa AI prepares the answer.
Verification on WhatsApp
Order details are protected the same way as in the website chat. Depending on your store's verification method, Kalfa AI asks for the order number and the email address used for the order, and may send a 6-digit code to that email address. The customer types the code in WhatsApp. The code is never stored in the conversation or shown to Kalfa AI. See Order verification.
Privacy
- Customers' phone numbers are stored encrypted. In the Inbox you see the WhatsApp profile name and a masked number (•••• 1234).
- Phone numbers are never sent to Kalfa AI.
- Your access token and app secret are stored encrypted and never shown in the dashboard after you save them.
- Deleting a store removes its WhatsApp connection and customer identities. Data requests and retention work as for website conversations — see Data and privacy.
Costs
The WhatsApp channel is included in every Arasta plan. WhatsApp conversations count towards your Kalfa AI allowance exactly like website conversations. Meta bills messages to your own WhatsApp Business account according to its pricing; at the time of writing, replies inside the 24-hour window are free, and Arasta never sends paid template messages. Check Meta's WhatsApp pricing page for your country.
Troubleshooting
| Problem | What to check |
|---|---|
| "Meta did not accept these values" | The Phone Number ID (not the phone number) and the WhatsApp Business Account ID belong together; the token has whatsapp_business_messaging and whatsapp_business_management; the token has not expired. |
| "This WhatsApp number is already connected to another store" | One number can serve one store. Disconnect it from the other store first. |
| Meta says the callback URL could not be verified | Copy the callback URL and verify token again from the Channels tab, without spaces. |
| Messages do not appear in the Inbox | The webhook is subscribed to messages; the app is in Live mode; the webhook step shows "Verified by Meta". |
| "Reconnect needed" on the Channels tab | Meta rejected the token (it expired or was revoked). Create a new system user token and use Reconnect with new values. |
| "Not delivered to WhatsApp" note in a conversation | The note says why: the 24-hour window closed, Meta reported an error, or WhatsApp is disconnected. |
| Kalfa AI does not reply on WhatsApp | "Kalfa AI answers WhatsApp messages" is on; the topic's workflow is not Off; your plan has Kalfa AI allowance left; business hours allow Kalfa AI to answer. |
| Quality rating is Medium or Low | Customers have blocked or reported your number. Answer quickly and avoid unwanted messages; Meta may limit numbers with a low rating. |