Automatización y navegador Guía paso a paso

OpenWA y Claude: tu propia pasarela de WhatsApp con respuestas automáticas

OpenWA es una pasarela de WhatsApp de código abierto que levantas en tu ordenador o servidor con Docker: panel web, API REST, webhooks firmados y un servidor MCP para agentes. Esta guía explica cómo instalarla, conectar un número, enlazarla con Claude para leer y responder mensajes, y por qué no debes usarla con tu número principal ni en entornos regulados.

Nivel
Avanzado
Qué necesitas
Docker (o Node.js), Claude Code, un número de WhatsApp dedicado que puedas permitirte perder y, para respuestas automáticas, una clave de la API de Claude.
Cuánto lleva
Unos 15 minutos para tener OpenWA funcionando y una o dos horas para el puente con Claude

Herramientas que usa esta guía

01 Qué es OpenWA y cuándo tiene sentido

OpenWA es una pasarela de WhatsApp con licencia MIT. Se ejecuta en tu máquina y expone tu cuenta como una API: puedes enviar y recibir mensajes, gestionar grupos y etiquetas, varias sesiones a la vez y webhooks con firma HMAC. Incluye un panel web para gestionar sesiones y claves, documentación Swagger y un servidor MCP opcional para que agentes como Claude trabajen con WhatsApp directamente.

Encaja en proyectos internos, prototipos, avisos a tu propio equipo o pruebas de concepto antes de invertir en la API oficial.

02 Instalación con Docker

bash · Levantar OpenWA en local
git clone https://github.com/rmyndharis/OpenWA.git
cd OpenWA
docker compose -f docker-compose.dev.yml up -d

# Clave de administración generada en el primer arranque
docker exec openwa-api cat /app/data/.api-key

# Panel:   http://localhost:2785
# API:     http://localhost:2785/api
# Swagger: http://localhost:2785/api/docs

La clave solo se imprime completa la primera vez; guárdala en tu gestor de contraseñas. Sin Docker puedes usar npm ci y npm run dev, con el panel en el puerto 2886. Para producción existe docker-compose.yml con perfiles opcionales para PostgreSQL, Redis y almacenamiento S3.

Motor (ENGINE_TYPE) Riesgo de bloqueo Memoria por sesión
whatsapp-web.js (por defecto) Menor: usa un Chromium real que se parece al tráfico de WhatsApp Web. 300-500 MB
baileys Mayor: habla el protocolo directamente y es más fácil de detectar. 30-80 MB

03 Conectar un número

  1. 1

    Crea la sesión

    Desde el panel o con POST /api/sessions indicando un nombre, usando la cabecera X-API-Key.

  2. 2

    Arráncala y pide el QR

    POST /api/sessions/{id}/start y después GET /api/sessions/{id}/qr. En el panel lo verás directamente.

  3. 3

    Escanéalo desde el móvil

    En WhatsApp, Dispositivos vinculados > Vincular un dispositivo. Algunas cuentas piden crear una passkey en este paso; ningún motor lo soporta todavía y la sesión se queda esperando.

  4. 4

    Calienta el número

    Si es nuevo, úsalo unos días como una persona: foto de perfil, algunos mensajes con contactos guardados. No envíes en masa el primer día.

bash · Enviar un mensaje de prueba
curl -X POST http://localhost:2785/api/sessions/{sessionId}/messages/send-text \
  -H "Content-Type: application/json" \
  -H "X-API-Key: TU_CLAVE" \
  -d '{"chatId": "34600000000@c.us", "text": "Prueba desde OpenWA"}'

04 Dos formas de conectar Claude

01

MCP: Claude consulta y actúa cuando tú se lo pides

Activa MCP_ENABLED=true y OpenWA monta un servidor MCP en /mcp. Por defecto ofrece 25 herramientas de solo lectura; con MCP_READONLY=false añade envíos y operaciones de grupo hasta 51. Ideal para resumir chats o redactar respuestas desde Claude Code.

02

Webhook: respuestas automáticas

Registras un webhook para el evento message.received con un secreto HMAC. Un pequeño servicio tuyo verifica la firma, envía el mensaje a Claude con tus instrucciones y devuelve la respuesta por send-text.

json · .mcp.json en la raíz de tu proyecto de Claude Code
{
  "mcpServers": {
    "openwa": {
      "type": "http",
      "url": "http://localhost:2785/mcp",
      "headers": { "Authorization": "Bearer ${OPENWA_API_KEY}" }
    }
  }
}
Prompt · Pedir a Claude Code el puente de respuestas automáticas
Crea en esta carpeta un servicio pequeño en Node.js que reciba el webhook message.received de OpenWA. Requisitos: verificar la firma HMAC con el secreto de la variable OPENWA_WEBHOOK_SECRET antes de procesar nada; ignorar mensajes propios y de grupos; llamar a la API de Claude con ANTHROPIC_API_KEY y estas instrucciones: [personalidad, horario, qué puede y no puede prometer]; responder por /messages/send-text; derivar a una persona si el cliente lo pide o si el tema es [lista]; limitar a 20 respuestas por hora y registrar cada conversación en un archivo. Sin claves en el código. Enséñame el plan antes de escribirlo.

