Vera: recepcionista de WhatsApp para negocios de servicios
Recepcionista de WhatsApp: flujos n8n listos para conectar a un agente de IA
Una maqueta tipo WhatsApp muestra cómo atendería Vera en una barbería, una cantina, una odontología y un taller, y cómo el registro llega al sistema del negocio. Detrás, cuatro flujos de n8n preparados para hablar con WhatsApp Cloud API y con un agente de IA.
Sin enlace público: la maqueta no se publica; se muestra con capturas y video.
Contexto
Los negocios de servicios reciben por WhatsApp las mismas preguntas todo el día: precios, horarios, turnos, pedidos, «¿está listo mi auto?». Responder a mano roba tiempo de atención; un bot que inventa precios o se pisa con la persona que atiende es peor. Cada rubro cambia qué se puede hacer por chat.
Solución
Dos piezas. La maqueta: una demostración guionada (sin backend ni modelo de lenguaje) que recorre cada rubro y pasa del chat a la pantalla del negocio —agenda, ficha del paciente, tablero de órdenes o comanda— con el registro nuevo marcado.
Los flujos de n8n: el flujo principal recibe el webhook de Meta, carga el preset del rubro, aplica una guardia anti-abuso, está preparado para consultar al agente y ejecutar como mucho una herramienta contra la API del negocio; más un subflujo que transcribe notas de voz, recordatorios cada 15 minutos con plantillas aprobadas y avisos por cambio de estado.
Arquitectura
El flujo recibe el mensaje (texto o nota de voz) por el webhook de WhatsApp
n8n lo normaliza, carga el preset del rubro y aplica la guardia anti-abuso
El flujo entrega el mensaje al agente, que está preparado para responder, pedir una herramienta o derivar a una persona
Si el agente pide una herramienta, n8n llama a la API del negocio y le devuelve el resultado
El flujo envía por WhatsApp la respuesta final del agente
Cada 15 min, el flujo de recordatorios envía plantillas con «Confirmo» / «Cambiar»
Piezas
- WhatsApp Cloud API (Meta): webhook entrante y plantillas
- n8n: flujo principal (53 nodos), audio, recordatorios, avisos de estado
- Servicio de agente (LLM con tool-calling) detrás de un contrato HTTP propio
- API del negocio: catálogo, disponibilidad, reservar, cancelar, menú, pedidos
- Presets por rubro en JSON (prompt, herramientas, textos, plantillas)
Decisiones técnicas
Una sola vuelta de herramienta por mensaje
Si el agente pide una segunda herramienta, se deriva a una persona en vez de encadenar llamadas. Por qué: no hay riesgo de bucle ni de costo descontrolado.
Trade-off una consulta que necesita dos pasos termina en un humano.
El rubro es un preset de datos, no otro flujo
Prompt, herramientas, textos y plantillas viven en un JSON por rubro, y un validador comprueba que cada herramienta tenga su rama y que los datos coincidan con la maqueta.
Trade-off después de editar un preset hay que volver a embeberlo en los flujos con un script.
El agente detrás de un contrato HTTP
El flujo define request y response; el modelo puede ser de cualquier proveedor.
Trade-off ese servicio hay que alojarlo aparte.
El bot se calla cuando entra una persona
Al derivar, el chat queda en pausa 4 horas para que el bot no compita con quien atiende.
Trade-off durante esa pausa el bot no responde en ese chat aunque la persona ya haya terminado.
Guardia anti-abuso en el estado del flujo, sin base de datos
Tope de mensajes por minuto entre todos los chats y aviso al encargado como mucho una vez por hora.
Trade-off alcanza para una instancia; con varias habría que moverla a la API.
Resultados
- 142 mediciones de layout, 0 fallos (16 anchos en el chat; 8 anchos de 320 a 2560 px en la plataforma)
- Los 8 recorridos (4 rubros × 2 ramas) llegan al final y el registro aparece en el sistema
- 61 pares de contraste, todos ≥ 4,9:1
- Sitio de menos de 330 KB, 0 peticiones externas, 0 errores de consola
- Los 4 flujos importados en n8n 2.27.4 y corridos de punta a punta con servidores simulados
No se probó contra Meta real ni contra un agente real.
Stack
- HTML/CSS/JS sin dependencias
- n8n
- WhatsApp Cloud API
- agente LLM con tool-calling (contrato HTTP)
- Node.js (validadores y pruebas)
- Playwright
