Meta Cloud API Integration
This guide walks you through setting up the Meta Cloud API integration with Kommunicate. Start with the sandbox flow to test your setup, then move to the live flow to connect your production WhatsApp business number.
Overview
The Meta Cloud API allows businesses to send and receive WhatsApp messages using Meta's cloud-hosted Business API infrastructure. Hosted directly by Meta, it provides a secure, scalable, and cost-effective solution without the burden of maintaining self-hosted servers.
Key Features
- Faster onboarding and customization: Build tailored customer experiences directly on WhatsApp to automate workflows, respond to inquiries quickly, and reduce integration time.
- Reduced hosting costs: Lower operational overhead by leveraging Meta's cloud-hosted servers instead of managing local or third-party infrastructure.
- Instant feature updates: Get immediate access to newly released WhatsApp Business API features as soon as Meta rolls them out.
Setup Flow
| Stage | Purpose |
|---|---|
| Sandbox Integration | Create a Meta app, connect temporary sandbox credentials, and verify test messaging in Kommunicate. |
| Live Integration | Generate a permanent token, register your live number, configure webhooks, and verify production messaging. |
Sandbox Integration
The Sandbox is a free testing environment that uses a temporary Meta-provided phone number to send and receive test messages.
⚠️ Note: Sandbox testing operates entirely within an isolated test environment. You cannot use the sandbox number to send messages to actual customers. Use it to build, configure, and test your chatbot or agent workflows before connecting your live business number.
Phase A: Meta Developer Portal Setup
Use this phase to create your Meta app and collect the sandbox credentials required for Kommunicate.
Step 1: Create Your Meta App
- Log in to the Meta for Developers Portal.
- Create a new app and select Connect with customers through WhatsApp as the use case.


Step 2: Configure the WhatsApp Product
- In the left-hand navigation menu, click Publish.
- Under Use cases on this app, locate and click Connect with customers through WhatsApp.

Step 3: Request Required Permissions
- Open Permissions and Features.
- Locate and add the following permissions:
whatsapp_business_managementwhatsapp_business_messaging

Step 4: Open API Setup
In the left sidebar, click API Setup to access your temporary access token and test credentials.

Phase B: Kommunicate Sandbox Configuration and Testing
Use this phase to connect the Meta sandbox credentials to Kommunicate and confirm that test messages are received.
Step 1: Open Kommunicate Integration Settings
Log in to your Kommunicate Dashboard and navigate to the Meta Cloud API Setup Page.
Step 2: Copy Sandbox Credentials
From the API Setup page on Meta, copy and paste the following values into the corresponding Sandbox Testing fields in your Kommunicate Dashboard:
| Field Name | Description / Source on Meta Dashboard |
|---|---|
| Temporary Access Token | Click Generate Access Token on Meta |
| From Test Number | Copy from the From field |
| Phone Number ID | Copy from the Phone number ID field |
| WhatsApp Business Account ID | Copy from the WhatsApp Business Account ID field |
| API Version | Extracted from the API endpoint URL on the same page |


Example API endpoint:
https://graph.facebook.com/v25.0/...
Step 3: Verify Sandbox Messaging
- On the Meta API Setup page, enter your WhatsApp phone number in the To field.
- Click Send Message from the Meta console. You will receive a test message on your WhatsApp account.
- Reply to that test message directly from your phone.
- Check your Kommunicate dashboard inbox. The incoming message should appear there immediately.
🎉 Sandbox Testing Complete: Receiving and replying to the test message confirms that your webhooks and credentials are properly linked.
Live Integration
After sandbox testing is complete, switch from the temporary test setup to your live WhatsApp business number.
Before You Go Live
Complete these prerequisites before connecting your production number:
- Delete the existing WhatsApp account: If your live number is currently active on the WhatsApp or WhatsApp Business mobile app, you must delete the account from the mobile app first. A phone number cannot be active on both the mobile app and the Cloud API simultaneously.
- Generate a permanent access token: Ensure you have generated a System User Permanent Access Token in Meta Business Manager. Do not use the temporary token for live integration.
Phase C: Generate a Permanent Access Token
Use this phase to create a System User in Meta Business Manager and generate the permanent token required for production messaging.
Step 1: Navigate to Meta Business Manager
Go to Meta Business Suite / Business Manager and select your Business Account.
Step 2: Create a System User
- In the left-hand navigation menu, select Settings > Users > System Users.
- Click Add (or Add System User).
- Enter a System User Name (e.g.,
Kommunicate Integration). - Set the System User Role to Admin.
- Click Create System User.

