Docs / 3. Conectividad & Canales
Canal WhatsApp & Webhooks
Integración oficial de WhatsApp Business, canal directo del dueño y gobernanza de plantillas.
Canal WhatsApp & Webhooks
WhatsApp es el canal de comunicación por excelencia para la atención al cliente, reservas hoteleras y coordinación operativa. Orbis integra la API oficial de WhatsApp Business (Cloud API / Zernio) bajo un esquema de seguridad fail-closed, gobernanza de plantillas y canal bidireccional de control para el dueño.
┌─────────────────────────────────────────────────────────────┐
│ ARQUITECTURA DE WHATSAPP │
├─────────────────────────────────────────────────────────────┤
│ 1. INGESTA VERIFICADA Firma criptográfica HMAC-256 │
│ 2. CANAL DEL CLIENTE Atención 24/7 y cotizaciones │
│ 3. CANAL DEL DUEÑO Aprobaciones y comandos │
│ 4. WATCHDOG DE SALUD Detección de billing y drops │
└─────────────────────────────────────────────────────────────┘
---
1. Ingesta Criptográfica de Webhooks
Toda petición entrante desde los servidores de Meta o Zernio se valida antes de despertar al motor de ejecución:
- Verificación de Firma: Cada webhook debe incluir su cabecera de autenticación (
X-Hub-Signature-256oX-Zernio-Signature). Si la firma no coincide con el secreto configurado en el vault, el servidor rechaza el paquete con código503 Service Unavailable. - Allowlist Fail-Closed: Para entornos de prueba o pilotos cerrados, Orbis restringe la recepción a números autorizados (
WHATSAPP_ALLOWED_USERS), descartando cualquier tráfico no reconocido antes de consumir capacidad. - Deduplicación de Envíos: La red móvil puede reintentar mensajes idénticos. Cada mensaje entrante se registra con su ID de mensaje único (
wamid), previniendo respuestas duplicadas.
---
2. Plantillas Oficiales (Templates) & Apertura en Frío
Cuando la empresa necesita contactar a un cliente fuera de la ventana de 24 horas (por ejemplo, para enviar una confirmación de reserva 3 días antes de la llegada o una notificación de vuelo retrasado):
- Gestión de Plantillas: Orbis valida que la plantilla esté aprobada por Meta antes de intentar el envío.
- Pre-Gate Local: Si una plantilla fue pausada o rechazada en el Business Manager de Meta (
PAUSED,REJECTED), el gate local frena la emisión, evitando penalizaciones de calidad y cobros innecesarios. - Egress DLP en Parámetros: Las variables dinámicas de la plantilla (nombre, fecha, monto) son escaneadas por el motor de prevención de pérdida de datos antes de viajar a Meta.
---
3. El Canal del Dueño (Owner Channel)
El dueño o gerente de la empresa no necesita estar frente a una computadora para autorizar gastos o conocer el estado de su operación. Orbis vincula su número personal de WhatsApp como canal de comando seguro:
ORBIS ──► "🚨 Solicitud de Aprobación [APR-842]:
El huésped Carlos Pérez solicita cancelación con reembolso del 100%
(Monto: $120.000). Política estándar: no reembolsable.
Respondé 'sí' para autorizar o 'no' para rechazar."
DUEÑO ──► "sí"
ORBIS ──► "✅ Aprobado. El reembolso se procesó y se notificó al huésped."
Comandos Interactivos del Dueño
Además de autorizar transacciones, el canal del dueño es interactivo y responde a comandos directos en lenguaje natural:
| Comando | Acción de Orbis |
|---|---|
estado |
Reporte resumido del día: reservas atendidas, ocupación actual y UT consumidas. |
incidentes |
Lista de alertas operativas o de sistemas que requieran atención inmediata. |
pendientes |
Lista de solicitudes 4-Eyes aguardando respuesta del dueño. |
pausar [rol] |
Pausa temporal de las rutinas de un empleado específico. |
ayuda |
Despliega el menú de comandos autorizados para el número del dueño. |
---
4. Vigilancia de Salud del Canal (Watchdog)
La caída inadvertida de una línea de WhatsApp Business puede costar miles de dólares en reservas perdidas. Orbis incluye un supervisor de canal (_Channel Watchdog_):
- Incidentes de Facturación (
waba_billing): Si la tarjeta asociada a la cuenta de Meta expira o rechaza un pago, el sistema detecta el error y deriva un incidente crítico de inmediato al dueño. - Suspensiones de Meta (
waba_suspended): Notifica en tiempo real si la cuenta de WhatsApp Business experimentó un bloqueo temporal por políticas. - Estado de Envío (
wa_send_status): Monitorea eventosdeliveredyreadpara verificar que los mensajes alcancen efectivamente el teléfono de los clientes.