michangarrito/docs/01-epicas/MCH-006-onboarding-inteligente.md
rckrdmrd 184d21d6ce [MCH-DOC-VAL] docs: Estandarizar épicas MCH-006 a MCH-010 con HU formales
Épicas actualizadas con formato SIMCO 4.0.1:
- MCH-006: Onboarding Inteligente (4 HU, 13 SP)
- MCH-007: Templates y Catálogos (4 HU, 8 SP)
- MCH-008: Sistema de Fiados (5 HU, 13 SP)
- MCH-009: Predicción Inventario (5 HU, 13 SP)
- MCH-010: MCP Server (7 HU, 21 SP)

Cambios aplicados:
- Agregado story_points en frontmatter y metadata
- Sección "Historias de Usuario" con formato Como/Quiero/Para
- Criterios de Aceptación con formato [CA-XXX-N]
- Tareas con formato [MCH-TT-XXX-NN]
- Tabla resumen de Story Points

IDs asignados: MCH-US-050 a MCH-US-096

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 04:28:53 -06:00

282 lines
7.9 KiB
Markdown

---
id: EPIC-MCH-006
type: Epic
title: "MCH-006: Onboarding Inteligente"
code: MCH-006
status: Completado
phase: 2
priority: P1
created_at: 2026-01-10
updated_at: 2026-01-17
simco_version: "4.0.1"
story_points: 13
dependencies:
blocks: []
depends_on: ["MCH-002", "MCH-003", "MCH-007", "MCH-011"]
---
# MCH-006: Onboarding Inteligente
## Metadata
- **Codigo:** MCH-006
- **Fase:** 2 - Inteligencia
- **Prioridad:** P1
- **Estado:** Completado
- **Story Points:** 13
- **Fecha completado:** 2026-01-10
## Descripcion
Sistema de onboarding conversacional via WhatsApp que permite a los duenos configurar su negocio enviando fotos de productos, notas de voz con precios, y seleccionando templates pre-cargados de proveedores comunes.
## Objetivos
1. Onboarding conversacional via WhatsApp
2. Carga de productos via fotos
3. Precios via notas de voz
4. Templates de proveedores comunes
5. Setup guiado paso a paso
## Alcance
### Incluido
- Flujo conversacional en WhatsApp
- OCR de etiquetas de precio
- Transcripcion de audio (precios)
- Templates de productos (Sabritas, Coca-Cola, etc.)
- Wizard web alternativo
### Excluido
- Onboarding via app movil (fase posterior)
- Importacion masiva CSV
- Integracion con mayoristas
## Flujos de Usuario
### Onboarding via WhatsApp
```
1. Dueno recibe mensaje de bienvenida
2. Bot pregunta nombre del negocio
3. Bot pregunta giro (abarrotes, papeleria, etc.)
4. Bot sugiere template de productos
5. Dueno confirma o ajusta
6. Bot pide foto de productos adicionales
7. OCR extrae nombre/precio
8. Dueno confirma/corrige via audio
9. Productos agregados al catalogo
```
### Carga de Producto por Foto
```
1. Dueno envia foto de producto
2. OCR detecta:
- Nombre del producto
- Codigo de barras
- Precio en etiqueta
3. Bot muestra: "Coca-Cola 600ml - $18?"
4. Dueno responde "Si" o corrige
5. Producto creado
```
### Carga de Precio por Audio
```
1. Dueno envia nota de voz
2. Whisper transcribe: "Sabritas a 15, Coca a 18"
3. Bot interpreta y confirma
4. Productos actualizados
```
## Componentes Tecnicos
### OCR Pipeline
- Google Vision API / Tesseract
- Deteccion de codigos de barras
- Extraccion de texto de etiquetas
- Matching con catalogo de productos conocidos
### Transcripcion
- Whisper API
- NLU para extraer entidades (producto, precio)
- Confirmacion interactiva
### Templates
- Catalogos pre-cargados de:
- Sabritas (snacks)
- Coca-Cola/Pepsi (bebidas)
- Bimbo (pan)
- Marinela (galletas)
- Productos genericos por giro
## Modelo de Datos
### Tablas Adicionales
**onboarding_sessions**
- id, tenant_id, status, current_step
- started_at, completed_at, metadata
**product_templates**
- id, giro, provider, name, sku
- default_price, image_url, barcode
## Entregables
| Entregable | Estado | Archivo |
|------------|--------|---------|
| onboarding.module | Pendiente | `modules/onboarding/` |
| OCR service | Pendiente | `services/ocr.service.ts` |
| Whisper service | Pendiente | `services/whisper.service.ts` |
| Templates seed | Pendiente | `seeds/product-templates/` |
| WhatsApp flows | Pendiente | `whatsapp-service/flows/` |
## Dependencias
### Depende de
- MCH-002 (Auth)
- MCH-003 (Productos)
- MCH-007 (Templates)
- MCH-011 (WhatsApp Service)
### Bloquea a
- Ninguno (mejora de UX)
## Criterios de Aceptacion
- [x] Flujo WhatsApp funciona end-to-end
- [x] OCR detecta productos con >80% precision
- [x] Audio se transcribe correctamente
- [x] Templates se cargan rapidamente
- [x] Dueno puede completar setup en <10 min
## Metricas de Exito
| Metrica | Objetivo |
|---------|----------|
| Tiempo de onboarding | < 10 minutos |
| Productos cargados | > 20 en primera sesion |
| Precision OCR | > 80% |
| Abandono | < 20% |
---
## Historias de Usuario
### MCH-US-050: Flujo WhatsApp Onboarding
**Story Points:** 5
**Como** dueno nuevo de negocio
**Quiero** configurar mi negocio completamente via WhatsApp
**Para** tener mi tienda lista sin necesidad de usar computadora
#### Criterios de Aceptacion
- [CA-050-1] El bot envia mensaje de bienvenida al registrar numero
- [CA-050-2] El flujo pregunta nombre del negocio y giro
- [CA-050-3] El bot sugiere templates segun el giro seleccionado
- [CA-050-4] El dueno puede completar setup en menos de 10 minutos
- [CA-050-5] Al finalizar, el negocio queda activo con catalogo inicial
#### Tareas
| ID | Tarea | Estimacion |
|----|-------|------------|
| MCH-TT-050-01 | Crear flujo de bienvenida en WhatsApp | 4h |
| MCH-TT-050-02 | Implementar recoleccion de datos del negocio | 4h |
| MCH-TT-050-03 | Integrar sugerencia de templates por giro | 3h |
| MCH-TT-050-04 | Crear onboarding_sessions table y modelo | 2h |
| MCH-TT-050-05 | Implementar tracking de progreso | 2h |
| MCH-TT-050-06 | Testing end-to-end del flujo | 3h |
---
### MCH-US-051: Carga de Producto por Foto
**Story Points:** 3
**Como** dueno de negocio
**Quiero** enviar fotos de productos para que se agreguen automaticamente
**Para** cargar mi inventario rapidamente sin escribir cada producto
#### Criterios de Aceptacion
- [CA-051-1] El sistema detecta nombre del producto en la foto
- [CA-051-2] El sistema extrae codigo de barras si es visible
- [CA-051-3] El sistema detecta precio en etiqueta con >80% precision
- [CA-051-4] El bot confirma los datos extraidos antes de guardar
- [CA-051-5] El dueno puede corregir datos incorrectos
#### Tareas
| ID | Tarea | Estimacion |
|----|-------|------------|
| MCH-TT-051-01 | Integrar Google Vision API / Tesseract | 4h |
| MCH-TT-051-02 | Implementar deteccion de codigos de barras | 3h |
| MCH-TT-051-03 | Crear pipeline de extraccion de texto | 3h |
| MCH-TT-051-04 | Implementar matching con catalogo conocido | 2h |
| MCH-TT-051-05 | Crear flujo de confirmacion/correccion | 2h |
---
### MCH-US-052: Precio por Audio
**Story Points:** 3
**Como** dueno de negocio
**Quiero** dictar precios por voz
**Para** actualizar multiples productos rapidamente mientras atiendo
#### Criterios de Aceptacion
- [CA-052-1] El sistema transcribe notas de voz correctamente
- [CA-052-2] El NLU extrae entidades producto-precio del audio
- [CA-052-3] El bot confirma interpretacion antes de aplicar
- [CA-052-4] Se pueden actualizar multiples productos en un audio
- [CA-052-5] El dueno puede corregir interpretaciones incorrectas
#### Tareas
| ID | Tarea | Estimacion |
|----|-------|------------|
| MCH-TT-052-01 | Integrar Whisper API para transcripcion | 3h |
| MCH-TT-052-02 | Implementar NLU para extraer producto-precio | 4h |
| MCH-TT-052-03 | Crear flujo de confirmacion interactiva | 2h |
| MCH-TT-052-04 | Implementar actualizacion batch de precios | 2h |
| MCH-TT-052-05 | Testing con diferentes acentos/ruido | 2h |
---
### MCH-US-053: Seleccion de Templates
**Story Points:** 2
**Como** dueno de negocio
**Quiero** elegir templates pre-cargados segun mi giro
**Para** tener productos comunes listos sin cargarlos manualmente
#### Criterios de Aceptacion
- [CA-053-1] Existen templates para abarrotes, papeleria, y giros comunes
- [CA-053-2] Templates incluyen productos de Sabritas, Coca-Cola, Bimbo, Marinela
- [CA-053-3] El dueno puede seleccionar uno o mas templates
- [CA-053-4] Los productos del template se agregan al catalogo con precios sugeridos
- [CA-053-5] El dueno puede ajustar precios despues de cargar
#### Tareas
| ID | Tarea | Estimacion |
|----|-------|------------|
| MCH-TT-053-01 | Crear tabla product_templates | 2h |
| MCH-TT-053-02 | Crear seeds de templates por proveedor | 4h |
| MCH-TT-053-03 | Implementar seleccion multiple de templates | 2h |
| MCH-TT-053-04 | Crear servicio de clonado a catalogo tenant | 2h |
| MCH-TT-053-05 | Implementar ajuste de precios post-carga | 2h |
---
## Resumen de Story Points
| Historia | Descripcion | SP |
|----------|-------------|----:|
| MCH-US-050 | Flujo WhatsApp Onboarding | 5 |
| MCH-US-051 | Carga de Producto por Foto | 3 |
| MCH-US-052 | Precio por Audio | 3 |
| MCH-US-053 | Seleccion de Templates | 2 |
| **TOTAL** | | **13** |
---
**Ultima actualizacion:** 2026-01-17