How to Connect OpenClaw to WhatsApp (Step-by-Step Guide)
Connecting OpenClaw to WhatsApp requires the WhatsApp Business API via Meta for Developers — it's the most complex of the three integrations. You need a Meta Business Account, a dedicated phone number, a webhook endpoint with HTTPS, and proper security configuration. For client-facing AI support, WhatsApp is the best channel because everyone already uses it.
Published . Updated .
WhatsApp is the most natural way to interact with your OpenClaw AI assistant. You message it like you'd message anyone else — and it responds with whatever you've configured it to do.
No extra apps. No browser tabs. Just open WhatsApp and chat.
Why WhatsApp?
- You already use it. No learning curve. No new app to install.
- It works everywhere. Phone, tablet, desktop — your AI follows you.
- It's familiar to clients. If you want your AI to handle customer questions, they can reach it on a platform they already know.
- Media support. Send photos (receipts, documents), voice notes, and files directly to your AI.
What you need before you start
- A working OpenClaw installation — if you haven't set up OpenClaw yet, book a call and I'll handle the full setup.
- A WhatsApp Business account — free to create from the WhatsApp Business app.
- A phone number — this will be your AI's number. You can use a spare SIM or a virtual number.
⚠️ Important: WhatsApp doesn't allow unofficial bots the way Discord or Telegram do. The setup requires the WhatsApp Business API, which has specific requirements and approval steps. This is the most complex of the three chat platform integrations.
Step 1: Set up WhatsApp Business API access
WhatsApp messaging for bots works through the WhatsApp Business API (also called the Cloud API):
- Go to Meta for Developers
- Create a Meta Business Account if you don't already have one
- Create a new App → select Business type
- Add the WhatsApp product to your app
- Navigate to WhatsApp → Getting Started
- Note your Phone Number ID and WhatsApp Business Account ID
- Generate a Permanent Access Token (or use the temporary one for testing)
💡 Tip: The Meta developer portal can feel overwhelming. If you want business outcomes without DIY WhatsApp plumbing, start with one scoped workflow instead.
Step 2: Configure a webhook
WhatsApp sends incoming messages to your server via webhooks:
- In the Meta developer portal, go to WhatsApp → Configuration
- Set the Callback URL to your OpenClaw server's webhook endpoint (e.g.,
https://your-domain.com/webhook/whatsapp) - Set a Verify Token — a random string you create for security
- Subscribe to the messages webhook field
Your server needs to be accessible from the internet for this step. If you're running locally, you'll need a reverse proxy (like Cloudflare Tunnel or Tailscale Funnel) to expose the webhook endpoint securely.
Step 3: Connect to OpenClaw
OpenClaw configuration is done via the config file or the onboard CLI wizard — there's no web UI for this step.
- Open your OpenClaw config file (typically
~/.openclaw/openclaw.json), or run theopenclaw onboardwizard - Add your WhatsApp credentials: Phone Number ID, Business Account ID, and Access Token
- Configure the webhook verify token to match what you set in Meta
- Restart the OpenClaw service (
systemctl restart openclawor re-run the process)
💡 Tip: The exact config fields depend on your OpenClaw version. Check the OpenClaw documentation for your version's channel configuration format.
Step 4: Test the connection
- Open WhatsApp on your phone
- Send a message to your AI's WhatsApp number
- You should receive a response within a few seconds
If it doesn't work, check these common issues:
Troubleshooting
No response at all
- Verify the webhook URL is accessible from the internet (test with a tool like webhook.site)
- Check that the access token hasn't expired
- Look at OpenClaw logs for incoming webhook events
"This message couldn't be delivered"
- Your server may be down or the webhook endpoint is returning errors
- Check that the phone number is properly verified in the Meta portal
Response is delayed (30+ seconds)
- This is usually an AI model issue, not WhatsApp. Check your API key and model configuration
- If using a local model, ensure your hardware can handle the load
Messages received but garbled formatting
- WhatsApp uses its own formatting (bold with asterisks, italic with underscores). Ensure OpenClaw is configured to output WhatsApp-compatible formatting
Security considerations
WhatsApp integration requires more security attention than Discord or Telegram:
- HTTPS is mandatory. WhatsApp only sends webhooks to HTTPS endpoints. Self-signed certificates won't work.
- Verify webhook signatures. Always validate that incoming webhooks are actually from Meta, not spoofed requests.
- Protect your access token. Anyone with your token can send messages as your AI. Store it in environment variables, never hardcode it.
- Rate limits apply. WhatsApp Business API has conversation-based pricing and rate limits. Monitor your usage.
- Number tied to business. Your AI's phone number should be separate from your personal number.
WhatsApp vs Discord vs Telegram for OpenClaw
| Discord | Telegram | ||
|---|---|---|---|
| Setup complexity | Hard (Business API required) | Easy (bot token) | Easy (BotFather) |
| Client familiarity | Highest (everyone uses it) | Lower | Medium |
| Media support | Photos, voice, files | Photos, embeds, files | Photos, voice, files |
| Cost | Free for low volume | Free | Free |
| Best for | Client-facing support | Team/community use | Personal/business use |
Related reading
- How to Connect OpenClaw to Discord — the easiest integration to start with
- What Is OpenClaw? — the full explainer
- Secure OpenClaw Setup Guide — security checklist for your setup
Need help?
WhatsApp integration is the most complex of the three chat platforms. Most non-technical businesses should start with a fixed-fee workflow (reports, inbox, follow-ups) rather than full channel plumbing.
Book a free 15-minute fit call — bring one recurring task.