Blog · · 4 min de lectura

Cómo conectar WhatsApp Cloud API a n8n (Meta app, token y webhook)

Guía paso a paso para conectar WhatsApp Cloud API con n8n: crear la app en Meta, token temporal, Phone Number ID, webhook HTTPS, verificar y recibir el primer mensaje de prueba.

Antes de montar un agente de WhatsApp con IA, necesitas que n8n y WhatsApp Cloud API se hablen. Esa conexión es lo que más atasca a quien empieza: la app de Meta, el token, el Phone Number ID y un webhook HTTPS que Meta pueda alcanzar.

Esta guía cubre solo esa pieza: crear la app, sacar los datos, registrar el webhook en n8n, verificar el token y recibir un mensaje de prueba. Cuando eso funcione, ya puedes importar la plantilla gratuita del agente.

Qué vas a conectar

  1. Una app de Meta (tipo Business) con el producto WhatsApp.
  2. Un token de acceso (temporal al principio) y el Phone Number ID.
  3. Un nodo Webhook en n8n con URL pública HTTPS.
  4. La verificación del webhook (challenge de Meta) y el primer mensaje entrante.

Lo que necesitas

  • n8n con URL pública HTTPS (n8n Cloud, o autoalojado detrás de un túnel/servidor). localhost solo no vale: Meta no puede llamar a tu portátil. Si aún no lo tienes, empieza por instalar n8n gratis.
  • Cuenta en Meta for Developers (developers.facebook.com).
  • Unos 30–45 minutos la primera vez.

Paso 1: crea la app en Meta

  1. Entra en Meta for Developers → My Apps → Create App.
  2. Elige tipo Business (o el flujo actual equivalente a negocio).
  3. Pon un nombre claro (AgentKiosk-Prueba vale) y asocia un Business Portfolio si te lo pide.
  4. Dentro de la app, ve a Add products y añade WhatsApp.

En WhatsApp → API Setup verás el número de prueba, el Phone number ID, el WhatsApp Business Account ID y un botón para generar un token temporal.

Copia ya:

  • Phone number ID (no es el número que se ve en pantalla; es el ID numérico largo).
  • Temporary access token (caduca en horas; solo para pruebas).

Paso 2: el webhook en n8n

  1. Crea un workflow nuevo.
  2. Añade un nodo Webhook.
  3. Método: POST. Path: algo corto, por ejemplo whatsapp.
  4. Activa «Respond Immediately» o responde 200 en cuanto llegue la petición (Meta reintenta si tarda).
  5. Activa el workflow (o usa la URL de prueba según tu versión de n8n) y copia la URL de producción HTTPS.

Esa URL debe ser alcanzable desde Internet. Sin HTTPS, Meta rechaza el registro.

Paso 3: registra y verifica el webhook en Meta

En WhatsApp → Configuration (o API Setup → Webhook):

  1. Callback URL: la URL HTTPS de tu nodo Webhook.
  2. Verify token: inventa una cadena secreta (por ejemplo ak_verify_2026) y guárdala también en n8n.
  3. Meta enviará un GET con hub.mode, hub.verify_token y hub.challenge. Tu flujo (o el nodo Webhook en modo verificación) debe devolver el challenge en texto plano si el token coincide.
  4. Tras verificar, suscríbete al campo messages.

Si la verificación falla, casi siempre es: URL no HTTPS, workflow inactivo, o el verify token no coincide carácter a carácter.

Paso 4: recibe el primer mensaje de prueba

  1. En API Setup, añade tu número personal a la lista de destinatarios de prueba.
  2. Desde el panel de Meta (o con curl/Postman) envía un mensaje de plantilla/hola al número de prueba, o escribe tú al número de prueba desde tu WhatsApp.
  3. En n8n, ejecuta el workflow en modo listening y mira el JSON entrante: entry[0].changes[0].value.messages[0] suele traer el texto y el from del cliente.
  4. Para responder, usa el nodo HTTP Request (o el de WhatsApp si lo tienes) contra la Graph API con el token y el Phone Number ID.

Un eco mínimo («recibido») confirma que ida y vuelta funcionan antes de enchufar la IA.

Token temporal vs token permanente

Temporal Permanente (System User)
Caducidad Horas Hasta que lo regeneres / revoques
Uso Solo pruebas Producción
Cómo Botón en API Setup Business Settings → System Users → Generate token con permisos whatsapp_business_messaging y whatsapp_business_management

Guarda el token permanente como credencial en n8n, nunca en un nodo Set a la vista. Si un flujo deja de enviar de golpe, lo primero que mirar es si el token caducó.

Número de prueba vs número Business real

  • Número de prueba de Meta: gratis, ideal para aprender. Solo puedes escribir a unos pocos números añadidos a la allowlist. No sirve para clientes reales.
  • Número Business propio: lo vinculas cuando el flujo ya responde bien. Implica negocio verificado según las reglas actuales de Meta y un número que no esté ya en otra cuenta de WhatsApp Business de forma conflictiva.

Regla práctica: desarrolla y prueba con el número de prueba; pasa al real solo cuando el webhook, el antibucle y la tipificación de mensajes estén estables.

Errores frecuentes

  • Webhook no verifica. HTTPS obligatorio; workflow activo; verify token idéntico; respuesta al challenge en el cuerpo, no un HTML.
  • «Invalid OAuth access token». Token temporal caducado o mal pegado (espacios, comillas).
  • Envías pero no llega / error de destinatario. Estás usando el número de prueba y el móvil no está en la lista de testers.
  • Phone Number ID incorrecto. Confundes el ID con el WABA ID o con el número legible (+34…). En la URL de la Graph API va el Phone number ID.
  • Dobles respuestas / bucles. Estás reaccionando a eco de tus propios envíos o a statuses (delivered, read). Filtra: solo procesa messages de tipo texto de clientes, no statuses.
  • n8n local sin túnel. Meta nunca alcanzará http://localhost:5678. Usa Cloud, un VPS o un túnel con WEBHOOK_URL bien configurada (más detalle en la guía de instalación).

Limitaciones honestas

  • La interfaz de Meta cambia nombres de menú; si no encuentras «API Setup», busca WhatsApp dentro de la app y la sección de configuración del webhook.
  • El número de prueba no sustituye un canal de atención real.
  • Conectar la API ≠ tener un buen agente: faltan memoria, prompt del negocio, filtro de audios y derivación a humano. Eso lo cubre la guía del agente y la plantilla gratis.

Siguiente paso

Con el webhook verificando y un mensaje de prueba visible en n8n, descarga gratis el agente de WhatsApp e impórtalo. Si aún no tienes n8n, instálalo paso a paso. Para el pack completo de agentes, mira el pack AgentKiosk.