Anyy's WhatsApp Channel uses Meta's official Business Cloud API. It receives direct messages through a signed webhook and sends replies with the configured business phone identity.
What You Need
- a Meta app with WhatsApp enabled;
- the App ID, WhatsApp Business Account ID, and Phone Number ID;
- an access token allowed to use the Cloud API;
- an owner-chosen webhook verify token;
- the Meta app secret; and
- a public HTTPS route to the Anyy Gateway.
Follow Meta's Cloud API documentation for current platform-side setup.
Connect in Dashboard
- Open Dashboard → Channel → Add account.
- Choose WhatsApp and the Business Cloud API webhook profile.
- Enter the App ID, Business Account ID, and Phone Number ID.
- Add the access token, webhook verify token, and app secret.
- Keep the default
pairingDM policy unless you deliberately need another supported policy. - Save the account and complete the reported Meta prerequisites and permissions.
The inbound callback path is:
/channels/whatsapp/ACCOUNT_ID/webhook
For the default account, ACCOUNT_ID is personal. Publish that path through HTTPS, then subscribe the Meta app to WhatsApp message events using the same verify token.
Access Policy
WhatsApp supports direct-message access with pairing, open, allowlist, or disabled. It does not expose a group-message capability in this Anyy profile.
Approve a pending sender only after verifying the phone identity:
anyy channel pairing list
anyy channel pairing approve --request REQUEST_ID
Platform Constraints
Meta imposes eligibility restrictions for AI providers serving recipients in the EEA and Brazil. Free-form Anyy replies also require a user-initiated message context and must remain within the platform's permitted response window.
Anyy will not invent a recipient or bypass Meta's conversation rules. Start from an authorized inbound conversation and keep platform policy in mind when scheduling or retrying delivery.
Verify the Connection
anyy channel doctor whatsapp
anyy channel reload
Send a direct message to the business number, complete pairing, and confirm that Anyy can reply.
Troubleshooting
| Problem | Check |
|---|---|
| Webhook challenge fails | Public HTTPS route and webhook verify token |
| Events receive 401 | Meta app secret and X-Hub-Signature-256 routing |
| Inbound works but send fails | Access token, Phone Number ID, permissions, and eligibility |
| Sender is ignored | DM policy, pairing state, or allowlist |
| Reply is rejected later | User-initiated response window and current Meta rules |