Overview
The WhatsApp integration uses the WhatsApp Cloud API (Meta Business Platform) to send and receive messages. The adapter handles HMAC signature verification for inbound webhooks and supports text, images, and media messages.Requirements: A Meta Business account with WhatsApp Business API access and a verified phone number.
Architecture
Setup
Create a Meta App
- Go to Meta for Developers
- Create a new app and add the WhatsApp product
- Generate a permanent access token (or use a system user token)
- Note the Phone Number ID from the WhatsApp settings
Configure the Webhook
Set the webhook callback URL to:Subscribe to the
messages webhook field. Set a Verify Token that matches your Nadoo AI configuration.Configure in Nadoo AI
In the Nadoo AI platform, navigate to Workspace Settings > Channels and create a new WhatsApp channel:
Link the channel to your target application.
| Field | Description |
|---|---|
| Access Token | Permanent token from the Meta Business Platform |
| Phone Number ID | The WhatsApp Business phone number ID |
| App Secret | Meta app secret for webhook HMAC verification |
Credentials
The WhatsApp adapter requires the following credentials:Webhook Security
Inbound messages are verified using HMAC-SHA256 signature validation. The adapter computes:X-Hub-Signature-256 header sent by the WhatsApp Cloud API.
Message Features
Supported content types
Supported content types
| Type | Inbound | Outbound |
|---|---|---|
| Plain text | Yes | Yes |
| Images | Yes | Yes |
| Documents | Yes | Planned |
| Audio | Yes | Planned |
| Video | Yes | Planned |
| Location | Yes | No |
| Contacts | Yes | No |
Message templates
Message templates
WhatsApp requires pre-approved message templates for initiating conversations (outside the 24-hour session window). Within the 24-hour window after a user message, you can send free-form replies.
Media handling
Media handling
Media attachments (images, documents, audio, video) are received as WhatsApp media IDs. The normalizer downloads the media content and includes it as
MediaAttachment objects in the inbound message.