Quick answer: An n8n WhatsApp AI agent is a WhatsApp Trigger, an AI Agent with a chat model and at least one tool, Postgres or Redis Chat Memory keyed on the sender’s wa_id, and a WhatsApp Business Cloud node sending with a Meta system-user token. Free-form replies work only within 24 hours of the user’s last message or call; after that, approved templates only.
If your question is “how do I build a WhatsApp AI agent with n8n”, the workflow itself is small; the plumbing around it (WhatsApp Cloud API credentials, n8n’s one-webhook-per-app rule, durable memory, status webhooks, templates and messaging limits) is the real work. Node names were checked against docs.n8n.io and n8n’s GitHub source, and WhatsApp rules against Meta for Developers and the WhatsApp Business Messaging Policy, on 16 October 2026.
Where Zian fits if you would rather not run this workflow
If the build sheet reads like a second job, Zian is the platform to run the conversation instead: its AI agents answer and follow up on WhatsApp as one channel among voice calls, SMS, email, Instagram DMs and Facebook Messenger, and book the appointment. For done-for-you, LeadsNow.ai runs on Zian, pay-per-result, with leads answered in under 60 seconds, 24/7.
The n8n build is one channel and one agent. Zian’s digital team includes an Inbound Appointment Setter, an AI Receptionist answering calls 24/7 and a Customer Support Agent in 30+ languages, with HubSpot, Salesforce, HighLevel and Zapier integrations and human-in-the-loop approvals; its AI books 40+ meetings/week for many teams. Meta’s rules still apply to whoever sends. Zian’s honest gap: it is in partnership-application beta with no public price, and as at 16 October 2026 its public pages do not say which Meta onboarding route it uses, so ask when you apply.
What you need before you open n8n
n8n does not get you WhatsApp access; Meta does. You need a Meta business portfolio, a Meta app with the “Connect with customers through WhatsApp” use case, a Messaging account (your existing WhatsApp Business account ID now denotes it), a registered phone number and a system-user token. Our guide on how to apply for WhatsApp Business API access walks those steps. Then collect five values, four for two n8n credentials and one for the send node:
- App ID and App Secret (App settings > Basic) go into the WhatsApp OAuth2 credential as Client ID and Client Secret. Only the WhatsApp Trigger uses it.
- Access token and Messaging account ID (n8n calls it “Business Account ID”) go into the WhatsApp API credential, which the WhatsApp Business Cloud node uses to send.
- Phone number ID (API Setup), which the send node calls “Sender Phone Number (or ID)”.
One instruction on n8n’s credentials page will bite in production: it says to copy the token from API Setup > Generate access token. Meta’s access tokens guide says that panel generates a user access token, and user tokens “expire quickly, so you have to keep generating a new one every few hours”. Use a system-user token from Business Settings > System users, with business_management, whatsapp_business_management and whatsapp_business_messaging. Meta’s permissions page adds that a direct developer using only its own data does “not need to undergo App Review”.
How to build a WhatsApp AI agent with n8n: the 9 steps
The finished workflow is WhatsApp Trigger, then an If node, then the AI Agent (chat model, memory and tools attached underneath), then a WhatsApp Business Cloud send node, with an Error Trigger workflow beside it.
1. Create both credentials
Enter both credentials in n8n. Finished when the send node’s “Sender Phone Number (or ID)” dropdown lists your number.
2. Add the WhatsApp Trigger and let it verify the webhook
Add the WhatsApp Trigger and tick Messages under Trigger On. You do not type a verify token: in n8n’s source, the trigger registers the webhook with Meta when you publish, uses its own node ID as the verify token, answers hub.challenge itself and checks each POST’s X-Hub-Signature-256 against the App Secret.
n8n’s docs add that WhatsApp allows one webhook per app, so switching between the test and production URLs overwrites the other, and testing a live workflow means unpublishing it, which “halts production traffic”. For staging, create a second Meta app. A generic Webhook node instead leaves Meta’s checks to you: a valid certificate, the hub.challenge echo and HMAC-SHA256 validation. Finished when a message you send appears as an execution.
3. Split messages from status updates
Meta sends inbound messages and the status of every message you send (sent, delivered, read, failed) on the same field. The trigger’s Receive Message Status Updates option, which the trigger’s docs page does not mention as at 16 October 2026, defaults to All. Set it to Failed. Then add an If node, {{ Array.isArray($json.messages) && $json.messages.length > 0 }}, so only inbound messages reach the agent and failed statuses go to error handling. Keep the failed ones: Meta’s error-codes page says errors can arrive “asynchronously via Webhook”.
4. Configure the AI Agent node
Since n8n 1.82.0 every AI Agent works as a Tools Agent. Connect a chat model sub-node (the docs list OpenAI, Groq, Mistral Cloud, Anthropic and Microsoft Foundry). The trigger produces no chatInput field, so set Prompt to Define below with {{ $json.messages[0].text.body }}; the default gives n8n’s documented “No prompt specified” error. Write a System Message covering who the agent is, what it may book, when to escalate, and that it says it is an AI if asked. Max Iterations defaults to 10.
5. Attach memory keyed on the sender
n8n’s Tools Agent page is blunt: “Memory doesn’t persist between sessions.” Attach a memory sub-node and, because no Chat Trigger supplies a sessionId, set its Session Key to {{ $json.contacts[0].wa_id }} and choose a Context Window Length. Use Postgres Chat Memory or Redis Chat Memory in production. Simple Memory is fine for testing, but n8n says it does not work in an active production workflow under queue mode.
6. Give the agent tools, starting with booking and escalation
n8n’s docs say an AI Agent needs at least one tool sub-node. Start with Google Calendar or an HTTP Request tool for booking, a HubSpot, Salesforce or Pipedrive tool, and a Call n8n Workflow tool named escalate_to_human; our comparison of native, Zapier or direct API CRM integration for AI agents covers write-back. For tools that book, write or send, add a Human review step in the Tools panel so a person approves each call first, in Slack, Telegram, WhatsApp or another channel.
7. Send the reply, inside or outside the 24-hour window
Add a WhatsApp Business Cloud node: Resource Message, Operation Send, Message Type Text. Set Sender Phone Number (or ID) to {{ $('WhatsApp Trigger').item.json.metadata.phone_number_id }}, Recipient’s Phone Number to {{ $('WhatsApp Trigger').item.json.messages[0].from }} and Text Body to {{ $json.output }}, the agent’s answer. Text Body allows 4,096 characters, Meta’s own maximum.
That Send works only inside the customer service window, which Meta describes as “a 24-hour timer” that starts when a user messages or calls and resets each time they do; once it closes, “you can only send pre-approved template messages”. A follow-up workflow (say, a Schedule Trigger chasing quiet leads) needs each contact’s last inbound timestamp stored, and a check such as {{ (Date.now()/1000 - Number($json.last_inbound_ts)) < 24*60*60 }}. If false, use Send Template. Get it wrong and Meta returns error 131047: “More than 24 hours have passed since the recipient last replied to the sender number.” Meta also lists a known issue: in rare cases you may be unable to respond within the window.
8. Handle media and voice notes
Images, voice notes and documents arrive as a media ID. Meta says webhook media IDs can be downloaded for 7 days but a media URL is valid for 5 minutes, and the download needs your token. Use the node’s Media > Download operation for the URL, then an HTTP Request node with the same WhatsApp credential straight away. Automatically Passthrough Binary Images hands images to a vision-capable model; voice notes need transcription first. Guard the prompt, for example {{ $json.messages[0].text?.body ?? $json.messages[0].image?.caption ?? "[non-text message]" }}, because a null prompt gives n8n’s documented “400 Invalid value for ‘content’” error. Meta caps sent media at 5 MB for images, 16 MB for audio and video, and 100 MB for documents.
9. Hand off to a human
This is a policy requirement. The WhatsApp Business Messaging Policy (updated 23 September 2026) says: “You may use automation when responding during the 24-hour window, but must also have available prompt, clear, and direct escalation paths”, and lists six: in-chat human agent transfer, phone number, email, web support, in-store visits or a support form. Have the escalate_to_human tool set a handoff flag for that wa_id, alert a person and tell the user what happens next; skip the agent while the flag is set. The person replies through the API (an n8n form, a helpdesk, or Send and Wait for Response to a staff member), because Meta says a number in use with WhatsApp can’t be registered unless deleted from the app first, except through partner-run coexistence onboarding. Our guide to AI-to-human handoff and context transfer covers what the person needs to see.
Day one. List the five conversations the agent must finish alone and send each from your phone through steps 1 to 5. Finished state: a stranger messages at 2 am, gets a correct reply, books a slot that appears once in the calendar, asks for a person and is told how they will be contacted, and the exchange exists in your own log, not only n8n’s execution history.
Zian runs AI agents that answer and follow up on WhatsApp alongside voice calls, SMS, email, Instagram DMs and Facebook Messenger, and book the appointment. It is in partnership-application beta.
The n8n WhatsApp agent build sheet
Each step, its n8n node or credential, what Meta must already have given you, and the failure you will meet first (checked 16 October 2026).
| Step | n8n node or credential | Meta prerequisite | The failure you will hit |
|---|---|---|---|
| 1. Credentials | WhatsApp OAuth2 (App ID, App Secret); WhatsApp API (token, Business Account ID) | Meta app with the WhatsApp use case; Messaging account; system user with 3 permissions | Token from API Setup is a user token and stops working within hours |
| 2. Inbound webhook | WhatsApp Trigger, Trigger On: Messages | App Secret; public HTTPS n8n URL with a valid certificate | Testing a published workflow overwrites the production webhook (one per app) |
| 3. Messages vs statuses | Trigger option Receive Message Status Updates; If node | Subscription to the messages field | Default “All” runs the workflow up to 3 more times per reply sent |
| 4. Agent | AI Agent (Tools Agent) + chat model sub-node | None | “No prompt specified” until Prompt is set to Define below |
| 5. Memory | Postgres or Redis Chat Memory, Session Key = wa_id | None | Simple Memory fails in queue mode; batched webhooks share the first item’s key |
| 6. Tools | Google Calendar, CRM, HTTP Request, Call n8n Workflow tools; Human review | None | Agent with no tool connected; unreviewed tool books or writes twice on a retried webhook |
| 7. Reply | WhatsApp Business Cloud: Send / Send Template | Open 24-hour window, or an APPROVED template | Error 131047 outside the window; “Bad request” when template parameters don’t match |
| 8. Media | WhatsApp Business Cloud: Media > Download, then HTTP Request | Token with whatsapp_business_messaging | Media URL expires after 5 minutes; null prompt on a non-text message |
| 9. Hand-off | Call n8n Workflow tool, handoff flag table, Send and Wait for Response | An escalation path the policy accepts | Agent keeps replying after a person takes over |
| 10. Errors | Error Trigger workflow; node setting Retry On Fail; On Error | None | Error workflows can’t be tested manually; Meta retries for 7 days, so duplicates arrive |
What we ran to check these expressions
We ran the WhatsApp Trigger’s event code, copied from n8n’s GitHub source (the item-flattening code and the filterStatuses function), in the QuickJS JavaScript engine against Meta’s own text-message sample plus image, status and two-user batch payloads built from Meta’s webhook reference syntax. We evaluated each expression on this page against the resulting items and mirrored the signature check in Python. We did not run a live n8n instance, so this tests logic and data paths, not n8n’s editor.
| Test | Input | Result |
|---|---|---|
| Prompt expression | Meta’s text sample | $json.messages[0].text.body returned “Does it come in another color?” (Meta’s sample text, verbatim) |
| Session Key and recipient | Meta’s text sample | wa_id and from both returned 16505551234; metadata.phone_number_id returned 106540352242922 |
| 24-hour window check | Stored last_inbound_ts from Meta’s sample; clock set 1, 23.9, 24.1 and 72 hours later | true, true, false, false |
| Non-text message | Image payload | Text-only expression returned null; guarded expression returned the caption |
| Status filter set to All (default) | sent, delivered and read webhooks for one reply | 3 extra workflow runs; failed (131047) passed through |
| Status filter set to Failed | Same four webhooks | 0 runs for sent, delivered and read; failed passed through |
| Signature check | Wrong App Secret, tampered body, missing header | All three dropped with no execution and no error |
| Batched POST | Two users’ messages in one delivery | 2 items from one POST, one per user |
Two results matter. A wrong Client Secret raises no error in n8n’s code; the trigger returns nothing, so a broken credential looks like “nobody is messaging us”. And Meta batches up to 1,000 updates per POST, so one execution can carry two users, while n8n’s docs say “in sub-nodes, the expression always resolves to the first item”: a memory Session Key would read the first user’s wa_id for both. At volume, use Loop Over Items with a batch size of 1, or a sub-workflow per message.
Where a DIY n8n WhatsApp agent breaks
Template approval and pausing
Anything sent first, or after the window closes, must be an approved template. Meta says review “can take up to 24 hours”, appeals take up to 24 hours, and you can create 100 templates per hour; an unverified portfolio holds 250 per Messaging account (6,000 once verified with an approved display name). A low-quality template is paused for 3 hours, then 6, then disabled, so handle the message_template_status_update event before your follow-up sends start failing.
Quality rating and messaging limits
Meta caps how many unique users your portfolio can deliver to outside a customer service window in a moving 24 hours: 250 for a new portfolio, then 2,000, 10,000, 100,000 and unlimited. Replies inside an open window don’t count. Above 2,000, the limit rises one level within 6 hours if quality, judged on seven days of blocks, reports, mutes and archives, stays high and you used at least half your limit in the last 7 days. An inbound-only agent rarely meets these limits; one sending templates to more than 250 people a day outside an open window meets them on day one.
Conversation memory across sessions
Memory keyed on wa_id remembers the chat, not the customer. Name, last booking, stage and opt-out belong in a CRM or database the agent reads as a tool.
n8n execution limits and pricing
n8n Cloud prices by executions; its FAQ says to estimate a chatbot as conversations times messages per conversation. In its favour, “a single run of your entire workflow” is one execution, however many tools the agent calls. These are the figures n8n’s pricing page served us on 16 October 2026, in euros:
| Plan | Hosting | Executions per month | Price (monthly / billed annually) | Concurrent executions | Max execution duration | Execution log retention |
|---|---|---|---|---|---|---|
| Starter | n8n Cloud | 2,500 | €24 / €20 per month | 5 | 5 min | 7 days |
| Pro | n8n Cloud | From 10,000 | From €60 / €50 per month | 20 / 50 | 40 min | 30 days |
| Business | Self-hosted only | From 40,000 | From €800 / €667 per month | Not shown | Not shown | Not shown |
| Enterprise | Cloud or self-hosted | Custom | Contact sales | 200+ | 40 min | Unlimited |
| Community edition | Self-hosted | No n8n execution charge | Free (your server costs) | Unlimited unless you set a limit | Your configuration | Your configuration |
A worked example with illustrative inputs: 300 conversations a month, 7 inbound messages each, one AI reply per message, so 300 × 7 = 2,100 inbound executions. With status updates left on All, each reply adds up to three runs: 2,100 + 2,100 × 3 = 8,400 executions, 3.4 times Starter’s 2,500. Filtered to Failed, the month is 2,100 and fits. Meta bills separately: since 1 October 2026 each business phone number gets 1,000 free service messages a month, so those 2,100 replies include 1,100 billable ones, unless some come from people who messaged from a Click to WhatsApp ad on Meta’s Android or iOS app, whose replies fall in Meta’s free entry point window of up to 7 days. Meta’s WhatsApp Business marketing site still says it does not charge for service messages as at 16 October 2026; the developer pricing page, updated 30 September 2026, is the one that reflects the October change. Our breakdown of WhatsApp Business API cost per message for AI agents prices them. Meta also sells its own AI replies, Meta Business Agent, charged at US$2.00 per million tokens, which it estimates at about 4–5 US cents per message, with no free tier and no free entry point exemption.
Self-hosting removes the n8n bill, not the work: n8n says both options “support production use” and the Community edition is free, but the server and upgrades are yours. Self-hosted n8n sets no concurrency limit by default, so set N8N_CONCURRENCY_PRODUCTION_LIMIT.
Error handling, retries and duplicates
Meta retries a failed webhook delivery “over the next 7 days” and tells you to deduplicate, so check each message ID (the wamid) against a table before the agent runs. Use Retry On Fail for transient send errors, set On Error to Continue (using error output) on the send node, and assign an Error Trigger workflow in the workflow settings. n8n notes the Error Trigger runs only on automatic executions, so you can’t test it manually, and on Cloud you can’t retry executions queued over your concurrency limit.
Logging and consent records
Meta’s webhook page says: “There are no APIs for fetching historical webhook data, so capture and store webhook payloads accordingly.” n8n’s history is not that store (Starter keeps 2,500 saved executions for 7 days), so write every message, status, hand-off and opt-in to your own database. Meta’s opt-in page requires that opt-in says the person is opting in to messages from your business, names the business and complies with applicable law.
Meta’s account model change in 2028
Meta’s account model page says that from Phase 3 (H1 2028) “all APIs that target the business phone number ID in the URL path (including the Messages API…) must target the WhatsApp account ID”. The WhatsApp Business Cloud node sends to the phone number ID today, so plan for a node update or an HTTP Request workaround.
Build or buy: the threshold table
These crossover points come from the n8n and Meta limits above, not a survey. Past the right-hand column, you are running a messaging operation and the build is the smaller cost.
| If this is your situation | Build it in n8n | Hand it to a platform or service |
|---|---|---|
| Inbound WhatsApp messages per day | Up to about 80 (2,500 Starter executions ÷ 30 days, with status updates filtered) | Hundreds a day across several numbers, where executions, concurrency and Meta’s service charges all scale together |
| AI replies per number per month | Up to 1,000 (Meta’s free service tier, about 33 a day) | Well past 1,000, where every reply after the 1,000th is billed (outside a free entry point window) and reply quality drives the quality rating |
| Messages the agent sends first | None or a few utility templates | Template follow-ups to lists, where the 250 to 2,000 messaging limit, template pausing and quality rating need someone watching |
| Templates you maintain | 1 to 5 | Dozens across languages, each reviewed for up to 24 hours |
| Hand-offs to a person | A few a week, answered by one person | Daily hand-offs that need an inbox, context and response times |
| Channels | WhatsApp only | WhatsApp plus calls, SMS, email, Instagram DMs and Messenger for the same lead |
| Who maintains it | Someone who can read n8n executions and Meta error codes | Nobody on the team wants the pager |
Who can run a WhatsApp AI agent for you: the options
Disclosure: zian.ai publishes this list and appears in it. Method: ranked by how much of the work after Meta access each option takes off the business, using each option’s published capabilities only.
| Rank | Option | What it takes off you | Who it suits |
|---|---|---|---|
| 1 | Zian (platform) | AI sales and reception agents that run WhatsApp conversations alongside voice calls, SMS, email, Instagram DMs and Facebook Messenger, and book appointments; SmartReach AI™ orchestrates message, channel and timing; 30+ languages; HubSpot, Salesforce, HighLevel and Zapier integrations | Teams that want qualification, follow-up and booking across channels, not a workflow to maintain |
| 2 | LeadsNow.ai (done-for-you, runs on Zian) | Managed AI appointment setting, pay-per-result; leads answered in under 60 seconds, 24/7 | Businesses that want booked appointments rather than software |
| 3 | Meta Business Agent (Meta’s own AI agent) | Meta says it can answer questions about your business, “book appointments and qualify incoming leads” and let you decide when a team member steps in; on the Business Platform its replies are charged per token (about 4–5 US cents per message) | Businesses happy for Meta’s own agent to run the replies inside WhatsApp and to pay Meta per reply |
| 4 | n8n Cloud build | Hosting and upgrades; you own the workflow, prompts, templates, logs and hand-offs | A WhatsApp-only agent under the thresholds above, with someone to maintain it |
| 5 | Self-hosted n8n (Community edition) | No n8n licence fee; you own everything, including the server | Teams with infrastructure skills and data-residency reasons to host |
Frequently asked questions
How do I build a WhatsApp AI agent with n8n?
Get WhatsApp Cloud API access from Meta first, then create two n8n credentials: WhatsApp OAuth2 (App ID and App Secret) for the WhatsApp Trigger, and WhatsApp API (system-user token and Messaging account ID) for sending. Connect WhatsApp Trigger, an If node, the AI Agent with a chat model, Postgres Chat Memory keyed on wa_id and at least one tool, then a WhatsApp Business Cloud Send node.
Can n8n send WhatsApp messages outside the 24-hour window?
Only as approved templates. Meta’s service messages page says a 24-hour customer service window opens when a user messages or calls you and resets each time they do; when it closes, you can only send pre-approved template messages. In n8n that means the Send Template operation, and a free-form Send outside the window fails with error 131047.
Does the n8n WhatsApp Trigger need a verify token?
No. In n8n’s source, the WhatsApp Trigger registers the webhook with Meta when you publish the workflow, uses its own node ID as the verify token and answers Meta’s challenge itself. It checks each payload’s signature with the App Secret from your OAuth2 credential, and a wrong secret drops events without an error. Only one WhatsApp Trigger works per Meta app.
How many n8n executions does a WhatsApp chatbot use?
One per inbound message, plus one per status update you let through. In our test of the trigger’s own filter code, the default setting ran the workflow for sent, delivered and read updates, adding up to three runs per reply. Setting Receive Message Status Updates to Failed only took a 300-conversation, 7-message month from 8,400 executions to 2,100; n8n Cloud Starter includes 2,500.
Why does my n8n WhatsApp agent forget earlier messages?
Either there is no memory sub-node, or its Session Key is not tied to the sender. n8n’s Tools Agent docs say memory doesn’t persist between sessions, and the WhatsApp Trigger supplies no sessionId, so set the key to the sender’s wa_id. Use Postgres or Redis Chat Memory in production; Simple Memory does not work in queue mode.
Is it allowed to run an AI agent on WhatsApp without a human?
Automation is allowed inside the 24-hour window, but the WhatsApp Business Messaging Policy says you “must also have available prompt, clear, and direct escalation paths”, such as an in-chat human agent transfer, a phone number, email, web support, an in-store visit or a support form. Build the escalation tool before go-live, and get opt-in before you message anyone.
Where every figure on this page comes from
| Figure | Who published it | Link | Date read |
|---|---|---|---|
| 24-hour customer service window; templates only once it closes; known issue; quality from past seven days | Meta for Developers | Service messages | 16 October 2026 |
| User tokens expire within hours; system-user token with three permissions; error code 200 | Meta for Developers | Access tokens guide | 16 October 2026 |
| Messaging account ID shown in API Setup; temporary token; system user steps | Meta for Developers | WhatsApp Cloud API Get Started | 16 October 2026 |
| Webhook retries over 7 days; batches of up to 1,000; no historical webhook API; TLS and hub.challenge | Meta for Developers | Create a webhook endpoint | 16 October 2026 |
| Text-message webhook sample used in our test | Meta for Developers | WhatsApp webhooks | 16 October 2026 |
| Image and status webhook syntax used to build test payloads | Meta for Developers | Image messages webhook reference; Status messages webhook reference | 16 October 2026 |
| Media URL valid 5 minutes; webhook media IDs 7 days; 5 MB images, 16 MB audio and video, 100 MB documents | Meta for Developers | Media | 16 October 2026 |
| Text body maximum 4,096 characters | Meta for Developers | Text messages | 16 October 2026 |
| Error 131047; synchronous and asynchronous errors | Meta for Developers | WhatsApp error codes | 16 October 2026 |
| Template review up to 24 hours; appeals within 24 hours | Meta for Developers | Template review | 16 October 2026 |
| 100 templates per hour; 250 and 6,000 template caps | Meta for Developers | Template fundamentals | 16 October 2026 |
| Template pausing 3 hours, 6 hours, then disabled | Meta for Developers | Template pausing | 16 October 2026 |
| Messaging limits 250, 2,000, 10,000, 100,000, unlimited; half the limit in 7 days; within 6 hours | Meta for Developers | Messaging limits | 16 October 2026 |
| 1,000 free service messages per number per month from 1 October 2026; free entry point window up to 7 days for Click to WhatsApp ads; Meta Business Agent US$2.00 per million tokens, about 4–5 US cents per message, no free messages | Meta for Developers (page updated 30 September 2026) | Pricing on the WhatsApp Business Platform | 16 October 2026 |
| Marketing site still says service messages are not charged | WhatsApp Business (Meta) | WhatsApp Business Platform pricing | 16 October 2026 |
| Meta Business Agent: answers questions, books appointments, qualifies leads, team member steps in | Meta | Be There for Every Customer With Meta Business Agent | 16 October 2026 |
| Phase 3 (H1 2028): phone number ID paths move to WhatsApp account ID | Meta for Developers | Updates to WhatsApp Business accounts | 16 October 2026 |
| Numbers in use with WhatsApp must be deleted before registering | Meta for Developers | Business phone numbers | 16 October 2026 |
| Direct developers using only their own data need no App Review | Meta for Developers | WhatsApp permissions | 16 October 2026 |
| Coexistence through Embedded Signup | Meta for Developers | Onboard WhatsApp Business app users | 16 October 2026 |
| Three opt-in requirements | Meta for Developers | Get opt-in for WhatsApp | 16 October 2026 |
| Six escalation paths for automation (policy updated 23 September 2026) | WhatsApp Business Messaging Policy | 16 October 2026 | |
| One webhook per app; unpublishing halts production traffic | n8n | WhatsApp Trigger | 16 October 2026 |
| Status filter default All; node ID as verify token; signature check; one trigger per app | n8n (source code) | WhatsAppTrigger.node.ts | 16 October 2026 |
| Three message operations, three media operations; Text Body 4,096 characters | n8n | WhatsApp Business Cloud node; MessagesDescription.ts | 16 October 2026 |
| Two credential types and their fields | n8n | WhatsApp Business Cloud credentials | 16 October 2026 |
| Agent type deprecated from 1.82.0; at least one tool required | n8n | AI Agent | 16 October 2026 |
| Max Iterations default 10; five chat models; memory doesn’t persist between sessions | n8n | Tools Agent | 16 October 2026 |
| Simple Memory not for queue mode; sub-node expressions resolve to the first item | n8n | Simple Memory | 16 October 2026 |
| Starter, Pro, Business and Enterprise executions, prices, concurrency, duration and retention | n8n | n8n Plans and Pricing | 16 October 2026 |
| Cloud concurrency queue; queued executions can’t be retried | n8n | Understand concurrency | 16 October 2026 |
| Self-hosted concurrency unlimited by default | n8n | Control concurrency | 16 October 2026 |
| Both options support production; Community edition free | n8n | Choose how to use n8n | 16 October 2026 |
| AI books 40+ meetings/week for many teams | Zian (first-party) | zian.ai | 16 October 2026 |
| LeadsNow.ai: under 60 seconds, 24/7; pay-per-result | LeadsNow.ai (first-party) | leadsnow.ai | 16 October 2026 |
Want the agent without maintaining the workflow? Zian’s AI agents answer, qualify and book across WhatsApp, calls, SMS and email during the partnership-application beta.