Step 3: Assign Assets to the System User
- Select the newly created system user, click the three dots icon on the right side of the page, and select Assign Assets.
- In the assets menu, navigate to Apps and select the WhatsApp app you created earlier.
- Toggle on Manage App under Full Access.
- Click WhatsApp accounts, select the desired app, and toggle on Everything under Full Access.
- Click Save Changes (or Assign Assets).


Step 4: Generate the Permanent Token
- Under the same System User, click Generate Token.
- Select your app from the dropdown list.
- Set Expiry to Never.
- In the permissions list, check the following required scopes:
whatsapp_business_managementwhatsapp_business_messaging
- Click Generate Token.
- Copy the generated token immediately and store it securely. This is your Permanent Access Token to paste into the Kommunicate live configuration.
⚠️ Multi-Admin Approval Notice: If your Meta Business Account has multiple Administrators listed under the Users > People section, Meta may require an approval workflow before issuing the token. In this case:
- Another Admin on the account will receive a request notification.
- Once they approve the request from their Meta Business account, the Permanent Access Token will be generated and displayed on your screen.
Phase D: Register the Live Number and Complete Production Setup
Use this phase to register your production WhatsApp number, configure Meta webhooks, add live credentials in Kommunicate, and verify the integration.
Step 1: Register Your Live Phone Number on Meta
Before adding your production number to Kommunicate, you must register and verify it within the Meta Developer Portal.
- Go to the API Setup page in your Meta Developer Portal.
- Scroll down to Step 5: Add a Phone Number and click Add Phone Number.
- Fill in your business profile details:
- WhatsApp Business Display Name (must comply with Meta's naming guidelines)
- Category / Industry
- Business Description (Optional)
- Enter your live phone number and choose your verification method (SMS or Phone Call).
- Enter the verification code sent to your phone to complete registration.

Step 2: Configure Webhook Settings
To allow Meta to send incoming WhatsApp messages to Kommunicate in real time, configure a webhook in the Meta Developer Portal.
- In the Meta Developer Portal left sidebar, navigate to WhatsApp > Configuration (or Customize use case > Configuration).
- Under the Webhook section, click Edit.
- Copy and paste the following values into the corresponding fields:
Callback URL: https://omni-channel.kommunicate.io/whatsapp/cloud-api/webhook
Verify Token: kommunicate_private_access_token

- Click Verify and Save.
Step 3: Subscribe to Message Events
- On the same Configuration page, locate the Webhook fields section.
- Scroll down to the
messagesevent row. - Click Subscribe.

Step 4: Configure Live Credentials in Kommunicate
Open the live configuration page in Kommunicate and fill in the live configuration fields:
| Field Name | Action / Instructions |
|---|---|
| Permanent Access Token | Paste your Meta System User token |
| Live Phone Number | Enter your actual WhatsApp Business phone number |
| Phone Number ID | Copy from your Sandbox configuration or Meta Portal |
| WhatsApp Business Account ID | Copy from your Sandbox configuration or Meta Portal |
| API Version | Keep the same API version used in Sandbox testing (e.g., v25.0) |
💡 Tip: Except for the Permanent Access Token and Live Phone Number, all other account identifiers (Phone Number ID, WABA ID, and API Version) can be carried over directly from your Sandbox configuration.
Step 5: Verify Live Messaging
Before running your final test, ensure the following Meta requirements are met:
- App Status is Live: In the Meta Developer Portal, toggle your app status from Development to Live.
- Payment Method Added: Go to Meta Business Manager > Billing & Payments and add a valid payment method. Meta requires this to send live messages, even within the free monthly tier.
Then verify the live integration:
Once the phone number status shows
Connected, confirm the live number is ready.
Send a WhatsApp message from an external phone to your live business number.
Confirm that the message arrives in your Kommunicate inbox and that agent replies are delivered back to the sender.
🎉 Integration Live: Your Meta Cloud API is now fully connected to Kommunicate for live customer messaging.
Billing and Pricing
WhatsApp integration is included across all Kommunicate plans. However, Meta imposes separate usage fees based on their messaging policies:
- No Kommunicate Markup: Kommunicate does not handle or add extra charges to your Meta Cloud API payments. All message usage is billed directly by Meta through your Meta Business Manager account.
- Meta Rate Cards: Outbound broadcasts, template messages, and user interaction charges are billed according to Meta's official region-specific rate cards.
For full details on official rate cards, message categories, and regional billing rules, refer to Meta's official documentation:
Meta Developer Documentation: WhatsApp Platform Pricing
Special Phone Number Formatting Exceptions
Argentina (
+54): Insert a9between the country code and area code, and remove the local prefix15. The final number must have 13 digits total.+54 9 XXX XXX XXXXMexico (
+52): Include a1immediately after the country code+52(applies to all mobile networks, including Nextel).+52 1 XXX XXX XXXX