Connect WhatsApp to WordPress with Kinetix Messaging
Plugin Pros
A complete step-by-step guide, from creating your Meta App to receiving your first live message in the inbox.
Introduction
Kinetix Messaging by Ppros is a unified inbox plugin for WordPress. It brings your customer conversations (WhatsApp, Telegram, email, and more) into one central dashboard.
This guide shows you how to connect the WhatsApp Business API to your WordPress site. It covers every click in Meta for Developers and every field in the plugin.
What you need before you start
- A WordPress site with Kinetix Messaging installed and activated.
- A Meta (Facebook) Developer account: developers.facebook.com.
- A Meta Business Manager account: business.facebook.com.
- A phone number that is not already registered on a personal WhatsApp account. A fresh, dedicated number is best.
- HTTPS on your WordPress site. You need an SSL certificate, because Meta won’t accept plain HTTP webhook URLs.
Part 1: Set up your Meta App and WhatsApp product
Step 1: Log in to Meta for Developers
- Go to https://developers.facebook.com.
- Click My Apps in the top-right corner.
- Click Create App.
Step 2: Create a new Meta App
- When asked “What do you want your app to do?”, choose Other, then click Next.
- Select Business as the app type, then click Next.
- Fill in the app details:
- App name: for example,
MyStore WhatsApp Bot. - App contact email: your email address.
- Business portfolio: select your Meta Business Manager account, or create one first.
- App name: for example,
- Click Create App and complete any security check. You may need to re-enter your Facebook password.
Tip: Keep the Meta App Dashboard open. You’ll copy several values from it into the plugin.
Step 3: Add the WhatsApp product to your app
- On your app’s dashboard, scroll to Add Products to Your App.
- Find WhatsApp and click Set Up.
- Meta takes you to the WhatsApp → Quickstart page.
Step 4: Connect your WhatsApp Business Account (WABA)
- On the Quickstart page, under Step 1: Select a WhatsApp Business Account, click Create a new WhatsApp Business Account. Or select an existing one from the dropdown.
- Follow the prompts to verify or create your Business Account.
- Once it’s connected, Meta shows a test phone number (a free sandbox number) for development. You’ll also see the option to add your own number for production.
Step 5: Add your production phone number
- In the left sidebar, go to WhatsApp → Phone Numbers.
- Click Add phone number.
- Enter your number in international format, for example
+15550001234. - Verify the number by SMS or voice call. Meta sends a 6-digit code.
- Once verified, the number appears in the list with a Phone Number ID next to it.
📋 Copy the Phone Number ID. You’ll need it in the plugin.
Step 6: Collect your key credentials
Before you leave the Meta dashboard, gather these four values. You’ll find them in the WhatsApp → API Setup panel.
| Credential | Where to find it |
|---|---|
| WhatsApp Business Account ID (WABAID) | WhatsApp → API Setup, at the top (“From” section) |
| Phone Number ID | WhatsApp → Phone Numbers → click your number |
| Temporary Access Token | WhatsApp → API Setup → copy the token (valid 24 hours) |
| App Secret | App Settings → Basic → App Secret → click “Show” |
⚠️ Important: The temporary access token expires in 24 hours. Part 4 shows you how to create a permanent token with a System User.
Part 2: Configure the plugin settings
Step 7: Open WhatsApp settings in Kinetix Messaging
- Log in to your WordPress admin dashboard.
- In the left menu, click Kinetix Messaging → Inbox.
- The Inbox app loads. Click the Settings (gear ⚙️) icon in the sidebar.
- In the channel list, click WhatsApp Business.
- Make sure you’re on the API Setup tab (the first tab).
Step 8: Fill in the API Setup tab
Fill in each field with the credentials you collected in Part 1.
① Enable WhatsApp
Turn this toggle on. The integration won’t work until it’s active.
② WhatsApp Business Account ID (WABAID)
Paste your WABAID here. The plugin’s helper text says: “Found in Meta Business Manager → WhatsApp → Business Accounts.”
③ Phone Number ID
Paste the Phone Number ID for the number you want to use.
④ Permanent Access Token
Paste your access token here.
- For development: paste the temporary token to test first.
- For production: use a permanent System User token (see Part 4).
⑤ App Secret
Paste your App Secret from App Settings → Basic.
This is critical. The plugin uses it to check the X-Hub-Signature-256 security signature on every inbound webhook from Meta. Without it, the plugin rejects inbound messages.
⑥ Webhook Verify Token
Type any secret string you like, for example my_kmbp_whatsapp_token_2026.
You’ll enter this same string in Meta’s webhook settings in the next part. Write it down, because you need it in both places.
⑦ Display Phone Number
Enter your WhatsApp number in international format, for example +1 555 000 1234. The plugin uses it for the click-to-chat button and the wa.me/ share link.
⑧ Webhook URL (read-only)
At the bottom of the API Setup section, a read-only field shows your webhook URL:
https://yourdomain.com/wp-json/kmbp/v1/webhooks/whatsapp
Copy this URL. You’ll paste it into Meta in the next step.
⑨ Save and test
Click Save (the main save button in the settings panel). Then click Test Connection to check that your credentials are accepted.
Part 3: Configure the webhook in Meta
Step 9: Register the webhook callback URL
- Go back to the Meta Developer dashboard.
- In the left sidebar, open WhatsApp → Configuration.
- Scroll to the Webhooks section and click Edit.
- Fill in the two fields:
- Callback URL: paste the webhook URL from the plugin:
https://yourdomain.com/wp-json/kmbp/v1/webhooks/whatsapp - Verify Token: type the exact same verify token you entered in the plugin (for example
my_kmbp_whatsapp_token_2026).
- Callback URL: paste the webhook URL from the plugin:
- Click Verify and Save.
✅ If everything is correct, Meta sends a
GETrequest to your site and the plugin echoes back the challenge. Meta then shows a green “Verified” checkmark.If it fails, check that your site loads over HTTPS and that both verify tokens match exactly.
Step 10: Subscribe to webhook fields
After the webhook is verified:
- Still on WhatsApp → Configuration → Webhooks, click Manage next to your verified URL.
- Subscribe to these fields:FieldPurpose
messagesReceive inbound customer messagesmessage_template_status_updateGet notified when templates are approved or rejectedaccount_updateAccount-level status changesphone_number_quality_updatePhone number quality rating changes - Click Done / Save.
Part 4: Generate a permanent access token (recommended for production)
The default token Meta shows you expires every 24 hours. So your integration doesn’t break overnight, create a System User token that never expires.
Step 11: Create a System User
- Go to Meta Business Settings: business.facebook.com/settings.
- In the left sidebar, find Users → System Users.
- Click Add, name the system user (for example
Kinetix WA Bot), and set the role to Admin. - Click Create system user.
Step 12: Assign the app and permissions
- Select your new system user, then click Add Assets.
- Choose Apps, find the Meta app you created, and click Add.
- Enable Full Control, or at minimum
whatsapp_business_messagingandwhatsapp_business_management. - Click Save Changes.
Step 13: Generate the permanent token
- On the same system user page, click Generate New Token.
- Select your app from the dropdown.
- Under Permissions, enable:
whatsapp_business_messagingwhatsapp_business_management
- Set Token Expiration to Never.
- Click Generate Token and copy it right away. Meta shows it only once.
Step 14: Update the plugin with the permanent token
- Go back to Kinetix Messaging → Inbox → Settings → WhatsApp → API Setup.
- In the Permanent Access Token field, replace the temporary token with the new system user token.
- Click Save.
Part 5: Optional but recommended settings
Step 15: Check the Webhook tab
Click the Webhook tab in the WhatsApp settings panel. It shows:
- The Callback URL (the same as in API Setup).
- The webhook field names you should subscribe to, for reference in Meta.
- A sample inbound message payload, so you know what data arrives from Meta.
You don’t need to configure anything here. It’s for reference: use it to double-check your Meta setup.
Step 16: Set up the website button (optional)
The Website Button tab adds a WhatsApp click-to-chat button anywhere on your site.
- Enter a Pre-filled message, for example
Hello! I'd like to get some help. - Choose a Button Style: Floating bubble, Inline banner, or None.
- Enter a Button Label, for example
Chat on WhatsApp. - Copy the Embed Snippet and paste it into any page or post. Or use the shortcode:
Step 17: Configure messaging behavior (optional)
Click the Messaging tab and adjust these options to suit your workflow:
| Setting | Recommendation |
|---|---|
| Read receipts | On. Sends read receipts when an agent opens a conversation. |
| Allow media attachments | On. Customers can send images, documents, audio, and video. |
| Auto-assign new conversations | On for teams. Round-robins conversations to online agents. |
| Business hours only | Optional. Rejects messages outside working hours. |
| Auto-reply on new conversation | On. Sends an instant acknowledgement. Add {{customer_name}} to personalize it. |
Step 18: Compliance settings (optional, but important for marketing)
If you plan to send outbound marketing messages, click the Compliance tab:
- Enable Process STOP keyword. Contacts who reply
STOPare opted out automatically. - Enable Process START keyword. Contacts who reply
STARTare re-subscribed. - Add your Business Portfolio ID for 10DLC / WABA registration tracking.
- Complete business verification in Meta Business Manager before sending high-volume campaigns.
Part 6: Test the integration end to end
Step 19: Send a test message
- From your personal WhatsApp (or the Meta test phone number sandbox), send a message to your registered business number.
- Open Kinetix Messaging → Inbox. The conversation should appear within a few seconds.
- Click the conversation and reply from the inbox. Your reply should arrive on the customer’s WhatsApp.
If the message appears in the inbox: 🎉 Your WhatsApp channel is live!
Troubleshooting
Webhook verification fails
- Cause: the verify tokens don’t match.
- Fix: check both fields for leading or trailing spaces.
Webhook verifies, but messages don’t arrive
- Cause: webhook fields aren’t subscribed.
- Fix: repeat Step 10 and subscribe to
messages.
Messages arrive but are rejected (HTTP 401)
- Cause: the App Secret is wrong or missing.
- Fix: copy the App Secret from App Settings → Basic → Show.
Token expires after 24 hours
- Cause: you’re using the temporary token.
- Fix: follow Part 4 to create a permanent System User token.
“Channel not enabled” error
- Cause: the Enable toggle is off.
- Fix: turn on Enable WhatsApp in the API Setup tab.
Outbound messages fail
- Cause: the Phone Number ID is wrong.
- Fix: confirm the ID in Meta → WhatsApp → Phone Numbers.
Site isn’t on HTTPS
- Cause: Meta rejects plain HTTP.
- Fix: install an SSL certificate. Let’s Encrypt is free.
Summary checklist
- Created a Meta Developer App (type: Business)
- Added the WhatsApp product to the app
- Connected or created a WhatsApp Business Account (WABA)
- Added and verified a phone number, then copied the Phone Number ID
- Copied the WABAID and App Secret
- Created a permanent System User token (or copied the temporary token for testing)
- Opened Kinetix Messaging → Inbox → Settings → WhatsApp → API Setup
- Filled in WABAID, Phone Number ID, Access Token, App Secret, Verify Token, and Display Phone
- Copied the Webhook URL from the plugin
- Pasted the Webhook URL and Verify Token into Meta → WhatsApp → Configuration → Webhooks, then clicked Verify
- Subscribed to the webhook fields:
messages,message_template_status_update,account_update,phone_number_quality_update - Sent a test message and confirmed it appeared in the inbox