Cómo crear un chatbot de WhatsApp con n8n paso a paso

Comparte este post:
¿Pensando en automatizar procesos?
Author:

Un chatbot de WhatsApp con n8n puede atender a tus clientes 24 horas al día, 7 días a la semana, por entre 30 y 100 euros al mes. Sin licencias de software de miles de euros, sin dependencia de plataformas cerradas y con toda la inteligencia de un modelo de lenguaje como GPT-4 o Claude detrás de cada respuesta.

WhatsApp tiene 36 millones de usuarios activos en España, según datos de We Are Social 2025. Es la app de mensajería que usan el 95% de los españoles con smartphone. Tus clientes ya están ahí. La pregunta no es si deberías tener un chatbot en WhatsApp, sino cuánto tiempo más puedes permitirte no tenerlo.

En este tutorial de chatbot WhatsApp n8n vas a aprender a construir uno desde cero. No uno de esos bots básicos que solo responden con menús fijos, sino un asistente con inteligencia artificial que entiende el contexto, consulta la información de tu empresa y ejecuta acciones reales: agendar citas, consultar pedidos, derivar a un humano cuando es necesario. Todo orquestado con n8n, la herramienta de automatización open-source que ya usan miles de pymes en Europa.

Para quien es este tutorial: desarrolladores, CTOs de pymes, responsables de atención al cliente y cualquier persona con conocimientos técnicos básicos que quiera montar un chatbot de WhatsApp con IA sin pagar miles de euros en plataformas SaaS. Necesitas saber moverte por n8n (o tener ganas de aprender) y tener acceso a un servidor o cuenta de n8n Cloud.

Qué necesitas antes de empezar con tu chatbot WhatsApp n8n

Antes de tocar un solo nodo en n8n, necesitas tener preparadas varias cosas. Saltarte los prerequisitos es el error número uno de quienes intentan crear un chatbot WhatsApp y se quedan atascados a mitad de camino.

Prerequisitos técnicos

Requisito Detalle Coste estimado
Número de teléfono dedicado Un número que NO este vinculado a WhatsApp personal ni a WhatsApp Business App. Puede ser una SIM prepago nueva. 5-10 €
n8n (self-hosted o Cloud) Self-hosted en VPS (Docker) o n8n Cloud. Para producción, mínimo 2 GB de RAM. 10-20 €/mes (VPS) o desde 20 €/mes (Cloud)
API de WhatsApp WhatsApp Cloud API (Meta) o Evolution API (open-source). Ver comparativa más abajo. 0-15 €/mes
API de IA (LLM) OpenAI (GPT-4o-mini o GPT-4o), Anthropic (Claude), o modelo local. Necesitas una API key. 10-50 €/mes según volumen
Base de datos PostgreSQL o Redis para persistir la memoria del chatbot entre sesiones. Supabase (plan gratuito) es una opcion rápida. 0-15 €/mes
Dominio con SSL Para el webhook de n8n. WhatsApp Cloud API exige HTTPS. Let’s Encrypt es gratuito. 10-15 €/año

Atención con el número de teléfono: una vez que vinculas un número a la WhatsApp Business API (oficial o via Evolution API), ese número deja de funcionar en la app de WhatsApp personal. No uses tu número principal. Compra una SIM prepago dedicada para el bot.

Si ya tienes Meta Business verificada, puedes ir directamente a la Cloud API oficial. Si no quieres pasar por el proceso de verificación de Meta (que puede tardar días o semanas), Evolution API es tu alternativa. Veamos las diferencias.

WhatsApp Cloud API vs Evolution API: cual elegir para tu n8n WhatsApp bot

Esta es la primera decisión técnica que vas a tomar, y condiciona todo lo demas. Las dos opciones funciónan con n8n, pero tienen diferencias importantes en coste, complejidad y riesgos.

Comparativa: WhatsApp Cloud API vs Evolution API

Criterio WhatsApp Cloud API (Meta) Evolution API (self-hosted)
Coste por mensaje 0,005-0,08 € por mensaje (desde julio 2025, cobro por mensaje individual) 0 € (solo coste del servidor)
Coste infraestructura 0 € (Meta aloja el servicio) 5-15 €/mes (VPS para alojar la API)
Verificación Meta Business Obligatoria No necesaria
Riesgo de baneo Bajo (API oficial) Medio (API no oficial con Baileys)
Plantillas de mensaje Obligatorias fuera de ventana 24h (aprobacion por Meta) No necesarias (puedes enviar mensajes libremente)
Integración con n8n Nodo nativo de n8n (WhatsApp Business Cloud) Community node: n8n-nodes-evolution-api
Ventana 24h Si, estricta. 1.000 conversaciones de servicio gratis al mes No aplica (sin restriccion de ventana)
Ideal para Empresas medianas, volumen alto, necesidad de cumplimiento estricto Pymes, startups, testing, proyectos con presupuesto ajustado

