Describe the problem/error/question
I’m encountering a persistent issue where my WhatsApp Trigger node on a self-hosted n8n instance (running on Railway) is not receiving any incoming messages from Meta/WhatsApp. When the trigger is tested (or the workflow is active) and I send a message to my configured WhatsApp Business number, the trigger node executes but its output is always: “No fields - node executed, but no items were sent on this branch”.
A critical piece of information is that the WhatsApp Business Cloud node (for sending messages) works perfectly within the same workflow, using the exact same “WhatsApp OAuth account” credentials. This indicates that my Client ID, Client Secret, and n8n’s ability to authenticate with Meta for outbound API calls are correct.
To further isolate the issue, I’ve successfully used n8n’s native Chat Trigger as an input for the rest of my workflow (which includes an AI Agent, data processing, and Airtable integration). This modified workflow can then send the AI’s responses to my WhatsApp test number via the WhatsApp Business Cloud node without any problems. This strongly suggests the problem is specifically with the WhatsApp Trigger node’s ability to receive the inbound webhook from Meta.
I am relatively new to n8n and self-hosting. I’ve followed various community posts and the official Meta documentation for webhook setup. Before recent n8n updates , my WhatsApp triggers were functioning correctly.
What is the error message (if any)?
The WhatsApp Trigger node itself outputs:
No fields - node executed, but no items were sent on this branch
Previously, when I inadvertently had a duplicate trigger active in another workflow, n8n correctly showed the error:
“Problem running workflow: The WhatsApp App ID 645349525148844 already has a webhook subscription. Delete it or use another App before executing the trigger. Due to WhatsApp API limitations, you can have just one trigger per App.”
Deleting the other trigger resolved that specific error message, but the “No fields - node executed…” issue for the active trigger persists.
Please share your workflow
Share the output returned by the last node
No fields - node executed, but no items were sent on this branch
The WhatsApp Business Cloud node in my test workflow (using Chat Trigger) successfully sends messages and returns a success output from Meta.
Information on your n8n setup
-
n8n version: 1.95.3
-
Database (default: SQLite): PostgreSQL (Managed by Railway)
-
n8n EXECUTIONS_PROCESS setting (default: own, main): main
-
Running n8n via (Docker, npm, n8n cloud, desktop app): Docker on Railway.
-
Operating system: The underlying OS is managed by Railway. My local OS for interacting with n8n is Windows 10
Additional Context & Troubleshooting Steps Taken:
- Meta App Configuration: 645349525148844
-
Only one Facebook App is used for this WhatsApp Business Number.
-
Webhook Setup (WhatsApp → Configuration):
-
Callback URL: Set to the “Test URL” (or “Production URL”) provided by the n8n WhatsApp Trigger node: https://primary-production-64f81.up.railway.app/webhook-test/914dc90f-4d05-4c74-bb83-3521d58e9bc1/webhook
-
Verify Token: I understand that for n8n v1.95.3 with OAuth credentials, n8n handles its side of the verify token internally, and I don’t set this same token within the n8n credential UI anymore.
-
Webhook Fields Subscription: Confirmed subscription to the messages field. I have tried deselecting, saving, reselecting, and saving this field to ensure it’s correctly registered.
-
-
Meta’s “Verify and Save” for the webhook URL does not show persistent errors if the URL is reachable.
- “One Trigger per App” Limitation:
- I’ve ensured that no other n8n workflows or external services are configured with a webhook subscription for this specific Meta App ID. Only the problematic workflow contains an active WhatsApp Trigger.
Key Question for the n8n Community/Team:
Given that:
-
Outbound WhatsApp messages from n8n work fine.
-
The WEBHOOK_URL environment variable is set correctly with a trailing slash on Railway.
-
The n8n WhatsApp Trigger URL is correctly configured as the Callback URL in Meta.
-
A Verify Token is set in Meta (and n8n is expected to handle verification with OAuth credentials).
-
The webhook is subscribed to the messages field in Meta.
-
The “duplicate webhook subscription” error from n8n is no longer appearing after ensuring only one trigger.
What else could be causing the WhatsApp Trigger to not receive the webhook payload from Meta, resulting in the “No fields - node executed…” message? Are there any specific logging mechanisms in n8n (beyond the UI execution log) or Railway configurations that could provide more insight into whether Meta is even attempting to reach the webhook URL, or if n8n is silently failing the verification or processing?
Any guidance or further troubleshooting steps would be greatly appreciated as I am keen to resolve this.