05 Reglas para no perder el número

  • ✓Nunca conectes tu número personal ni el principal de la empresa; usa uno dedicado.
  • ✓Escribe solo a quien te ha escrito antes o ha aceptado recibir mensajes; los envíos en frío a desconocidos son la vía más rápida al bloqueo.
  • ✓Activa SEND_PACING_ENABLED=true para limitar envíos diarios y conversaciones nuevas según la antigüedad de la sesión.
  • ✓Mantén unos pocos mensajes por minuto por sesión, no miles por hora.
  • ✓Evita IP de centros de datos baratas; se marcan antes que las residenciales.
  • ✓Para inicios de sesión, cobros u otros procesos críticos, ten siempre una alternativa por SMS, correo o la API oficial.
  • ✓Revisa que la IA no prometa precios, plazos o condiciones que no puede garantizar.

Preguntas frecuentes

El software es libre, pero automatizar una cuenta con clientes no oficiales va contra las condiciones de WhatsApp y puede suponer el bloqueo del número. Si tratas datos de clientes en la UE, además necesitas base legal, información al usuario y garantías del RGPD; en ese caso usa la API oficial.

Para un servicio que responde solo las 24 horas, lo adecuado es la API de Claude con una clave de Console y pago por uso, con límites de gasto configurados. La suscripción está pensada para tu uso interactivo.

Sí. OpenWA gestiona varias sesiones en la misma instancia y permite claves restringidas a una sesión concreta.

Sí. Hay nodos comunitarios para n8n y plugins oficiales para Chatwoot y Typebot, además de la API REST y los webhooks para cualquier otra herramienta.

Es una política de WhatsApp, no un fallo de OpenWA: la API devuelve éxito pero el servidor de WhatsApp puede descartar el primer mensaje a contactos que nunca te han escrito.

Sobre el autor

Equipo editorial de appyweb

Marketing, SEO y desarrollo con IA

Especialistas de appyweb en SEO, publicidad, desarrollo web y automatización con IA.

Sigue con estas guías

Guía paso a paso · Intermedio

WhatsApp AgentKit: crea un agente de atención al cliente para WhatsApp con Claude Code

WhatsApp AgentKit es un kit de instrucciones para Claude Code que te entrevista sobre tu negocio y genera un agente de WhatsApp completo: servidor, conexión con la API, memoria por cliente y personalidad. Lo pruebas en la terminal y lo despliegas en Railway. Para pequeños negocios que reciben muchas preguntas repetidas por WhatsApp.

Unos 20 minutos de entrevista y pruebas locales; una o dos horas más para desplegarlo y conectar el webhook. Leer la guía →
Guía paso a paso · Avanzado

Agente de ventas para WhatsApp con Claude Code: WhatsApp Closer AgentKit

WhatsApp Closer AgentKit es un plano para Claude Code que construye en tu ordenador un agente comercial para WhatsApp: responde, califica, resuelve objeciones de tu playbook, agenda citas y anota el CRM. Pensado para negocios que pierden ventas por contestar tarde y quieren mantener el control de cada mensaje.

Una tarde para tenerlo funcionando en modo demo; varios días más si Meta aún no ha verificado tu negocio. Leer la guía →
Guía paso a paso · Intermedio

n8n-MCP: que Claude diseñe y valide tus automatizaciones de n8n

n8n-MCP es un servidor MCP de código abierto que da a Claude la documentación de los nodos de n8n, miles de plantillas y, si lo conectas a tu instancia, la capacidad de crear, validar y probar flujos. Aprenderás a instalarlo en Claude Code, a usarlo con seguridad y a encargarle automatizaciones de negocio realistas.

Unos 20 minutos la instalación; cada flujo, según su complejidad Leer la guía →
Guía paso a paso · Principiante

Conectar Claude a tus aplicaciones: Google, Shopify, Meta Ads, Higgsfield y más

Los conectores permiten que Claude lea y actúe dentro de tus herramientas: correo, calendario, documentos, tienda online o campañas de publicidad. Verás la diferencia entre los conectores del directorio y los personalizados por URL, cómo activarlos, qué permisos conceder y prompts de trabajo para cada caso, con especial atención a la seguridad.

Unos 10 minutos por conector Leer la guía →
Guía paso a paso · Intermedio

Protege tu app con Claude: RLS en Supabase, CORS y cabeceras de seguridad

Las tres configuraciones de seguridad que más se olvidan al construir una app con ayuda de la IA: Row Level Security en Supabase/PostgreSQL para que cada usuario vea solo sus datos, CORS limitado a tus dominios y cabeceras HTTP de seguridad. Para cada una: qué riesgo cubre, un prompt para que Claude la implemente y cómo verificar que funciona.

Entre 1 y 2 horas para una app pequeña Leer la guía →

¿Quieres llevar la IA a tu empresa sin pelearte con todo esto?

Diseñamos e implantamos agentes, automatizaciones y asistentes con IA a medida de tu negocio.

Ver nuestros servicios de IA

Cuéntanos tu proyecto. Te respondemos en 48 h.

Auditoría gratuita de IA, campañas, web y SEO, con prioridades y cifras reales de tu negocio.

✓ Sin compromiso ✓ Respuesta en 48 h laborables ✓ Un consultor senior, no un bot
WA WhatsApp