Vamos a los números. Una clinica dental en Valencia que recibe 500 consultas al mes por WhatsApp pagaria entre 2,50 y 40 euros al mes en mensajes con la Cloud API oficial (dependiendo del tipo de mensaje). Con Evolution API, esos 500 mensajes le cuestan 0 euros en mensajería, solo los 10-15 euros del VPS donde corre la API.

El problema es que Evolution API usa la libreria Baileys (no oficial de WhatsApp), lo que implica un riesgo de baneo si WhatsApp detecta un uso anormal. En la práctica, si no haces spam y mantienes un uso razónable, el riesgo es bajo. Pero si tu empresa necesita garantias al 100%, la Cloud API oficial es la via segura.

Recomendación Flowmatic: si estas empezando y quieres probar rápido, usa Evolution API. Si ya tienes Meta Business verificada o vas a manejar más de 1.000 conversaciones al mes, usa la Cloud API oficial. Puedes migrar de una a otra más adelante sin rehacer el flujo de n8n.

Paso 1 – Configurar WhatsApp Cloud API o Evolution API

Vamos al primer paso técnico. Aquí tienes las instrucciones para las dos opciones. Sigue solo la que hayas elegido.

Opcion A: WhatsApp Cloud API (Meta oficial)

Flujo n8n: Configuración WhatsApp Cloud API

1. Crear app en Meta for Developers: ve a developers.facebook.com, crea una nueva app de tipo «Business», y anade el producto «WhatsApp». Meta te asignara un Phone Number ID de prueba y un token temporal.

2. Verificar Meta Business: en el Business Manager (business.facebook.com), completa la verificación de empresa. Necesitas documentos legales de tu empresa (CIF, escrituras, o factura de suministros). El proceso tarda entre 2 y 10 días hábiles.

3. Registrar número de producción: una vez verificado, anade tu número de teléfono dedicado en la configuración de WhatsApp de tu app. Meta te enviará un código de verificación por SMS o llamada.

4. Generar token permanente: en la seccion «System Users» del Business Manager, crea un usuario de sistema, asignale permisos sobre la app de WhatsApp y genera un token de acceso permanente. Guarda este token: lo necesitarás en n8n.

5. Configurar webhook en Meta: en la configuración de la app, ve a WhatsApp > Configuration > Webhook. Aquí pegaras la URL de tu webhook de n8n (que crearemos en el Paso 2). El Verify Token es una cadena que tu eliges y que n8n debe devolver para validar la conexión.

Opcion B: Evolution API (self-hosted)

Flujo n8n: Configuración Evolution API

1. Preparar el servidor: necesitas un VPS con mínimo 1 GB de RAM y Docker instalado. Proveedores como Hetzner (desde 4,50 €/mes), Contabo o DigitalOcean funciónan bien. Si ya tienes n8n en un VPS, puedes instalar Evolution API en el mismo servidor.

2. Instalar Evolution API con Docker: clona el repositorio desde github.com/EvolutionAPI/evolution-api. Copia el archivo .env.example a .env y configura las variables: AUTHENTICATION_API_KEY (tu clave de acceso), SERVER_URL (la URL pública de tu servidor) y DATABASE_CONNECTION_URI (PostgreSQL o SQLite).

3. Levantar el servicio: ejecuta docker compose up -d. Evolution API estará disponible en el puerto 8080 de tu servidor. Verifica que responde accediendo a tu-dominio.com:8080.

4. Crear instancia y vincular WhatsApp: desde la API o el panel de Evolution API, crea una nueva instancia. Te generará un código QR. Escanea ese QR con el WhatsApp del número dedicado (igual que cuando vinculas WhatsApp Web). La sesión quedará activa en el servidor.

5. Configurar webhook hacia n8n: en la instancia de Evolution API, configura el webhook de eventos. Marca los eventos que te interésan: MESSAGES_UPSERT (mensajes nuevos), MESSAGES_UPDATE (actualizaciónes de estado), y SEND_MESSAGE (confirmación de envio). La URL del webhook será la de tu n8n.

6. Instalar el community node en n8n: en n8n, ve a Settings > Community Nodes > Install. Busca n8n-nodes-evolution-api e instalalo. Aparecera como un nuevo nodo disponible en tus flujos.

