How do you integrate n8n with WhatsApp Business API?
An n8n WhatsApp integration is a workflow that sends or receives official WhatsApp Cloud API traffic from n8n: a trigger (Shopify order, Google Sheet, webhook, cron) maps an E.164 number and template variables, then an HTTP Request node POSTs to Graph API or to your BSP’s send endpoint. It is not Zapier’s consumer “WhatsApp Notifications” app and it is not an unofficial WhatsApp Web scraper. Business-initiated messages need Meta-approved templates; free-form text only works inside the 24-hour customer session. Ominiflow is the Cloud API inbox, chatbot, and Meta-at-cost layer; n8n is optional glue for apps without a native connector. Prefer native Shopify/Zoho on Ominiflow when the job is cart, COD, or CRM logging — n8n task-hosting and token rotation become the failure mode at volume.
Last updated: 18 September 2026
n8n WhatsApp integration is the search that vendors answer with “hire our n8n team.” The technical fact is smaller: n8n is an open-source workflow runner. WhatsApp Business messaging is Meta Cloud API. You connect them with HTTP — the same pattern as Zapier and Make — plus a number that is allowed to send.
This guide is the operator version: official vs unofficial nodes, a Cloud API recipe, webhook ingest, when n8n is the wrong layer, and how Ominiflow fits so you are not paying a consultancy to reinvent a Shopify trigger we already ship.
HTTP
the actual integration — Graph API or BSP send URL, not a magic WhatsApp node
Templates
required for business-initiated messages; session text only inside 24 hours
Native first
Shopify, Zoho, WooCommerce on Ominiflow — n8n for the leftover apps
Too long? Start here
- Business path: trigger in n8n → map phone + template vars → HTTP POST to Cloud API or Ominiflow → Meta delivers.
- Do not use community nodes that drive WhatsApp Web or a personal number. Those ban. Cloud API does not.
- Phone: E.164 without plus — India
919876543210. - India Meta rates (verify live card): marketing ₹0.86, utility/auth ₹0.115 per billed template. n8n does not waive them.
- If the trigger is Shopify checkout or Zoho stage, skip n8n — Shopify workflows · Zoho without Zapier.
- Self-hosting n8n does not make you a BSP. You still need a WABA, a token, and someone who owns quality rating.
Two stacks that both say “n8n WhatsApp”
| Unofficial | Official Cloud API | |
|---|---|---|
| Transport | WhatsApp Web / Baileys-style session | Graph API /{PHONE_NUMBER_ID}/messages or BSP REST |
| Identity | A phone that logs into WhatsApp | A WABA phone registered on Cloud API |
| Broadcasts | Grey-market; quality death | Approved templates + opt-in |
| Team inbox | None | Shared inbox on the BSP |
| When it breaks | QR logout, ban, Multi-Device cap | Token expiry, template reject, 131xxx errors |
Community n8n nodes exist for both. Search ranking does not tell you which one you installed. If the credentials are “session string” or “scan this QR,” stop.
A working Cloud API recipe in n8n
- WABA on a BSP. Ominiflow Embedded Signup, number registered, template approved. How to get WhatsApp API.
- Trigger. Webhook (form, custom app), Google Sheets new row, schedule, or an app n8n already has. Native Shopify/Zoho events should not start here.
- Normalize the phone. Strip spaces, leading zeros, plus. Force country code. Drop rows that are not digits.
- HTTP Request node. Method POST. URL either Meta Graph (
https://graph.facebook.com/v21.0/{PHONE_NUMBER_ID}/messages) with a system user token, or your Ominiflow send endpoint with the platform API key. Header:Authorization: Bearer …andContent-Type: application/json. - Body.
messaging_product: whatsapp,to,type: template, template name + language + components. Match the approved body variables exactly — extra lines fail. - Error branch. 400/131047 (re-engagement) and 131026 (undeliverable) are not “retry until it works.” Log, tag, move on. 401 is a dead token — rotate, do not loop.
- Inbound (optional). Point the WABA webhook at n8n only if you like debugging Meta retries at 2 a.m. Prefer Ominiflow to ingest webhooks, then emit a filtered webhook to n8n for the 5% of events a sheet or ERP still needs.
That last point is the consultancy upsell: they will happily subscribe n8n to every message, status, and echo. You will then rebuild an inbox in a workflow tool. Buy the inbox; workflow the exceptions.
Patterns that belong in n8n
- Long-tail SaaS — a vertical CRM with no Ominiflow connector, order-created webhook → utility template.
- Internal tools — Airtable / Notion status change → WhatsApp to a sales group… no: to the customer with an approved template, or to Slack for the team. Do not spam a WhatsApp group as your ops bus; Groups API is a different product (Groups API).
- Multi-step that is not chat — payment captured in Razorpay → wait → if COD still open, send confirm template; if paid, skip. Visual wait nodes are why people pick n8n over a 3-step Zap.
- Data hygiene — nightly sheet → invalid numbers out → only then a broadcast. Broadcast itself still belongs on the BSP so quality rating is one number, one UI. Bulk messaging.
Patterns that do not belong in n8n
- Abandoned cart, COD confirm, shipped — Shopify native on Ominiflow.
- Zoho deal stage → template — native OAuth, not an HTTP round-trip you will forget to paginate.
- Multi-agent support — that is a shared inbox, collision detection, SLA. n8n cannot be your contact center.
- “Hire us, 48–72 hour custom workflows” as a substitute for Cloud API onboarding. Onboarding is Meta verification. A workflow file is not a WABA.
What you actually pay
- n8n Cloud or a VPS (your ops cost).
- BSP platform — Ominiflow from ₹15,000/year.
- Meta template fees on every delivered message. n8n self-host does not make marketing free.
- Token/secret rotation. A leaked system user token in an n8n credential is a production incident, not a “community node issue.”
Webhook reliability and template errors: webhook guide · API integration.
Where Ominiflow sits
Ominiflow is the WhatsApp Cloud API layer: Embedded Signup, templates, inbox, visual bots, Meta at cost. n8n is optional glue. Connect HTTP to send templates or receive a filtered webhook. IST support will look at your mapping on a call; we will not become your standing n8n staff. If you need a full-time workflow consultancy, hire one — and still park the number on official Cloud API so the day they churn you are not left with a WhatsApp Web session.
Start free on Ominiflow Integrations hub
Related
FAQ
Does n8n have an official WhatsApp node? expand_more
n8n can call any HTTP API. Meta’s official business path is Cloud API. Treat community WhatsApp Web nodes as unsafe for customer traffic.
Can n8n replace a WhatsApp BSP? expand_more
No. You still need a WABA, token, template pipeline, quality rating, and an inbox. n8n orchestrates; it does not onboard you to Meta.
Is self-hosted n8n cheaper than Zapier for WhatsApp? expand_more
Often, at high operation counts — until you add hosting, backups, and the engineer who debugs webhook retries. Native Ominiflow connectors are cheaper still for Shopify and Zoho because there is no per-task line.
How do I receive WhatsApp messages in n8n? expand_more
Subscribe webhooks on the WABA (or use Ominiflow’s outbound webhook) and expose an n8n webhook URL over HTTPS. Verify the Meta hub challenge. Do not point the primary customer inbox at n8n.
What phone format does the WhatsApp Cloud API expect from n8n? expand_more
Digits in E.164 without a plus: 9198… for India. Letters, spaces, and a leading 0 are common 400s. Last updated 18 September 2026. Graph versions and Meta rates change — verify the live Cloud API docs and rate card. n8n is a third-party workflow tool; Ominiflow does not sell n8n hosting.