Montar un bot de WhatsApp que conteste con Claude es sencillo desde el punto de vista técnico. Lo difícil es que no acabe siendo un problema: que no invente precios, que sepa cuándo callarse y pasarle la conversación a una persona, y que cumpla con lo que WhatsApp y la normativa exigen.
Esta guía cubre las tres cosas, en ese orden de importancia.
Antes de escribir código: elige la vía de conexión
Hay dos formas de conectar con WhatsApp y la diferencia es determinante.
API oficial de WhatsApp Business (Cloud API de Meta). Es la vía legítima. Requiere una cuenta de WhatsApp Business, verificar la empresa y pasar por un proveedor o directamente por Meta. Tiene coste por conversación y sus reglas, pero es estable y no te van a cerrar el número.
Librerías no oficiales que automatizan WhatsApp Web. Son gratis y se montan en una tarde. También violan los términos de servicio de WhatsApp, y el resultado habitual es el bloqueo del número, a veces con el número principal del negocio dentro. Se rompen cada vez que WhatsApp cambia algo.
Si el bot es para tu negocio de verdad, usa la API oficial. El ahorro de la vía no oficial desaparece el día que pierdes el número por el que te escriben tus clientes.
El resto de la guía asume Cloud API.
La regla de las 24 horas
Esto condiciona todo el diseño y conviene entenderlo antes de programar nada.
WhatsApp distingue dos situaciones:
- Ventana de servicio: si el cliente te ha escrito, tienes 24 horas para responderle con mensajes libres.
- Fuera de esa ventana: solo puedes iniciar conversación con plantillas aprobadas previamente por Meta. No puedes mandar texto libre.
Consecuencia práctica: un bot que responde es fácil; un bot que reengancha («hace tres días preguntaste por el piso de Chamberí…») necesita plantillas aprobadas. Planifícalas desde el principio porque la aprobación tarda.
Arquitectura mínima
Las piezas son pocas:
« WhatsApp → Webhook (tu servidor) → Claude → respuesta → WhatsApp ↓ Base de datos (historial + estado de conversación) «
El webhook recibe los mensajes, recupera el historial de ese número, llama a Claude con el contexto y devuelve la respuesta. Cualquier servidor sirve: un contenedor pequeño, una función serverless o un Worker.
Un esqueleto en Node:
«`js app.post("/webhook", async (req, res) => { res.sendStatus(200); // responde ya: Meta reintenta si tardas
const msg = extraerMensaje(req.body); if (!msg) return;
const historial = await db.obtenerHistorial(msg.from, { limite: 20 });
const respuesta = await claude.messages.create({ model: "claude-sonnet-5", max_tokens: 500, system: PROMPT_SISTEMA, messages: […historial, { role: "user", content: msg.text }], });
const texto = respuesta.content[0].text; await enviarWhatsApp(msg.from, texto); await db.guardar(msg.from, msg.text, texto); }); «`
Dos detalles que evitan disgustos:
- Responde
200inmediatamente. Si tardas, Meta reintenta y el cliente recibe respuestas duplicadas. - Limita el historial. Veinte mensajes suelen bastar. Sin límite, una conversación larga acaba costando una fortuna en cada turno.
El prompt de sistema: donde se gana o se pierde
Aquí está la diferencia entre un bot útil y uno que te mete en un lío. El fallo caro no es que responda mal: es que responda con seguridad algo que no sabe.
«` Eres el asistente de atención al cliente de [Empresa].
QUÉ HACES
- Resuelves dudas sobre horarios, ubicación, servicios y disponibilidad.
- Recoges datos para una cita: nombre, servicio y franja preferida.
QUÉ NO HACES NUNCA
- No confirmas precios. Si preguntan, di la horquilla publicada
y ofrece que un compañero lo confirme.
- No prometes plazos de entrega concretos.
- No das consejo médico, legal ni financiero.
- No inventas nada. Si no está en la información de abajo,
di que no lo sabes y ofrece pasar con una persona.
CUÁNDO PASAS A UNA PERSONA Responde exactamente con [ESCALAR] al final del mensaje si:
- El cliente lo pide.
- Hay una reclamación, un cobro incorrecto o un enfado evidente.
- Preguntan algo que no está en tu información.
- Es la tercera vez que el cliente reformula lo mismo.
TONO Frases cortas. Sin emojis. Trato de tú. Nada de «¡Estupendo!» ni entusiasmo impostado.
INFORMACIÓN DISPONIBLE [aquí van horarios, servicios, precios orientativos, dirección] «`
Tres cosas de este prompt merecen comentario:
La lista de prohibiciones va antes que la de capacidades. Los límites pesan más cuando aparecen pronto.
El marcador [ESCALAR] es un mecanismo, no una sugerencia. Tu código lo detecta, avisa a una persona y deja de responder automáticamente en ese hilo. Sin esa parte en el código, el marcador no sirve de nada.
«Es la tercera vez que reformula» es la mejor señal de escalado. Cuando alguien repite la pregunta cambiando las palabras, el bot no le está entendiendo. Seguir intentándolo solo empeora el cabreo.
Traspaso a una persona, bien hecho
El escalado es la parte que casi todo el mundo hace mal. Un traspaso correcto tiene tres partes:
- Callar el bot. Marca la conversación como atendida por humano; que el bot no vuelva a escribir en ese hilo aunque lleguen mensajes.
- Avisar con contexto. No mandes «cliente necesita ayuda». Manda el resumen: quién es, qué quería, qué se le ha respondido ya.
- Decírselo al cliente. «Te paso con un compañero, te escribe en breve» y, si es fuera de horario, cuándo.
Lo peor que puede pasar es el limbo: el bot deja de contestar, nadie avisa a nadie y el cliente se queda hablando solo.
Cumplimiento: lo que no puedes saltarte
Tres obligaciones concretas si operas en España:
Identifícate como sistema automático. El Reglamento de IA de la UE exige que quede claro que se está interactuando con una IA. Basta con el primer mensaje: «Hola, soy el asistente automático de [Empresa]».
Base legal y RGPD. Estás tratando datos personales —número de teléfono, contenido de la conversación—. Necesitas informar en tu política de privacidad, definir cuánto tiempo conservas los historiales y poder borrarlos si te lo piden.
Consentimiento para iniciar conversación. Escribir el primero a alguien que no te ha dado su consentimiento es infracción de la LSSI y, además, WhatsApp lo penaliza si la gente te bloquea.
Qué medir
Si no mides, no sabrás si el bot ayuda o solo estorba. Cuatro números bastan:
- Tasa de resolución: conversaciones cerradas sin intervención humana. Empezar en torno al 40-60 % en dudas frecuentes es normal.
- Tasa de escalado y su motivo. Si sube por «no está en mi información», el problema es tu documentación, no el modelo.
- Tiempo hasta la respuesta humana en los escalados. Es la métrica que más nota el cliente.
- Coste por conversación: suma la conversación de WhatsApp más los tokens. Compáralo con lo que cuesta atenderla a mano.
Revisa cada semana una muestra de conversaciones reales, sobre todo las escaladas. Ahí es donde ves lo que falta en el prompt.
Errores frecuentes
Meter todo el catálogo en el prompt de sistema. Si tienes cientos de productos, no caben y además se confunde. Usa búsqueda: recupera solo lo relevante para la pregunta y pásale eso.
No guardar estado de conversación. Sin historial, el bot pregunta el nombre en cada mensaje. Da una sensación pésima.
Dejarlo suelto el primer día. Ponlo primero en modo copiloto: que redacte la respuesta y una persona la apruebe antes de enviarla. Con una semana de eso ves los fallos reales sin quemar clientes.
No poner límite de gasto. Un bucle o un cliente insistente pueden dispararte la factura. Fija un tope diario y una alerta.
¿Quieres aplicar esto en tu empresa?
En ITfluence implementamos agentes de IA, automatizaciones y estrategias de contenido a medida. Pasamos de la guía a los resultados.
