michangarrito/docs/97-adr/ADR-0002-whatsapp-first-approach.md
rckrdmrd 928eb795e6 [SIMCO-V38] feat: Actualizar a SIMCO v3.8.0 + cambios apps
- HERENCIA-SIMCO.md actualizado con directivas v3.7 y v3.8
- Cambios en backend y frontend

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-10 08:53:05 -06:00

5.4 KiB

id type title status decision_date updated_at simco_version stakeholders tags
ADR-0002 ADR WhatsApp como Canal Principal Accepted 2026-01-04 2026-01-10 3.8.0
Equipo MiChangarrito
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


Fecha decision: 2026-01-06 Autores: Product Team