Necesito AYUDA: El trigger de WhatsApp no se activa al recibir mensaje de WA pero sí se activa al probar con mensaje de webhook de Meta

HOLA a todos, estoy intentando activar un mensaje de WhatsApp desde mi aplicación de WhatsApp - cuando envío el mensaje desde mi número personal de WhatsApp al número de prueba, el flujo de n8n no se activa

sin embargo, cuando presiono el botón de prueba en el flujo de mensajes en la página del webhook de Meta, el flujo se activa - no puedo encontrar la discrepancia entre la llamada API que se realiza cuando presiono el botón de prueba en el botón de prueba de mensaje del webhook de Meta y la llamada API que se realiza cuando envío un mensaje al número de prueba - ALGUIEN POR FAVOR AYUDE

P.D. - Las URL de devolución de llamada de Webhook y todo está configurado correctamente, ya que cuando hago clic en el botón a continuación, el flujo de n8n funciona bien, sin embargo, cuando envío un mensaje al número de prueba no responde

El botón de prueba del webhook de Meta y los mensajes reales de WhatsApp siguen rutas diferentes — esa es la razón típica de este comportamiento dividido. Aquí hay algunas cosas que verificar:

1. Suscripción al campo Webhook
En Meta for Developers → WhatsApp → Configuration, asegúrate de que el campo messages esté marcado en Webhook Fields. Sin estar suscrito, los mensajes reales no llegarán a tu webhook aunque el botón de prueba funcione (omite el filtro de suscripción).

2. Coincidencia del ID de número de teléfono
En tu nodo WhatsApp Trigger de n8n, verifica que el Phone Number ID coincida con el asociado a tu número de prueba. Una falta de coincidencia causa descartes silenciosos en mensajes reales.

3. Aplicación en modo Development vs Live
Si tu aplicación Meta aún está en modo Development, solo los números añadidos como números de prueba en Meta Business Suite pueden activar el webhook con mensajes reales. Ve a App Settings → Basic y verifica el modo de tu aplicación.

4. Verificación rápida de cordura
En tu flujo de trabajo de n8n, haz clic en “Listen for test event” mientras el flujo de trabajo está activo, luego envía un mensaje real de WhatsApp. Si nada llega al registro de ejecución de n8n en absoluto, el problema está del lado de Meta (suscripción o modo de aplicación). Si llega pero el nodo no se activa, es un problema de configuración del nodo.

¡Excelentes puntos arriba! Solo para añadir dos errores comunes específicos de n8n que causan exactamente este escenario de ‘La prueba funciona, el mensaje real falla’:

1. Error de coincidencia de URL de prueba versus producción En n8n, tu webhook tiene dos URLs diferentes: una para pruebas (.../webhook-test/...) y otra para producción (.../webhook/...). Verifica cuál URL exacta pegaste en la Consola de Desarrolladores de Meta.

  • Si pegaste la URL webhook-test, los mensajes reales se registrarán SOLO cuando hayas hecho clic activamente en ‘Escuchar evento de prueba’ en la interfaz de n8n. Una vez que el flujo esté simplemente ‘Activo’, ignorará los mensajes reales.

  • Si pegaste la URL webhook (producción), hacer clic en ‘Escuchar evento de prueba’ ignorará completamente los mensajes reales entrantes. Asegúrate de que tu URL en Meta coincida con el estado exacto que estás intentando probar.

2. Registros de entrega de webhooks de Meta Ve a tu Panel de aplicaciones de Meta → Webhooks. Desplázate hacia abajo para encontrar la sección ‘Errores recientes’ (o registros de entrega de webhooks). Si Meta está enviando exitosamente el mensaje real pero tu instancia de n8n está devolviendo un error 500, agotando el tiempo de espera, o rechazando la estructura del payload, Meta registrará el código de respuesta HTTP exacto allí. Esto te dice instantáneamente si el problema es que Meta no está enviando, o n8n está rechazando la conexión.

Hola, gracias por tomarte el tiempo de responder la consulta. Volví a verificar las opciones que me pediste y parece que todo está en su lugar

  1. Creo que el ID del número de teléfono está configurado en el disparador de mensaje de envío (en el nodo de disparador de mensaje de WhatsApp, solo veo la opción de configurar las credenciales, y he puesto ID de cliente = ID de aplicación, ID secreto = secreto de aplicación; corríjeme si me equivoco)
  2. La aplicación está en modo de desarrollo, hago clic en Ejecutar flujo de trabajo y envío el mensaje, pero aún así el nodo no se activa
  3. Parece haber un problema con la meta porque no recibo nada en n8n