Sobre la sesión de Evolution API: a diferencia de la Cloud API, Evolution API mantiene una sesión activa de WhatsApp Web en tu servidor. Si el servidor se reinicia, la sesión se reconecta automáticamente (si configuraste la persistencia en base de datos). Aun así, revisa periodicamente que la sesión siga activa.

Paso 2 – Crear webhook en n8n para recibir mensajes de WhatsApp

El webhook es el punto de entrada de tu chatbot. Cada vez que un cliente envia un mensaje por WhatsApp, ese mensaje llega a n8n a través de este webhook. La configuración es ligeramente diferente según la API que uses.

Configuración del webhook para WhatsApp Cloud API

Abre n8n y crea un nuevo workflow. Anade un nodo Webhook con esta configuración:

Nodo Webhook – Configuración Cloud API

HTTP Method: POST

Path: whatsapp-webhook (la URL resultante será https://tu-n8n.com/webhook/whatsapp-webhook)

Authentication: None (la verificación la haces con el Verify Token en el siguiente nodo)

Response Code: 200

Response Data: First Entry JSON

Meta exige que el webhook responda a una peticion GET de verificación. Para esto, necesitas un segúndo nodo Webhook con método GET en la misma ruta, que devuelva el parametro hub.challenge que Meta envia. Configuralo así: Response Mode > Last Node, y conectalo a un nodo Respond to Webhook que devuelva el valor de $json.query[«hub.challenge»].

Despues del nodo Webhook POST, anade un nodo IF para filtrar solo los mensajes de texto entrantes (descartando notificaciones de estado, confirmaciónes de lectura, etc.). La condicion es:

{{ $json.body.entry[0].changes[0].value.messages }} existe (is not empty)

Con un nodo Set a continuacion, extrae los campos que necesitas para el resto del flujo:

Nodo Set – Extraer datos del mensaje (Cloud API)

phoneNumber: {{ $json.body.entry[0].changes[0].value.messages[0].from }}

messageText: {{ $json.body.entry[0].changes[0].value.messages[0].text.body }}

messageId: {{ $json.body.entry[0].changes[0].value.messages[0].id }}

timestamp: {{ $json.body.entry[0].changes[0].value.messages[0].timestamp }}

phoneNumberId: {{ $json.body.entry[0].changes[0].value.metadata.phone_number_id }}

Configuración del webhook para Evolution API

Con Evolution API es más sencillo porque el nodo de comunidad se encarga de gran parte del trabajo. Tienes dos opciones: usar el nodo Webhook genérico (como arriba) o usar el trigger del community node Evolution API Trigger.

Si usas el Evolution API Trigger, la configuración es:

Nodo Evolution API Trigger

Events: MESSAGES_UPSERT

Instance: nombre-de-tu-instancia

Credentials: tu API key de Evolution API + URL del servidor

El payload de Evolution API es diferente al de la Cloud API. Los campos que necesitas extraer con el nodo Set son:

phoneNumber: {{ $json.data.key.remoteJid.replace(‘@s.whatsapp.net’, ») }}
messageText: {{ $json.data.message.conversation || $json.data.message.extendedTextMessage.text }}
messageId: {{ $json.data.key.id }}
fromMe: {{ $json.data.key.fromMe }}

Anade un nodo IF para filtrar: fromMe debe ser false (solo procesas mensajes que te envian, no los que tu bot envia). Esto evita bucles infinitos donde el bot responde a sus propios mensajes.

Paso 3 – Configurar el AI Agent con memoria en tu chatbot n8n WhatsApp

Aquí es donde tu chatbot pasa de ser un simple reenviador de mensajes a un asistente inteligente. El nodo AI Agent de n8n es el cerebro del bot: recibe el mensaje del usuario, consulta su historial de conversación, busca información relevante en tu base de conocimiento y genera una respuesta coherente.

Arquitectura del AI Agent

El flujo completo del agente tiene esta estructura:

Flujo n8n: AI Agent para WhatsApp

1. Webhook (trigger): recibe el mensaje de WhatsApp.

2. Set (extraer datos): extrae número, texto e ID del mensaje.

3. AI Agent: nodo central. Recibe el texto del usuario, consulta la memoria, ejecuta herramientas si es necesario, y genera la respuesta.

4. Send Message (respuesta): envia la respuesta del AI Agent de vuelta al usuario via WhatsApp (Cloud API o Evolution API).

Para configurar el nodo AI Agent en n8n:

Chat Model: conecta un nodo OpenAI Chat Model (o Anthropic Chat Model si prefieres Claude). Para GPT-4o-mini, el coste es de apróximadamente 0,15 dolares por millon de tokens de entrada y 0,60 dolares por millon de tokens de salida. Para un chatbot de pyme con 500 conversaciones al mes, eso se traduce en unos 5-15 euros mensuales. Si necesitas respuestas más elaboradas, GPT-4o cuesta 2,50 dolares por millon de tokens de entrada, pero la diferencia en calidad para un chatbot de atención al cliente rara vez justifica el coste extra.

System Prompt: aquí defines la personalidad y las reglas del bot. Un ejemplo para una clinica dental:

«Eres el asistente virtual de Clinica Dental Sonrisa, en Madrid. Tu función es responder consultas sobre servicios, horarios y precios. Responde siempre en español, de forma amable y profesional. Si no conoces la respuesta, indica que vas a derivar la consulta a un miembro del equipo. No inventes información medica. No des diagnósticos. Horario de la clinica: lunes a viernes de 9:00 a 20:00, sabados de 9:00 a 14:00.»

Configurar la memoria del chatbot

Sin memoria, cada mensaje que recibe el bot es independiente. El usuario dice «Quiero una limpieza dental», el bot responde. Luego el usuario dice «Para el martes», y el bot no sabe de que habla porque no recuerda el mensaje anterior.

n8n ofrece varios tipos de memoria para el AI Agent:

Tipos de memoria en n8n AI Agent

Tipo de memoria Como funcióna Persistencia Coste tokens Recomendado para
Simple Memory Memoria built-in básica de n8n No persiste Bajo Testing rápido
Window Buffer Memory Guarda las últimas N interacciones (ej: últimos 10 mensajes) Con DB externa Medio La mayoría de chatbots
Buffer Memory Guarda todo el historial reciente de la conversación completa Con DB externa Alto Conversaciónes cortas o presupuesto amplio
Summary Memory Genera un resumen del historial en vez de guardar cada mensaje Con DB externa Bajo Conversaciónes largas, volumen alto

Para un chatbot de WhatsApp en producción, la opcion más equilibrada es Window Buffer Memory con las últimas 10-15 interacciones, persistida en PostgreSQL. Así mantienes contexto suficiente para que la conversación fluya, sin gastar tokens innecesarios en historiales de hace días.

Para conectar la memoria a PostgreSQL (o Supabase, que usa PostgreSQL internamente), conecta un nodo Postgres Chat Memory al AI Agent. Configura la conexión a tu base de datos y establece el Session ID como el número de teléfono del usuario: {{ $json.phoneNumber }}. De esta forma, cada usuario tiene su propio historial de conversación.

Consejo de coste: con GPT-4o-mini y Window Buffer Memory de 10 mensajes, cada interacción del chatbot cuesta entre 0,001 y 0,003 euros. Para 500 conversaciones al mes (con una media de 5 mensajes por conversación), el coste total de IA es de unos 5-8 euros mensuales.

Paso 4 – Crear la base de conocimiento para tu chatbot (RAG)

Un AI Agent sin base de conocimiento solo puede responder con lo que sabe el modelo de lenguaje. Si un cliente pregunta por los precios de tus servicios, el horario de tu tienda o el estado de su pedido, el bot no tendrá ni idea. Necesitas darle acceso a la información de tu empresa.

La técnica se llama RAG (Retrieval-Augmented Generation): antes de generar la respuesta, el bot busca la información relevante en tu base de datos y la incluye como contexto en el prompt.

Cómo implementar RAG en n8n

Flujo n8n: RAG para base de conocimiento

1. Preparar documentos: reune toda la información que el bot necesita saber: catálogo de productos/servicios, precios, FAQs, políticas de devolucion, horarios, ubicacion, etc. Formato ideal: archivos de texto plano, Markdown o PDF.

2. Crear embeddings: en un flujo separado de n8n, usa el nodo Embeddings OpenAI para convertir tus documentos en vectores. Conectalo a un nodo Supabase Vector Store (o Pinecone, Qdrant) para almacenar los embeddings. Ejecuta este flujo cada vez que actualices tu documentación.

3. Conectar al AI Agent: en el flujo del chatbot, anade un nodo Vector Store Tool conectado al AI Agent. Configura la descripcion de la herramienta: «Usa esta herramienta para buscar información sobre los servicios, precios, horarios y políticas de la empresa.» El AI Agent la usara automáticamente cuando detecte que la pregunta del usuario requiere información específica.

4. Ajustar el retrieval: configura el número de documentos a recuperar (top_k). Para la mayoría de chatbots, 3-5 fragmentos es suficiente. Más fragmentos = más contexto pero también más tokens y más coste.

En la práctica, el flujo de indexacion (preparar la base de conocimiento) y el flujo del chatbot son workflows separados en n8n. El de indexacion lo ejecutas manualmente o con un cron job cada vez que cambian tus datos. El del chatbot está siempre activo, escuchando mensajes.

Para un taller mecanico en Sevilla con 30 servicios y precios, el coste de los embeddings es de unos 0,02 euros (una sola vez por indexacion). Buscar en la base de datos vectorial no tiene coste adicional si usas Supabase (plan gratuito hasta 500 MB) o una instancia de Qdrant en tu propio VPS.

Alternativa simple: sin base de datos vectorial

Si tu base de conocimiento es pequeña (menos de 3.000 palabras), puedes incluirla directamente en el System Prompt del AI Agent sin necesidad de RAG. Simplemente pega tu catálogo, precios y FAQs como texto en el prompt. Es menos elegante, pero funcióna para negocios con una oferta reducida y evita la complejidad de gestionar embeddings.

Paso 5 – Definir las acciones del bot en n8n

Hasta aquí el bot puede recibir mensajes, entender el contexto y responder con información de tu empresa. Pero un buen chatbot de WhatsApp no solo habla: hace cosas. Agendar citas, consultar el estado de un pedido, crear un ticket de soporte, transferir a un humano.

En n8n, estas acciones se configuran como Tools (herramientas) del AI Agent. El agente decide cuando usar cada herramienta en función del mensaje del usuario.

Herramientas típicas para un chatbot de pyme

Acciones configurables del chatbot

Accion Cómo se implementa en n8n Ejemplo de uso
Agendar cita Tool que conecta con Google Calendar o Cal.com via API. El agente recoge fecha, hora y motivo, y crea el evento. «Quiero pedir cita para el jueves por la tarde»
Consultar pedido Tool que consulta tu CRM o ERP (Holded, Pipedrive, WooCommerce) via API con el número de pedido o teléfono del cliente. «Quiero saber donde esta mi pedido 4523»
Crear ticket de soporte Tool que crea un ticket en Freshdesk, Zendesk o una tabla de Notion/Airtable con la descripcion del problema. «Tengo un problema con la factura del mes pasado»
Transferir a humano Tool que envia una notificación a Chatwoot, Crisp o Slack con el historial de la conversación y marca la sesión como «en espera de agente». «Quiero hablar con una persona»
Enviar documento Tool que recupera un PDF (catálogo, presupuesto, contrato) de Google Drive o Supabase Storage y lo envia por WhatsApp. «Enviadme el catálogo de precios»

Cada herramienta se crea como un sub-workflow en n8n y se conecta al AI Agent a través del nodo Tool Workflow. En la configuración de la herramienta defines:

Name: un nombre descriptivo (ej: «schedule_appointment»)
Description: una descripcion clara de cuando debe usarla el agente (ej: «Usa esta herramienta cuando el usuario quiere agendar, cambiar o cancelar una cita. Recoge la fecha preferida, la hora y el motivo de la cita antes de ejecutarla.»)

El AI Agent lee estas descripciones y decide automáticamente qué herramienta usar en cada caso. Si el usuario dice «Quiero una cita el martes a las 10», el agente activa la herramienta de agendar cita. Si dice «Dónde está mi pedido», activa la de consultar pedido.

Limite de herramientas: no abrumes al agente. Con 3-5 herramientas bien definidas el chatbot funcióna mejor que con 15 herramientas ambiguas. Cada herramienta extra incrementa la probabilidad de que el agente elija la incorrecta. Empieza con 2-3 y anade más según las necesidades reales de tus usuarios.

Implementar el fallback a humano

Todo chatbot necesita una salida de emergencia. Cuando el usuario pide hablar con una persona, cuando el agente no tiene confianza en su respuesta, o cuando la conversación lleva más de un cierto número de intercambios sin resolución, el bot debe derivar a un humano.

En n8n esto se implementa de dos formas: como una herramienta del AI Agent (el agente decide cuando derivar) y como una condicion de seguridad fuera del agente (un nodo IF que detecta frases como «quiero hablar con alguien», «pasame con un humano», «agente», etc., y cortocircuita el flujo antes de que llegue al AI Agent).

Para la notificación al equipo humano, puedes usar Chatwoot (open-source, se integra con WhatsApp), Crisp, o simplemente enviar una alerta por Slack o email con el número de teléfono del cliente y el historial de la conversación.

Paso 6 – Gestionar la ventana de 24 horas de WhatsApp

Si usas la WhatsApp Cloud API oficial de Meta, este punto es crítico. Si usas Evolution API, puedes saltarte está seccion (Evolution API no tiene restriccion de ventana).

La ventana de 24 horas funcióna así: cuando un usuario te envia un mensaje, se abre una ventana de 24 horas durante la cual puedes responderle libremente sin coste adicional (conversaciones de servicio). Meta ofrece 1.000 de estas conversaciones gratis al mes. Una vez que la ventana se cierra (porque han pasado 24 horas desde el último mensaje del usuario), solo puedes enviar mensajes usando plantillas aprobadas previamente por Meta.

Desde julio de 2025, Meta cambio al modelo de cobro por mensaje individual. Las plantillas de tipo útility (confirmaciónes de pedido, actualizaciónes de envio) son gratuitas dentro de la ventana de 24 horas. Fuera de la ventana, cada mensaje de plantilla tiene un coste de entre 0,004 y 0,046 euros para mensajes de útilidad, y de 0,025 a 0,137 euros para mensajes de marketing (dependiendo del pais del destinatario, según la documentación oficial de Meta Business).

Cómo gestionar esto en n8n

Anade un campo lastMessageTimestamp en tu base de datos vinculado al número de teléfono. Cada vez que recibes un mensaje del usuario, actualizas ese timestamp. Antes de enviar una respuesta proactiva (fuera de la ventana), verifica si el timestamp es menor de 24 horas.

Flujo n8n: Gestión ventana 24h

1. Al recibir mensaje: guarda el timestamp actual en PostgreSQL con el número del usuario como clave. Esto marca la apertura (o renovación) de la ventana de 24h.

2. Al enviar respuesta reactiva: si el mensaje es una respuesta a algo que el usuario acaba de enviar, envias libremente. Estas dentro de la ventana.

3. Al enviar mensaje proactivo: antes de enviar, consulta el timestamp del último mensaje del usuario. Si han pasado menos de 24h, envia normalmente. Si han pasado más de 24h, usa una plantilla aprobada (nodo WhatsApp Business Cloud > Send Template).

4. Nodo IF: {{ (Date.now() – $json.lastMessageTimestamp) < 86400000 }} → true = envio libre, false = envio con plantilla.

Dato de coste: para un chatbot reactivo (que solo responde cuando el cliente escribe primero), casi todas las conversaciones caen dentro de la ventana de 24h y el coste de mensajería de Meta es mínimo o nulo (hasta 1.000 conversaciones de servicio gratis al mes). El coste real viene de los mensajes proactivos (recordatorios de cita, seguimientos, promociones).

Paso 7 – Testing y paso a producción del chatbot WhatsApp

No lances el chatbot a producción sin un proceso de testing mínimo. Un bot que responde mal es peor que no tener bot, porque deja una mala impresion a tus clientes reales.

Fase de testing

Testing con número de prueba: si usas la Cloud API de Meta, tienes acceso a un número de prueba gratuito desde la consola de desarrolladores. Envia mensajes a ese número y verifica las respuestas. Si usas Evolution API, puedes crear una segúnda instancia con un número de prueba.

Casos a probar obligatoriamente:

1. Mensaje simple de saludo («Hola», «Buenos días») – verifica que responde con un mensaje de bienvenida coherente.
2. Pregunta sobre tus servicios/productos – verifica que busca en la base de conocimiento y da información correcta.
3. Solicitud de accion («Quiero una cita») – verifica que activa la herramienta correcta y recoge la información necesaria.
4. Pregunta que no puede responder – verifica que reconoce su limitación y ofrece derivar a un humano.
5. Secuencia de mensajes con contexto – envia 3-4 mensajes seguidos que requieran contexto previo y verifica que la memoria funcióna.
6. Mensaje fuera de horario (si aplica) – verifica que responde adecuadamente.
7. Doble mensaje rápido – envia dos mensajes en menos de 2 segúndos y verifica que no se duplican las respuestas.
8. Mensaje con emoji, imagen o audio – verifica que el bot maneja estos tipos de contenido sin romperse (aunque no pueda procesarlos).

Configurar monitorización

En n8n, activa las Error Workflows. Crea un workflow que se ejecute automáticamente cuando el flujo del chatbot falla, y que te envie una alerta por email, Slack o Telegram con el detalle del error (número del usuario, mensaje que envio, nodo que fallo, mensaje de error).

Anade también un nodo HTTP Request al final del flujo principal que registre cada interacción en una hoja de cálculo de Google Sheets o en una tabla de base de datos. Registra: número del usuario, mensaje enviado, respuesta del bot, herramienta usada (si alguna), tiempo de respuesta. Este log te servirá para identificar patrones, preguntas frecuentes no resueltas y oportunidades de mejora.

Paso a producción

Cuando el testing sea satisfactorio:

1. Activa el workflow en modo Production en n8n (no en modo Test).
2. Cambia la URL del webhook en la configuración de WhatsApp (Meta o Evolution API) a la URL de producción.
3. Si usas Cloud API de Meta, pasa el número de prueba a producción registrando tu número real y configurando el webhook.
4. Configura un health check: un cron job en n8n que cada hora envia una peticion al webhook y verifica que responde. Si no responde, te notifica.
5. Monitoriza los primeros 100 mensajes reales de cerca. Lee las conversaciones, identifica fallos y ajusta el system prompt y las herramientas.

Tabla de costes completa: cuánto cuesta un chatbot de WhatsApp con n8n

Vamos a los números reales. Estos son los costes mensuales desglosados para un chatbot que atiende unas 500 conversaciones al mes (el volumen típico de una pyme de servicios en España).

Coste mensual del chatbot WhatsApp con n8n (500 conversaciones/mes)

Concepto Opcion A: Self-hosted + Evolution API Opcion B: Self-hosted + Cloud API Opcion C: n8n Cloud + Cloud API
n8n 10-20 €/mes (VPS) 10-20 €/mes (VPS) 20-50 €/mes (plan Cloud)
WhatsApp API 5-15 €/mes (VPS para Evolution API) 0-25 €/mes (Meta, 1.000 gratis) 0-25 €/mes (Meta, 1.000 gratis)
API de IA (LLM) 5-15 €/mes (GPT-4o-mini) 5-15 €/mes (GPT-4o-mini) 5-15 €/mes (GPT-4o-mini)
Base de datos 0 € (Supabase gratuito o PostgreSQL en mismo VPS) 0 € (Supabase gratuito) 0-10 €/mes (Supabase)
Dominio + SSL ~1 €/mes (prorrateado) ~1 €/mes (prorrateado) 0 € (incluido en n8n Cloud)
Total mensual 21-51 €/mes 16-61 €/mes 25-100 €/mes

Dicho esto, hay que sumar el coste de implementación. Montar el chatbot desde cero, con la base de conocimiento, las herramientas y el testing, requiere entre 20 y 60 horas de trabajo según la complejidad. Si lo haces tu, es tiempo. Si contratas a un especialista, el coste de implementación típico está entre 800 y 3.000 euros.

ROI rápido: si el chatbot atiende 500 consultas al mes y cada consulta atendida por un humano cuesta una media de 3-5 euros (incluyendo el salario del empleado y el tiempo invertido), automatizar el 70% de esas consultas supone un ahorro de 1.050-1.750 euros mensuales. Frente a un coste operativo de 30-100 euros al mes, el retorno es claro desde el primer mes.

Errores comunes al crear un chatbot WhatsApp con n8n y cómo evitarlos

Despues de implementar chatbots de WhatsApp para pymes de distintos sectores, estos son los errores que vemos con más frecuencia.

1. No filtrar los mensajes propios del bot. Si el flujo no tiene un nodo IF que descarte los mensajes enviados por el propio bot (fromMe = true en Evolution API, o los mensajes de tipo «status» en Cloud API), entras en un bucle infinito: el bot envia un mensaje, el webhook lo recibe como nuevo mensaje, el bot responde de nuevo, y así hasta que n8n se cuelga o agota los créditos de la API. Solución: siempre filtra antes de procesar.

2. No persistir la memoria entre ejecuciónes. La Simple Memory de n8n se borra entre ejecuciónes del workflow. En un chatbot de WhatsApp, cada mensaje es una ejecución independiente. Si usas Simple Memory, el bot no recordará nada. Necesitas Window Buffer Memory o Summary Memory conectada a PostgreSQL o Redis.

3. System prompt demasiado vago. «Eres un asistente amable» no es suficiente. El system prompt debe incluir: nombre de la empresa, sector, servicios que ofrece, horarios, que puede hacer el bot, que no puede hacer, y como responder cuando no sabe algo. Un prompt detallado de 200-300 palabras reduce drasticamente las respuestas incorrectas.

4. No manejar tipos de mensaje no textuales. Los usuarios envian audios, imagenes, stickers y ubicaciones. Si tu flujo solo espera texto, se rompe al recibir un audio. Solución: anade un nodo Switch despues del webhook que detecte el tipo de mensaje. Para audios, puedes usar la API de OpenAI Whisper (transcripcion) a través de un nodo HTTP Request. Para imagenes, puedes enviar una respuesta estandar tipo «Disculpa, por ahora solo puedo procesar mensajes de texto.»

5. No limitar la longitud de la respuesta del bot. WhatsApp tiene un limite de 4.096 caracteres por mensaje. Si el AI Agent genera una respuesta más larga, el mensaje no se envia o se corta. Anade una instruccion en el system prompt: «Tus respuestas deben tener un máximo de 500 palabras. Si necesitas dar más información, pregunta al usuario si quiere que continues.»

6. Ignorar la concurrencia. Si varios usuarios envian mensajes al mismo tiempo, n8n ejecuta multiples instancias del workflow en paralelo. Esto puede causar problemas con la memoria si no gestiónas bien los session IDs. Verifica que el ID de sesión de la memoria es único por usuario (usa el número de teléfono).

7. No tener un plan de monitorización. Un chatbot no es un proyecto de «montar y olvidar». Necesitas revisar los logs de conversaciones al menos semanalmente las primeras semanas, identificar preguntas que el bot no resuelve bien y actualizar la base de conocimiento y el system prompt en consecuencia.

Preguntas frecuentes sobre chatbots de WhatsApp con n8n

¿Cuánto cuesta mantener un chatbot de WhatsApp con n8n al mes?

Con infraestructura self-hosted (Evolution API + n8n en un VPS), el coste mensual oscila entre 30 y 100 euros, incluyendo servidor, API de OpenAI y mantenimiento. Si usas n8n Cloud y WhatsApp Cloud API oficial de Meta, el rango sube a 50-200 euros al mes dependiendo del volumen de mensajes. Para 500 conversaciones mensuales (un volumen típico de pyme), la opcion más económica ronda los 25-50 euros al mes.

¿Necesito verificar mi cuenta de Meta Business para usar la API de WhatsApp?

Solo si usas la WhatsApp Cloud API oficial de Meta. La verificación requiere documentos legales de tu empresa y tarda entre 2 y 10 días hábiles. Con Evolution API (self-hosted y open-source) no necesitas verificación de Meta Business. Evolution API usa la libreria Baileys para conectarse a WhatsApp, por lo que funcióna con cualquier número de teléfono dedicado sin pasar por el proceso de verificación de Meta.

¿Puede el chatbot responder con imagenes, documentos o audios?

Si. Tanto la WhatsApp Cloud API como Evolution API soportan el envio de imagenes, PDFs, audios y videos. En n8n configuras el nodo de respuesta para enviar el tipo de media adecuado. Por ejemplo, puedes enviar un catálogo en PDF cuando el cliente pregunta por precios, o una imagen del producto cuando pide más información. Para recibir y procesar audios del usuario, puedes integrar la API de OpenAI Whisper para transcripcion automática.

¿Cuánto tiempo se tarda en montar el chatbot completo?

Un chatbot básico con respuestas por IA tarda entre 2 y 3 días en estar operativo. Anadir base de conocimiento (RAG) y acciones avanzadas como agendar citas o consultar pedidos lleva 1-2 semanas más. Un sistema completo en producción, con testing, manejo de errores y monitorización, suele estar listo en 3-4 semanas. Si contratas a un especialista en automatización con n8n, los tiempos se reducen a la mitad.

¿Qué pasa si el chatbot no sabe responder una pregunta?

El flujo incluye un nodo de fallback que detecta cuando el AI Agent no tiene confianza suficiente en su respuesta o cuando el usuario solicita explicitamente hablar con una persona. En ese caso, el bot transfiere la conversación a un agente humano via Chatwoot, Crisp o cualquier plataforma de atención al cliente que uses. El cliente recibe un mensaje tipo: «Voy a pasarte con un companero que puede ayudarte mejor.» El equipo humano recibe el historial completo de la conversación para no repetir preguntas.

¿Es legal usar un chatbot de WhatsApp para atención al cliente en España?

Si, siempre que cumplas con el RGPD. Debes informar al usuario de que está interactuando con un sistema automatizado, obtener consentimiento para el tratamiento de datos y ofrecer la opcion de hablar con un humano. También debes cumplir con las políticas de WhatsApp Business, que prohiben el spam y exigen que los mensajes de plantilla sean aprobados previamente por Meta. La AEPD (Agencia Española de Protección de Datos) recomienda incluir un mensaje de privacidad la primera vez que un usuario interactua con el bot.

¿Quieres un chatbot de WhatsApp con IA para tu empresa?

En Flowmatic implementamos chatbots de WhatsApp con n8n, AI Agent y base de conocimiento personalizados para pymes. Te montamos el bot, la integración con tus herramientas y la monitorización. Desde 800 euros.

Solicitar demo gratuita