- 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>
775 lines
18 KiB
Markdown
775 lines
18 KiB
Markdown
# MiChangarrito - Plan de Desarrollo
|
|
|
|
## Estrategia General
|
|
|
|
### Base de Codigo
|
|
- **Reutilizar:** POS-Micro como base (80% del backend)
|
|
- **Extender:** Schema de BD con nuevas tablas
|
|
- **Adaptar:** Trading-Platform LLM patterns a TypeScript
|
|
- **Nuevo:** WhatsApp Service, MCP Server, Mobile App
|
|
|
|
### Timeline Estimado
|
|
- **MVP Fase 1:** 8-10 semanas
|
|
- **Fase 2 Inteligencia:** 4-6 semanas
|
|
- **Fase 3 Asistente IA:** 6-8 semanas
|
|
- **Total MVP Completo:** 18-24 semanas (~5-6 meses)
|
|
|
|
---
|
|
|
|
## FASE 1: MVP CORE
|
|
|
|
### MCH-001: Infraestructura Base
|
|
**Duracion estimada:** 1-2 semanas
|
|
**Prioridad:** P0
|
|
**Dependencias:** Ninguna
|
|
|
|
#### Tareas Backend
|
|
- [ ] Copiar estructura de POS-Micro a michangarrito/apps/backend
|
|
- [ ] Actualizar package.json con nombre y dependencias
|
|
- [ ] Configurar TypeORM para PostgreSQL 5432 (instancia compartida workspace)
|
|
- [ ] Configurar Redis 6379/DB8 (instancia compartida workspace)
|
|
- [ ] Implementar health checks
|
|
- [ ] Configurar Swagger/OpenAPI
|
|
- [ ] Setup Docker Compose (db, redis, mailhog)
|
|
- [ ] Configurar ESLint + Prettier
|
|
|
|
#### Tareas Database
|
|
- [ ] Crear script de inicializacion (database/init/)
|
|
- [ ] Implementar schema `public` (tenants, tenant_configs)
|
|
- [ ] Implementar schema `auth` (users, sessions, otp_codes)
|
|
- [ ] Implementar RLS policies basicas
|
|
- [ ] Crear funciones utilitarias (generate_ticket_number, update_updated_at)
|
|
- [ ] Seeds de datos de prueba
|
|
|
|
#### Tareas DevOps
|
|
- [ ] Crear .env.example completo
|
|
- [ ] Documentar proceso de setup
|
|
- [ ] Configurar scripts npm (dev, build, test, migration)
|
|
|
|
#### Entregables
|
|
- Backend NestJS corriendo en puerto 3141
|
|
- Base de datos con schemas public y auth
|
|
- Docker Compose funcional
|
|
- Documentacion de setup
|
|
|
|
---
|
|
|
|
### MCH-002: Autenticacion
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P0
|
|
**Dependencias:** MCH-001
|
|
|
|
#### Tareas Backend
|
|
- [ ] Adaptar AuthModule de POS-Micro
|
|
- [ ] Implementar registro de tenant + usuario owner
|
|
- [ ] Implementar login con OTP (SMS/WhatsApp)
|
|
- [ ] Implementar PIN de acceso rapido
|
|
- [ ] Configurar JWT con refresh tokens
|
|
- [ ] Implementar biometrico (preparar endpoints)
|
|
- [ ] Guards para roles (owner, employee)
|
|
- [ ] Middleware de tenant isolation
|
|
|
|
#### Tareas Database
|
|
- [ ] Verificar tablas auth.users, auth.sessions, auth.otp_codes
|
|
- [ ] Indices para busqueda por telefono
|
|
|
|
#### Integraciones
|
|
- [ ] Servicio de envio OTP (placeholder, luego WhatsApp)
|
|
|
|
#### Entregables
|
|
- Endpoints: POST /auth/register, POST /auth/login, POST /auth/verify-otp
|
|
- Endpoints: POST /auth/set-pin, POST /auth/login-pin
|
|
- Endpoints: POST /auth/refresh, POST /auth/logout
|
|
- Guards funcionando
|
|
|
|
---
|
|
|
|
### MCH-003: Catalogo de Productos
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P0
|
|
**Dependencias:** MCH-002
|
|
|
|
#### Tareas Backend
|
|
- [ ] Copiar ProductsModule de POS-Micro
|
|
- [ ] Copiar CategoriesModule de POS-Micro
|
|
- [ ] Adaptar DTOs para MiChangarrito
|
|
- [ ] Implementar busqueda por nombre (full-text)
|
|
- [ ] Implementar busqueda por codigo de barras
|
|
- [ ] Endpoint de importacion masiva
|
|
- [ ] Endpoint de templates de proveedores
|
|
|
|
#### Tareas Database
|
|
- [ ] Implementar schema `catalog`
|
|
- [ ] Tabla catalog.categories
|
|
- [ ] Tabla catalog.products
|
|
- [ ] Tabla catalog.product_templates
|
|
- [ ] Seeds de templates (Bimbo, Coca-Cola, Sabritas)
|
|
|
|
#### Entregables
|
|
- CRUD completo de categorias
|
|
- CRUD completo de productos
|
|
- Busqueda y filtrado
|
|
- Templates de proveedores cargados
|
|
|
|
---
|
|
|
|
### MCH-004: Punto de Venta Basico
|
|
**Duracion estimada:** 1.5 semanas
|
|
**Prioridad:** P0
|
|
**Dependencias:** MCH-003
|
|
|
|
#### Tareas Backend
|
|
- [ ] Copiar SalesModule de POS-Micro
|
|
- [ ] Adaptar para multiples metodos de pago
|
|
- [ ] Implementar generacion de ticket
|
|
- [ ] Implementar corte de caja
|
|
- [ ] Calculos de totales, impuestos, cambio
|
|
- [ ] Cancelacion de ventas
|
|
|
|
#### Tareas Database
|
|
- [ ] Implementar schema `sales`
|
|
- [ ] Tabla sales.sales
|
|
- [ ] Tabla sales.sale_items
|
|
- [ ] Tabla sales.payments
|
|
- [ ] Tabla sales.daily_closures
|
|
|
|
#### Tareas Frontend Web
|
|
- [ ] Inicializar proyecto React + Vite en apps/web
|
|
- [ ] Configurar TailwindCSS
|
|
- [ ] Copiar componentes base de POS-Micro frontend
|
|
- [ ] Adaptar POSPage
|
|
- [ ] Adaptar CartPanel
|
|
- [ ] Adaptar CheckoutModal
|
|
- [ ] Implementar login screen
|
|
- [ ] Implementar dashboard basico
|
|
|
|
#### Entregables
|
|
- Registro de ventas completo
|
|
- Corte de caja funcional
|
|
- UI web basica de POS
|
|
|
|
---
|
|
|
|
### MCH-005: Integraciones de Pago
|
|
**Duracion estimada:** 2 semanas
|
|
**Prioridad:** P0
|
|
**Dependencias:** MCH-004
|
|
|
|
#### Tareas Backend - Efectivo
|
|
- [ ] Registro de pago en efectivo
|
|
- [ ] Calculo de cambio
|
|
- [ ] Validacion de montos
|
|
|
|
#### Tareas Backend - Stripe
|
|
- [ ] Configurar SDK de Stripe
|
|
- [ ] Crear PaymentsModule para suscripciones
|
|
- [ ] Implementar creacion de customer
|
|
- [ ] Implementar webhook handler
|
|
- [ ] Endpoint para pago con OXXO
|
|
|
|
#### Tareas Backend - Mercado Pago (Basico)
|
|
- [ ] Configurar API de Mercado Pago
|
|
- [ ] Implementar creacion de payment intent
|
|
- [ ] Implementar webhook handler
|
|
- [ ] Manejo de estados de pago
|
|
|
|
#### Tareas Database
|
|
- [ ] Completar tabla sales.payments con todos los campos
|
|
- [ ] Indices para referencias externas
|
|
|
|
#### Entregables
|
|
- Pago en efectivo funcionando
|
|
- Stripe configurado (suscripciones preparadas)
|
|
- Mercado Pago basico funcionando
|
|
|
|
---
|
|
|
|
## FASE 2: INTELIGENCIA
|
|
|
|
### MCH-006: Onboarding Inteligente
|
|
**Duracion estimada:** 1.5 semanas
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-002, MCH-003
|
|
|
|
#### Tareas Backend
|
|
- [ ] Crear OnboardingModule
|
|
- [ ] Flujo de registro guiado
|
|
- [ ] Procesamiento de imagenes (OCR)
|
|
- [ ] Procesamiento de audios (transcripcion)
|
|
- [ ] Seleccion de templates por giro
|
|
- [ ] Estado de onboarding por tenant
|
|
|
|
#### Integraciones
|
|
- [ ] Google Cloud Vision para OCR
|
|
- [ ] OpenAI Whisper para audio
|
|
|
|
#### Entregables
|
|
- Flujo de onboarding paso a paso
|
|
- Carga de productos desde fotos
|
|
- Carga de productos desde audio
|
|
|
|
---
|
|
|
|
### MCH-007: Templates y Catalogos
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-003
|
|
|
|
#### Tareas Backend
|
|
- [ ] CRUD de templates administrativo
|
|
- [ ] Endpoint de busqueda de templates
|
|
- [ ] Importacion de template a tenant
|
|
- [ ] Precios sugeridos por region
|
|
|
|
#### Tareas Database
|
|
- [ ] Ampliar catalog.product_templates
|
|
- [ ] Seeds extensivos de proveedores
|
|
|
|
#### Entregables
|
|
- Catalogo de 500+ productos template
|
|
- Busqueda por proveedor/categoria
|
|
- Importacion one-click
|
|
|
|
---
|
|
|
|
### MCH-008: Sistema de Fiados
|
|
**Duracion estimada:** 1.5 semanas
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-004
|
|
|
|
#### Tareas Backend
|
|
- [ ] Crear CustomersModule
|
|
- [ ] Crear FiadosModule
|
|
- [ ] CRUD de clientes
|
|
- [ ] Registro de fiado al vender
|
|
- [ ] Abonos a fiados
|
|
- [ ] Recordatorios automaticos
|
|
- [ ] Reporte de fiados pendientes
|
|
|
|
#### Tareas Database
|
|
- [ ] Implementar schema `customers`
|
|
- [ ] Tabla customers.customers
|
|
- [ ] Tabla customers.fiados
|
|
- [ ] Tabla customers.fiado_payments
|
|
- [ ] Trigger para balance de cliente
|
|
|
|
#### Entregables
|
|
- Gestion completa de clientes
|
|
- Sistema de fiados funcional
|
|
- Recordatorios configurables
|
|
|
|
---
|
|
|
|
### MCH-009: Prediccion de Inventario
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-004
|
|
|
|
#### Tareas Backend
|
|
- [ ] Crear InventoryModule
|
|
- [ ] Movimientos de inventario automaticos (ventas)
|
|
- [ ] Registro de compras/entradas
|
|
- [ ] Alertas de stock bajo
|
|
- [ ] Prediccion basica (promedio movil)
|
|
- [ ] Sugerencias de resurtido
|
|
|
|
#### Tareas Database
|
|
- [ ] Implementar schema `inventory`
|
|
- [ ] Tabla inventory.inventory_movements
|
|
- [ ] Tabla inventory.stock_alerts
|
|
|
|
#### Entregables
|
|
- Control de inventario automatico
|
|
- Alertas de stock bajo
|
|
- Sugerencias de compra basicas
|
|
|
|
---
|
|
|
|
## FASE 3: ASISTENTE IA
|
|
|
|
### MCH-010: MCP Server
|
|
**Duracion estimada:** 2 semanas
|
|
**Prioridad:** P0
|
|
**Dependencias:** MCH-004, MCH-008, MCH-009
|
|
|
|
#### Tareas MCP Server
|
|
- [ ] Inicializar proyecto en apps/mcp-server
|
|
- [ ] Configurar MCP SDK TypeScript
|
|
- [ ] Implementar transporte stdio
|
|
- [ ] Implementar tools basicos:
|
|
- [ ] buscar_producto
|
|
- [ ] registrar_venta
|
|
- [ ] obtener_ventas
|
|
- [ ] consultar_stock
|
|
- [ ] registrar_fiado
|
|
- [ ] obtener_fiados
|
|
- [ ] generar_reporte_ventas
|
|
- [ ] Implementar autenticacion por tenant
|
|
- [ ] Implementar rate limiting
|
|
- [ ] Logging de tool calls
|
|
|
|
#### Tareas Backend
|
|
- [ ] Cliente HTTP para MCP Server
|
|
- [ ] Tracking de uso de tokens
|
|
|
|
#### Entregables
|
|
- MCP Server corriendo en puerto 3142
|
|
- 10+ tools funcionales
|
|
- Documentacion de tools
|
|
|
|
---
|
|
|
|
### MCH-011: WhatsApp Service
|
|
**Duracion estimada:** 2 semanas
|
|
**Prioridad:** P0
|
|
**Dependencias:** MCH-002
|
|
|
|
#### Tareas WhatsApp Service
|
|
- [ ] Inicializar proyecto NestJS en apps/whatsapp-service
|
|
- [ ] Configurar Meta Cloud API
|
|
- [ ] Implementar verificacion de webhook
|
|
- [ ] Implementar recepcion de mensajes
|
|
- [ ] Implementar envio de mensajes (texto, template, botones)
|
|
- [ ] Implementar envio de multimedia
|
|
- [ ] Deteccion de tipo de usuario (owner vs customer)
|
|
- [ ] Persistencia de conversaciones
|
|
|
|
#### Tareas Database
|
|
- [ ] Implementar schema `messaging`
|
|
- [ ] Tabla messaging.conversations
|
|
- [ ] Tabla messaging.messages
|
|
- [ ] Tabla messaging.notifications
|
|
|
|
#### Integraciones
|
|
- [ ] Meta WhatsApp Cloud API
|
|
|
|
#### Entregables
|
|
- WhatsApp Service corriendo en puerto 3143
|
|
- Webhook funcional
|
|
- Envio/recepcion de mensajes
|
|
- Deteccion de roles
|
|
|
|
---
|
|
|
|
### MCH-012: Chat LLM Dueno
|
|
**Duracion estimada:** 1.5 semanas
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-010, MCH-011
|
|
|
|
#### Tareas Backend
|
|
- [ ] Crear LLMModule
|
|
- [ ] Cliente agnostico de LLM (OpenRouter/OpenAI/Claude)
|
|
- [ ] System prompts para dueno
|
|
- [ ] Integracion con MCP tools
|
|
- [ ] Contexto de conversacion
|
|
- [ ] Tracking de tokens
|
|
|
|
#### Tareas WhatsApp
|
|
- [ ] Flujo de mensaje de dueno -> LLM -> respuesta
|
|
- [ ] Manejo de tool calls
|
|
- [ ] Respuestas con formato amigable
|
|
|
|
#### Entregables
|
|
- Dueno puede consultar via WhatsApp:
|
|
- "Cuanto vendi hoy?"
|
|
- "Que me falta por resurtir?"
|
|
- "Registra una venta de 2 cocas"
|
|
|
|
---
|
|
|
|
### MCH-013: Chat LLM Cliente
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-012
|
|
|
|
#### Tareas Backend
|
|
- [ ] System prompts para cliente
|
|
- [ ] Tools limitados para cliente
|
|
- [ ] Deteccion de intencion (consulta, pedido, precio)
|
|
|
|
#### Tareas WhatsApp
|
|
- [ ] Flujo de mensaje cliente -> LLM -> respuesta
|
|
- [ ] Notificacion a dueno de pedidos
|
|
|
|
#### Entregables
|
|
- Cliente puede consultar via WhatsApp:
|
|
- "Tienen refrescos?"
|
|
- "A como el kilo de tortilla?"
|
|
- "Quiero pedir 3 tacos para llevar"
|
|
|
|
---
|
|
|
|
## FASE 4: PEDIDOS Y CLIENTES
|
|
|
|
### MCH-014: Gestion de Clientes
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-008
|
|
|
|
#### Tareas Backend
|
|
- [ ] Extender CustomersModule
|
|
- [ ] Historial de compras por cliente
|
|
- [ ] Productos frecuentes
|
|
- [ ] Comunicacion directa por WhatsApp
|
|
|
|
#### Tareas Frontend
|
|
- [ ] Pantalla de clientes
|
|
- [ ] Detalle de cliente
|
|
- [ ] Historial de compras
|
|
|
|
#### Entregables
|
|
- Gestion completa de clientes en web
|
|
- Historial y estadisticas
|
|
|
|
---
|
|
|
|
### MCH-015: Pedidos via WhatsApp
|
|
**Duracion estimada:** 1.5 semanas
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-013
|
|
|
|
#### Tareas Backend
|
|
- [ ] Crear OrdersModule
|
|
- [ ] Recepcion de pedidos desde LLM
|
|
- [ ] Estados de pedido
|
|
- [ ] Notificaciones push de nuevo pedido
|
|
|
|
#### Tareas Database
|
|
- [ ] Implementar schema `orders`
|
|
- [ ] Tabla orders.orders
|
|
- [ ] Tabla orders.order_items
|
|
|
|
#### Tareas Frontend
|
|
- [ ] Vista de pedidos pendientes
|
|
- [ ] Aceptar/rechazar pedido
|
|
- [ ] Cobrar pedido
|
|
|
|
#### Entregables
|
|
- Flujo completo de pedidos
|
|
- Notificaciones en tiempo real
|
|
|
|
---
|
|
|
|
### MCH-016: Entregas a Domicilio
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P2
|
|
**Dependencias:** MCH-015
|
|
|
|
#### Tareas Backend
|
|
- [ ] Configuracion de zonas de entrega
|
|
- [ ] Costos de envio
|
|
- [ ] Estados de entrega
|
|
- [ ] Tracking basico
|
|
|
|
#### Entregables
|
|
- Configuracion de delivery
|
|
- Estados de pedido con entrega
|
|
|
|
---
|
|
|
|
### MCH-017: Notificaciones
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-011
|
|
|
|
#### Tareas Backend
|
|
- [ ] Crear NotificationsModule
|
|
- [ ] Integracion Firebase FCM
|
|
- [ ] Programacion de notificaciones
|
|
- [ ] Resumen diario automatico
|
|
- [ ] Alertas de stock
|
|
|
|
#### Integraciones
|
|
- [ ] Firebase Cloud Messaging
|
|
|
|
#### Entregables
|
|
- Push notifications funcionales
|
|
- Resumen diario por WhatsApp
|
|
- Alertas configurables
|
|
|
|
---
|
|
|
|
## FASE 5: MONETIZACION
|
|
|
|
### MCH-018: Planes y Suscripciones
|
|
**Duracion estimada:** 1.5 semanas
|
|
**Prioridad:** P0
|
|
**Dependencias:** MCH-005
|
|
|
|
#### Tareas Backend
|
|
- [ ] Crear SubscriptionsModule
|
|
- [ ] Definicion de planes (Changarrito, Tiendita)
|
|
- [ ] Creacion de suscripcion en Stripe
|
|
- [ ] Manejo de webhooks de suscripcion
|
|
- [ ] Cambio de plan
|
|
- [ ] Cancelacion
|
|
|
|
#### Tareas Database
|
|
- [ ] Implementar schema `subscriptions`
|
|
- [ ] Tabla subscriptions.plans
|
|
- [ ] Tabla subscriptions.subscriptions
|
|
|
|
#### Entregables
|
|
- Planes configurados en Stripe
|
|
- Suscripcion funcional
|
|
|
|
---
|
|
|
|
### MCH-019: Tienda de Tokens
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-018
|
|
|
|
#### Tareas Backend
|
|
- [ ] Paquetes de tokens
|
|
- [ ] Compra de tokens (Stripe)
|
|
- [ ] Balance de tokens por tenant
|
|
- [ ] Consumo de tokens en cada llamada LLM
|
|
|
|
#### Tareas Database
|
|
- [ ] Tabla subscriptions.token_packages
|
|
- [ ] Tabla subscriptions.token_usage
|
|
- [ ] Tabla subscriptions.tenant_token_balance
|
|
|
|
#### Entregables
|
|
- Tienda de tokens funcional
|
|
- Tracking de consumo
|
|
|
|
---
|
|
|
|
### MCH-020: Pagos Suscripcion
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P0
|
|
**Dependencias:** MCH-018
|
|
|
|
#### Tareas Backend
|
|
- [ ] Pago con OXXO (referencia)
|
|
- [ ] Preparar IAP iOS (endpoints)
|
|
- [ ] Preparar IAP Android (endpoints)
|
|
|
|
#### Entregables
|
|
- Multiples metodos de pago para suscripcion
|
|
|
|
---
|
|
|
|
### MCH-021: Dashboard Web
|
|
**Duracion estimada:** 2 semanas
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-004, MCH-008
|
|
|
|
#### Tareas Frontend
|
|
- [ ] Dashboard principal con metricas
|
|
- [ ] Graficas de ventas
|
|
- [ ] Productos mas vendidos
|
|
- [ ] Reportes descargables
|
|
- [ ] Configuracion de negocio
|
|
- [ ] Gestion de suscripcion
|
|
|
|
#### Entregables
|
|
- Dashboard web completo
|
|
- Reportes PDF/Excel
|
|
|
|
---
|
|
|
|
## FASE 6: CRECIMIENTO
|
|
|
|
### MCH-022: Modo Offline
|
|
**Duracion estimada:** 2 semanas
|
|
**Prioridad:** P1
|
|
**Dependencias:** MCH-004
|
|
|
|
#### Tareas Mobile
|
|
- [ ] SQLite local
|
|
- [ ] Sync de productos
|
|
- [ ] Registro offline de ventas
|
|
- [ ] Cola de sincronizacion
|
|
- [ ] Resolucion de conflictos
|
|
|
|
#### Entregables
|
|
- App funcional sin internet
|
|
- Sincronizacion automatica
|
|
|
|
---
|
|
|
|
### MCH-023: Programa Referidos
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P2
|
|
**Dependencias:** MCH-018
|
|
|
|
#### Tareas Backend
|
|
- [ ] Generacion de codigos de referido
|
|
- [ ] Tracking de referidos
|
|
- [ ] Aplicacion de beneficios
|
|
|
|
#### Entregables
|
|
- Sistema de referidos funcional
|
|
|
|
---
|
|
|
|
### MCH-024: CoDi y SPEI
|
|
**Duracion estimada:** 1.5 semanas
|
|
**Prioridad:** P2
|
|
**Dependencias:** MCH-005
|
|
|
|
#### Tareas Backend
|
|
- [ ] Integracion con Openpay para CoDi
|
|
- [ ] Generacion de QR
|
|
- [ ] CLABE virtual (si disponible)
|
|
|
|
#### Entregables
|
|
- Cobro con CoDi funcional
|
|
|
|
---
|
|
|
|
### MCH-025: Widgets y Atajos
|
|
**Duracion estimada:** 1 semana
|
|
**Prioridad:** P2
|
|
**Dependencias:** MCH-004
|
|
|
|
#### Tareas Mobile
|
|
- [ ] Android widget de venta rapida
|
|
- [ ] iOS quick actions
|
|
- [ ] Deep links
|
|
|
|
#### Entregables
|
|
- Widgets funcionales
|
|
|
|
---
|
|
|
|
## APP MOBILE (Paralelo a Fases 3-5)
|
|
|
|
### Desarrollo React Native
|
|
**Duracion estimada:** 8-10 semanas (paralelo)
|
|
**Prioridad:** P0
|
|
|
|
#### Semanas 1-2: Setup
|
|
- [ ] Inicializar proyecto Expo en apps/mobile
|
|
- [ ] Configurar navegacion (React Navigation)
|
|
- [ ] Configurar estado global (Zustand)
|
|
- [ ] Configurar API client
|
|
- [ ] Pantalla de login
|
|
|
|
#### Semanas 3-4: Core
|
|
- [ ] Pantalla de POS
|
|
- [ ] Componente de carrito
|
|
- [ ] Checkout modal
|
|
- [ ] Scanner de codigo de barras
|
|
|
|
#### Semanas 5-6: Features
|
|
- [ ] Pantalla de productos
|
|
- [ ] Pantalla de clientes
|
|
- [ ] Pantalla de fiados
|
|
- [ ] Pantalla de pedidos
|
|
|
|
#### Semanas 7-8: Integraciones
|
|
- [ ] Push notifications (Expo Notifications)
|
|
- [ ] Bluetooth para terminal (si aplica)
|
|
- [ ] Deep linking
|
|
|
|
#### Semanas 9-10: Polish
|
|
- [ ] UI/UX refinamiento
|
|
- [ ] Performance optimization
|
|
- [ ] Testing
|
|
- [ ] Build para TestFlight/Play Console
|
|
|
|
---
|
|
|
|
## Cronograma Visual
|
|
|
|
```
|
|
Semana 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
|
| | | | | | | | | | | | | | | | | |
|
|
MCH-001 ████
|
|
MCH-002 ██
|
|
MCH-003 ██
|
|
MCH-004 ███
|
|
MCH-005 ████
|
|
|
|
--- MVP FASE 1 COMPLETADO (Semana 7) ---
|
|
|
|
MCH-006 ███
|
|
MCH-007 ██
|
|
MCH-008 ███
|
|
MCH-009 ██
|
|
|
|
--- FASE 2 COMPLETADA (Semana 11) ---
|
|
|
|
MCH-010 ████
|
|
MCH-011 ████
|
|
MCH-012 ███
|
|
MCH-013 ██
|
|
|
|
--- FASE 3 COMPLETADA (Semana 15) ---
|
|
|
|
MCH-014 ██
|
|
MCH-015 ███
|
|
MCH-017 ██
|
|
|
|
--- FASE 4 BASICA COMPLETADA (Semana 18) ---
|
|
|
|
MOBILE |███████████████████████████████████████████████████|
|
|
| Setup | Core | Features | Integ | Polish |
|
|
```
|
|
|
|
---
|
|
|
|
## Metricas de Exito por Fase
|
|
|
|
### Fase 1 - MVP Core
|
|
- [ ] Registro de ventas funcional
|
|
- [ ] 3 metodos de pago (efectivo, Stripe, MP)
|
|
- [ ] Corte de caja diario
|
|
- [ ] UI web basica
|
|
|
|
### Fase 2 - Inteligencia
|
|
- [ ] Onboarding < 10 minutos
|
|
- [ ] 500+ productos en templates
|
|
- [ ] Sistema de fiados completo
|
|
- [ ] Alertas de stock automaticas
|
|
|
|
### Fase 3 - Asistente IA
|
|
- [ ] Respuesta LLM < 3 segundos
|
|
- [ ] 10+ tools MCP funcionales
|
|
- [ ] Deteccion de rol 95%+ precision
|
|
- [ ] Costo < $0.01 por interaccion
|
|
|
|
### Fase 4 - Pedidos
|
|
- [ ] Flujo pedido->cobro < 2 minutos
|
|
- [ ] Push notifications funcionando
|
|
- [ ] 0 pedidos perdidos
|
|
|
|
### Fase 5 - Monetizacion
|
|
- [ ] Suscripciones activas
|
|
- [ ] Tokens comprables
|
|
- [ ] Retencion > 80% mes 2
|
|
|
|
---
|
|
|
|
## Riesgos y Mitigaciones
|
|
|
|
| Riesgo | Probabilidad | Impacto | Mitigacion |
|
|
|--------|--------------|---------|------------|
|
|
| Bloqueo WhatsApp API | Media | Alto | Usar API oficial, seguir guidelines |
|
|
| Costos LLM elevados | Media | Medio | OpenRouter, modelos economicos, cache |
|
|
| Integracion terminal compleja | Media | Medio | Priorizar una terminal primero |
|
|
| Adopcion usuario mayor | Alta | Alto | UX extremadamente simple, WhatsApp-first |
|
|
| Competencia | Media | Medio | Diferenciacion por IA y simplicidad |
|
|
|
|
---
|
|
|
|
## Equipo Sugerido
|
|
|
|
| Rol | Cantidad | Enfoque |
|
|
|-----|----------|---------|
|
|
| Backend Developer | 2 | NestJS, integraciones, MCP |
|
|
| Frontend Developer | 1 | React web + React Native |
|
|
| DevOps | 0.5 | CI/CD, infraestructura |
|
|
| Product/PM | 0.5 | Prioridades, testing |
|
|
|
|
**Total:** 4 FTEs
|
|
|
|
---
|
|
|
|
**Version:** 1.0.0
|
|
**Fecha:** 2026-01-04
|