@n8n_Sensei Hola, gracias por tomarte el tiempo y responder la consulta.

  1. He pegado las URLs de prueba e intenté enviar un mensaje mientras el flujo de trabajo estaba escuchando el desencadenante, pero no veo nada en n8n

  2. Aquí en los registros del webhook, puedo ver que el mensaje está registrado, sin embargo, no se transfiere a mi nodo de n8n

Con la información que das en la publicación se me hace difícil decirte que podría estar fallando. Si queres podes mandarme mas detalles a mi mail y te doy una mano personalmente. Saludos!!

Mail: lautaro.automation@gmail.com

Hola @aditya_bansod
Un mensaje que aparece solo en el registro de eventos webhook de Meta significa que Meta lo recibió. La entrega va a cualquier aplicación a la que esté suscrita tu Cuenta de Negocio de WhatsApp, y en aplicaciones recién creadas a menudo es la propia aplicación “WA DevX Webhook Events 1P App” de Meta en lugar de la tuya, por lo que la prueba del panel llega mientras los mensajes reales van a otro lugar. Abre el Explorador de API de Graph de Meta y establece el endpoint en tu ID de WABA (WhatsApp > API Setup):

<WABA_ID>/subscribed_apps

Envíalo como GET y busca el nombre de la aplicación que regresa. Si no es tu aplicación, cambia el método a POST y envía, luego GET nuevamente para confirmar que tu aplicación ahora está listada. Los mensajes comienzan a llegar inmediatamente después.
Mira esto:

@Anshul_Namdev La corrección de subscribed_apps es muy útil aquí. Como mencionaste antes, crear una nueva aplicación no mueve automáticamente la suscripción de WABA de la aplicación de desarrollador predeterminada de Meta. Ejecutar el GET como primer paso para confirmarlo, y luego el comando POST para mover la aplicación hará el truco y debería comenzar a funcionar inmediatamente después.

Hola, una nota adicional: se recomienda mantener la solución de problemas pública en público, en lugar de pasar a correos personales. Los hilos públicos permiten que las personas que enfrentan los mismos problemas investiguen el problema, y es la mejor manera de mantener la solución de la aplicación segura para el público e instrucciones para todos.

Hola, tengo el mismo problema que ustedes. ¿Lograron resolver el problema?

Todas mis suscripciones se realizaron correctamente con los WABA_ID correctos. Mi aplicación de Meta está publicada y mi workflow de n8n (cloud) también está publicado correctamente. Mi callback_url en Meta es la URL de producción correcta.

  1. Si abro el workflow en el editor de n8n y hago clic en “Execute workflow” justo antes de enviar un mensaje por WhatsApp al número, la solicitud llega correctamente y el workflow se activa normalmente.
  2. Si no hago clic en “Execute workflow” (comportamiento esperado en funcionamiento normal/prod), no llega nada: el workflow nunca se activa automáticamente.
  3. En comparación, con el número de prueba proporcionado por Meta (webhook predeterminado del Panel de la App), los mensajes se reciben correctamente cada vez.

¿Hay alguna configuración que me haya podido perder?

¡Hola @Elia_Levy! La razón por la que funciona cuando haces clic en «Execute Workflow» pero falla en operación de producción normal es casi siempre debido al **desajuste entre la URL del Webhook de Prueba y Producción** en el Panel de Desarrolladores de Meta.

Aquí están los 2 pasos para solucionarlo completamente:

### 1. Verifica la ruta de la URL del Webhook en el Panel de la Aplicación Meta

Cuando haces clic en «Execute Workflow» en el editor de n8n, n8n escucha en la **URL del Webhook de Prueba**:

`https://your-instance.n8n.cloud/webhook-test/your-uuid\`

Para la operación de producción normal (cuando NO estás haciendo clic en «Execute Workflow»), Meta debe enviar eventos a la **URL del Webhook de Producción**:

`https://your-instance.n8n.cloud/webhook/your-uuid\` *(observa `/webhook/` en lugar de `/webhook-test/`)*

* Ve a **Meta Developer Portal → WhatsApp → Configuration → Edit Webhook**.

* Asegúrate de que la **Callback URL** apunte a `/webhook/…` y NO a `/webhook-test/…`.

