Integrar n8n con WhatsApp Business API: flujos que venden
WhatsApp es el canal con mejor tasa de lectura en LATAM. En esta guía aprenderás a integrar n8n con WhatsApp Business API para crear flujos conversacionales que venden: opt-in, plantillas aprobadas, reglas de 24 h, segmentación, pagos y seguimiento. Incluye payloads JSON, blueprint de enrutamiento por intención y checklist de salida a producción.
Por qué WhatsApp + n8n es una máquina de conversión
- Aperturas 90%+ y respuestas rápidas: ideal para recuperación de carritos, agendamiento y cotizaciones.
- n8n orquesta APIs: CRM, pasarelas de pago, Google Sheets, email, ERP… todo en un solo flujo.
- Conversaciones guiadas (bot + humano): reduces tiempos y aumentas cierres sin sacrificar experiencia.
Requisitos y buenas prácticas (opt-in, 24 h, plantillas)
- Opt-in explícito: el usuario debe aceptar recibir mensajes.
- Ventana de 24 h: puedes responder libremente dentro de las 24 h desde el último mensaje del usuario. Fuera de esa ventana, usa plantillas aprobadas (HSM).
- Plantillas (message templates): define variables ({{1}}, {{2}}) y tipos (alerta, actualización, marketing si aplica).
- Calidad y relevancia: no “spamear”; ofrece valor y opción de salir (STOP).
Arquitectura recomendada del flujo en n8n
Nodos clave:
- Webhook (o Trigger HTTP) → punto de entrada de eventos entrantes de WhatsApp.
- Verify Signature (Function) → valida firma si la envía tu gateway/Meta.
- Parser (Function) → normaliza el evento (de texto, botón, template reply).
- State Store (Data Store/Redis/DB) → guarda estado de conversación por
from. - Classifier / Switch → enruta por intención (ej. “cotizar”, “soporte”, “pagar”).
- HTTP Request (WhatsApp API) → envío de mensajes (texto, plantilla, botones).
- CRM / Sheets → alta/actualización de lead y actividad.
- Payments → genera link/checkout y captura la confirmación.
- Error Handler / Retry → reintentos con backoff y logging.
- Notify Human → asignación a agente si hay señales de frustración.
Tip: separa flujos por dominios (ventas, soporte, postventa) y comparte un módulo de utilidades (enviar mensaje, validar ventana, formatear).
Paso a paso: primer flujo usable (lead → propuesta → pago)
1) Entrada y normalización
- Webhook recibe el JSON del proveedor/Cloud API y lo pasa a Function → Parser.
- Extrae:
from,text/body,type,button_reply,timestamp.
2) Opt-in y consentimiento
- Si el contacto es nuevo, envía plantilla de bienvenida con políticas y “Sí, deseo continuar”.
Ejemplo plantilla (JSON simplificado):
{
"messaging_product": "whatsapp",
"to": "{{phone}}",
"type": "template",
"template": {
"name": "bienvenida_optin",
"language": {"code": "es"},
"components": [{
"type": "body",
"parameters": [{"type": "text", "text": "{{nombre}}"}]
}]
}
}
3) Detección de intención (ventas)
- Switch por palabras clave o botones: “Cotizar” → flow de cotización.
- Guarda estado:
stage = "cotizacion",lastIntent = "ventas".
4) Captura de datos mínimos
- Pide producto/servicio, presupuesto y plazo.
- Valida con Regex y ofrece botones predefinidos (rápidos).
Mensaje con botones (texto+interactive):
{
"messaging_product":"whatsapp",
"to":"{{phone}}",
"type":"interactive",
"interactive":{
"type":"button",
"body":{"text":"¿Qué necesitas?"},
"action":{"buttons":[
{"type":"reply","reply":{"id":"web","title":"Sitio Web"}},
{"type":"reply","reply":{"id":"ecom","title":"eCommerce"}},
{"type":"reply","reply":{"id":"seo","title":"SEO"}}
]}
}
}
5) Propuesta corta y link de pago
- Genera un resumen con lo recibido (Function).
- Crea link de pago (Niubiz/Izipay/Stripe u otro) con monto y concepto.
- Envía plantilla con CTA al pago si estás fuera de 24 h; si estás dentro, mensaje libre.
6) Confirmación y CRM
- Al recibir confirmación del gateway (webhook de pago):
- Actualiza CRM/Sheets y etiqueta Won.
- Envía mensaje de agradecimiento y próximos pasos.
Enrutamiento por intención y estado de conversación
- Intents base: ventas, soporte, agendar, pagos, estado de pedido.
- State machine:
stage = lead|califica|propone|pago|postventa. - Fallback a humano: si el usuario repite texto libre >2 veces sin match o escribe “hablar con agente”.
Control de ventana 24 h (Function pseudo):
const last = $json.lastUserMessageAt;
const now = Date.now();
const diff = now - new Date(last).getTime();
return diff <= 24*60*60*1000 ? "FREEFORM" : "TEMPLATE_REQUIRED";
Pagos, CRM y reportes (cierres automáticos)
- Pagos: genera enlace único; escucha webhook de “paid” → cierra oportunidad.
- CRM: crea/actualiza lead, asigna owner, registra actividad (fuente: WhatsApp).
- Reportes: en Sheets/BQ: tasa de respuesta, tiempo a primera respuesta, conversión a pago.
Monitoreo, errores y escalabilidad
- Logs estructurados (JSON) con
conversationId,intent,status. - Alertas en Slack/Email si errores 5xx de la API o baja tasa de entrega.
- Rate limiting / Retry con Exponential Backoff (ej. 1s → 2s → 4s).
- Colas si esperas picos (RabbitMQ/Redis Streams/Kafka) → n8n consume con control.
Checklist de producción
- Opt-in documentado y registro de consentimiento.
- Plantillas aprobadas para re-apertura fuera de 24 h.
- Validación de firma y sanitización de entradas.
- State store persistente por contacto.
- Fallback a humano y palabra de salida (STOP).
- Enlaces de pago con expiración y verificación de webhook.
- Logs, métricas y alertas en tiempo real.
- Política de privacidad y retención de datos.
¿Listo para vender por WhatsApp? (CTA)
En CODEMITSU implementamos agentes IA en n8n integrados a WhatsApp Business API con pagos, CRM y reportes end-to-end.
👉 Automatización y APIs | 👉 Contacto
Preguntas frecuentes (FAQ)
1) ¿Puedo iniciar conversaciones de marketing?
Sí, pero fuera de la ventana de 24 h necesitas plantillas aprobadas para mensajes de marketing o actualizaciones. Respeta opt-in y frecuencia.
2) ¿Cómo manejo múltiples marcas o números?
Segmenta por phone_number_id y usa workflows separados con utilidades compartidas.
3) ¿Qué pasa si la API devuelve error de envío?
Implementa reintentos con backoff y cola de DLQ; alerta si hay fallas repetidas.
4) ¿Puedo combinar bot + humano?
Sí. Asigna a un agente cuando detectes frustración/palabras clave o superes umbral de turnos.
5) ¿Cómo mido el éxito?
Tasa de respuesta, tiempo a primera respuesta, conversión a objetivo (pago/cita), ingresos atribuidos a WhatsApp.




