--- id: ADR-0002 type: ADR title: "WhatsApp como Canal Principal" status: Accepted decision_date: 2026-01-04 updated_at: 2026-01-10 simco_version: "3.8.0" stakeholders: - "Equipo MiChangarrito" tags: - whatsapp - integracion - ux - canal-comunicacion - meta - chatbot --- # ADR-0002: WhatsApp como Canal Principal ## Metadata | Campo | Valor | |-------|-------| | **ID** | ADR-0002 | | **Estado** | Accepted | | **Fecha** | 2026-01-06 | | **Autor** | Product Team | | **Supersede** | - | --- ## Contexto MiChangarrito esta dirigido a duenos de micro-negocios informales en Mexico (tiendas de abarrotes, puestos de comida, fondas). Este segmento tiene caracteristicas particulares: - **Edad:** Mayores de 40 anos en promedio - **Tecnologia:** Baja adopcion de apps nuevas - **Dispositivos:** Smartphones basicos/medios - **Usos digitales:** WhatsApp es la app mas usada - **Tiempo:** Poco tiempo para aprender sistemas nuevos La pregunta es: Cual debe ser la interfaz principal del sistema? --- ## Decision **WhatsApp sera el canal principal de interaccion con el sistema.** El dueno de la tienda puede: - Consultar ventas, inventario, ganancias por chat - Dar comandos por texto o voz - Recibir alertas y notificaciones - Gestionar pedidos de clientes La app movil y dashboard web son complementarios, no el canal principal. --- ## Alternativas Consideradas ### Opcion 1: App Movil tradicional - **Pros:** - Control total de UX - Funcionalidad completa - Offline nativo - **Cons:** - Requiere descarga - Curva de aprendizaje - Competir por atencion con otras apps - Actualizaciones requieren store ### Opcion 2: Web App (PWA) - **Pros:** - Sin descarga - Facil de actualizar - Cross-platform - **Cons:** - Requiere abrir navegador - Performance limitada - Notificaciones inconsistentes ### Opcion 3: WhatsApp First (Elegida) - **Pros:** - Ya instalado en el telefono - Sin curva de aprendizaje - Interfaz familiar - Voz natural - Alto engagement - **Cons:** - Dependencia de Meta - Limitaciones de UI - Costo de mensajes - Rate limits --- ## Consecuencias ### Positivas 1. **Adopcion rapida:** Sin friccion de descarga/registro 2. **Engagement alto:** Ya usan WhatsApp diario 3. **Voz natural:** Pueden hablar al telefono 4. **Confianza:** Plataforma conocida 5. **Notificaciones:** Entrega casi garantizada ### Negativas 1. **Dependencia:** Riesgo si Meta cambia politicas 2. **Costos:** Mensajes tienen costo por volumen 3. **UI limitada:** Solo texto, botones basicos 4. **Rate limits:** Limites de mensajes 5. **Verificacion:** Proceso complejo para WhatsApp Business ### Neutrales 1. **App movil:** Sigue existiendo como complemento 2. **Web dashboard:** Para funciones avanzadas --- ## Implementacion ### Arquitectura ``` ┌─────────────┐ ┌────────────────┐ ┌─────────────┐ │ Usuario │ --> │ WhatsApp Meta │ --> │ Webhook │ │ (WhatsApp) │ │ API │ │ Service │ └─────────────┘ └────────────────┘ └──────┬──────┘ │ v ┌────────────────┐ ┌─────────────┐ │ MCP Server │ <-- │ LLM │ │ (Funciones) │ │ (OpenRouter)│ └────────┬───────┘ └─────────────┘ │ v ┌────────────────┐ │ Backend │ │ (NestJS) │ └────────────────┘ ``` ### Flujo de Mensaje 1. Usuario envia mensaje a numero de WhatsApp 2. Meta envia webhook a nuestro servicio 3. Servicio procesa mensaje (texto o audio) 4. LLM interpreta intencion 5. MCP Server ejecuta funcion (consultar ventas, etc) 6. Respuesta se envia via WhatsApp ### Comandos Soportados | Comando | Ejemplo | Funcion | |---------|---------|---------| | Ventas | "Cuanto vendi hoy?" | Consultar ventas | | Inventario | "Cuantas cocas me quedan?" | Stock de producto | | Agregar | "Agrega 10 cocas" | Actualizar inventario | | Venta | "Vendi 3 doritos" | Registrar venta | | Ganancias | "Cuanto gane esta semana?" | Reporte financiero | --- ## Validacion ### Metricas de Exito | Metrica | Objetivo | Medicion | |---------|----------|----------| | Mensajes/dia/usuario | > 5 | Analytics | | Retencion 7 dias | > 70% | Cohorte | | NPS WhatsApp | > 8 | Encuesta | | Tiempo respuesta | < 3s | Logs | ### Riesgos y Mitigaciones | Riesgo | Mitigacion | |--------|------------| | Meta cambia politicas | App movil como backup | | Costos altos | Optimizar mensajes, usar templates | | Rate limits | Priorizar mensajes, throttling | | Caida WhatsApp | Notificacion push, fallback app | --- ## Referencias - [WhatsApp Business Platform](https://business.whatsapp.com/) - [INT-001-whatsapp-meta.md](../02-integraciones/INT-001-whatsapp-meta.md) - [Estadisticas WhatsApp Mexico](https://www.statista.com/topics/6039/whatsapp-in-mexico/) --- **Fecha decision:** 2026-01-06 **Autores:** Product Team