- 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>
201 lines
5.4 KiB
Markdown
201 lines
5.4 KiB
Markdown
---
|
|
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
|