### 2. Asegúrate de que el conmutador Workflow Active esté ACTIVADO

En n8n, los Webhooks de Producción SOLO escuchan si el flujo de trabajo está explícitamente **ACTIVO**:

* Activa el conmutador **Active** en la esquina superior derecha del lienzo de tu flujo de trabajo de n8n a **ACTIVADO**.

* Si el flujo de trabajo está inactivo, n8n descarta silenciosamente las llamadas de webhook de producción entrantes de Meta sin activarse.

### 3. Verifica las suscripciones a eventos

En la configuración del Webhook de Meta, asegúrate de haberte suscrito a `messages` bajo eventos de **WhatsApp Business Account**, y que tu aplicación Meta esté vinculada a tu WABA ID a través de `/{WABA_ID}/subscribed_apps` como mencionó @Anshul_Namdev.

¡Una vez que Meta tenga la URL `/webhook/` (prod) y el conmutador del flujo de trabajo de n8n esté **Activo**, los mensajes de WhatsApp entrantes se activarán automáticamente 24/7 sin necesidad de tener el editor abierto!

Estimado.
Estuve 3 horas con este problema y no lograba solucionarlo.

Aquí los pasos que para mí funcionaron exactamente con tu mismo escenario.

  1. Ingrese a la siguiente URL business.facebook.com/wa/manage/phone-numbers y allí debe aparecer tu número de pruebas, clic sobre el número.
  2. Al ingresar al número, revisa la URL y veras un parametro de asset_id=, copia ese número.
  3. En otra pestaña, ingresa al Graph API Explorer (https://developers.facebook.com/tools/explorer/), selecciona tu aplicación, usuario o página este seleccionado Identificado de usuario, valida que el permisos whatsapp_business_management este agregado, luego selecciona el metodo POST, y en la URL, después del /v26.0, elimina esos valores y agrega tu asset_id/subscribed_apps (Ejemplo: v26.0/2548428515454815/subscribed_apps y ejecuta.
  4. La respuesta debe ser {“success”: true}.
  5. Prueba en n8n, y te debe funcionar.

@aditya_bansod — Creo que la respuesta ya está en tu primer mensaje,
en dos líneas que nadie ha conectado.

“cuando envío el mensaje desde mi número personal de WhatsApp”
“la aplicación está en modo de desarrollo”

Esa combinación es el problema.

En modo Desarrollo, Meta solo dispara eventos webhook para números
explícitamente agregados como destinatarios de prueba. Tu número personal
no es uno de ellos, así que Meta acepta y entrega el mensaje pero nunca
envía el evento webhook. Nada llega a n8n porque nada fue enviado.

El botón de prueba de Meta funciona porque publica directamente en tu URL
y omite completamente la capa de suscripción. Por eso los dos se comportan
de manera diferente — no es una discrepancia en la carga útil, son dos
caminos de código diferentes.

Solución, en orden:

  1. Panel de Meta > WhatsApp > Configuración de API > Campo “Para” > Administrar
    lista de números telefónicos. Agrega tu número personal. Recibirá un
    código de verificación por SMS.

  2. Envía desde ese número nuevamente. El webhook debería dispararse.

Dos cosas que confirmarán esto antes de que cambies algo:

Panel de aplicaciones de Meta > Webhooks > desplázate hasta intentos de entrega.
Si no hay intentos en absoluto para los mensajes reales — no intentos fallidos,
ninguno — entonces Meta nunca envió, lo que descarta todo en el lado de n8n.
Eso es lo que esperarías aquí.

También vale la pena saberlo independientemente del modo: Meta nunca envía
eventos webhook para mensajes enviados desde el mismo número que posee la WABA.
Si alguna vez pruebas enviando un mensaje al número comercial desde sí mismo,
recibes silencio, y se ve idéntico a este problema.

Uno más, para cuando pases a producción:

El modo Desarrollo te limita a cinco destinatarios de prueba. Pasar a Live
requiere Verificación de Empresa, que toma días en lugar de horas —
vale la pena comenzar ahora si esto va a producción, porque se convierte
en el bloqueador después de que todo lo demás funcione.

Una prueba de Meta demuestra que el endpoint es accesible, pero no que la suscripción activa de WhatsApp está completa. Verifica que la app esté suscrita al campo de mensajes, que el número de teléfono pertenezca a esa app y que la URL del webhook de producción coincida con el flujo de trabajo n8n activo.