Skip to main content
A reply typed by hand in the WhatsApp Business app is still POSTed to your webhook. Your n8n, Make, or Zapier automation still runs.

The job

You (or a teammate) can keep answering customers directly from the phone, in the WhatsApp Business app — you don’t need to delete it. Meta WhatsApp Coexistence keeps that number working in the app and in Notifyer System at once. Those phone replies are outgoing messages, and Notifyer sends them to your webhook or automation trigger when outgoing events are enabled — even though no bot, template, or Notifyer chat inbox was involved. This page shows the exact fields that mark a reply as “typed in the app,” and how to filter on them in n8n, Make, or Zapier.

The three fields

A WhatsApp Business app reply carries this exact combination — incoming_message: false (outgoing), send_by: "WhatsApp App" (sent from the phone app, not a teammate or an automation), was_message_by_human: true (a person typed it, not a bot):

Sample payload

Trimmed to the fields you need for filtering — same sanitized sample as the full payload reference:
The webhook sends more fields than shown here (conversation_paragraph, last_message_of_user, note, labels, and others) — see the full payload reference for every field.

How to filter for it

n8n

The WhatsAble trigger is labeled On new Incoming message event — that’s the node’s name, not the direction of every event it fires. With outgoing enabled (credential Notifyer System incoming and outgoing messages), it also fires for phone-typed replies.
1

Add the trigger

Add the WhatsAble node, pick On new Incoming message event, and connect the credential covering Notifyer System incoming and outgoing messages so outgoing events are included.
2

Add a Filter or IF node right after the trigger

Add a Filter (or IF) node immediately after the trigger.
3

Filter on the three fields

To match only phone-typed replies, add these conditions:
To match any human-sent message (phone app or Notifyer chat inbox), use {{ $json.was_message_by_human }} is true instead, then branch on {{ $json.send_by }} to tell them apart.
Full walkthrough: n8n overview.

Make and Zapier

Same payload, same field names. Add a Filter (Zapier) or Filter/Router (Make) right after your trigger module, using the three fields above. See Make overview and Zapier overview.

Full payload reference

This page only covers filtering. For every field (last_messages, conversation_paragraph, note, labels, Click-to-WhatsApp referral, and more), see Message webhooks.

Agent Skills

Automating webhook setup instead of using the dashboard? The automate-notifyer skill’s create-webhook.js takes --incoming and --outgoing flags — enable both so your endpoint also receives WhatsApp Business app replies:
See automate-notifyer for the full script reference.

FAQs

No — it’s just the node’s label. See filtering in n8n above; check incoming_message for the actual direction, not the trigger name.
Both are outgoing and human-sent — send_by is what separates them: "WhatsApp App" for the phone, or the teammate’s name (for example "Axel Meta") for the chat inbox.
No. Meta WhatsApp Coexistence keeps the app and Notifyer System working on the same number at once.
Confirm outgoing is enabled on the webhook or credential, then confirm your filter step isn’t excluding incoming_message: false events by mistake. See Message webhooks troubleshooting.

Need assistance?

Our technical support team is available to assist with webhook configuration, payload handling, and integration questions.