michangarrito/backups/docs-backup-2026-01-10/docs/00-vision-general/REQUERIMIENTOS-FUNCIONALES.md
rckrdmrd 97f407c661 [MIGRATION-V2] feat: Migrar michangarrito a estructura v2
- Prefijo v2: MCH
- TRACEABILITY-MASTER.yml creado
- Listo para integracion como submodulo

Workspace: v2.0.0 | SIMCO: v4.0.0
2026-01-10 11:28:54 -06:00

10 KiB

MiChangarrito - Requerimientos Funcionales

RF-001: Punto de Venta (POS)

RF-001.1: Registro de Ventas

  • Agregar productos manualmente o por búsqueda
  • Escanear código de barras (cámara del celular)
  • Ajustar cantidad de productos
  • Aplicar descuentos (porcentaje o monto fijo)
  • Calcular total automáticamente
  • Mostrar desglose de productos

RF-001.2: Métodos de Cobro

  • Efectivo: Ingresar monto recibido, calcular cambio
  • Tarjeta Mercado Pago: Conexión Bluetooth con terminal
  • Tarjeta Clip: Conexión Bluetooth con terminal
  • CoDi: Generar QR de cobro, esperar confirmación
  • Transferencia SPEI: Mostrar CLABE virtual, confirmar manual
  • Fiado/Crédito: Registrar deuda a cliente

RF-001.3: Tickets y Comprobantes

  • Generar ticket digital (imagen/PDF)
  • Enviar por WhatsApp al cliente
  • Imprimir en impresora térmica Bluetooth (opcional)
  • Historial de tickets

RF-001.4: Corte de Caja

  • Corte parcial (sin cerrar día)
  • Corte de día completo
  • Resumen por método de pago
  • Diferencia efectivo esperado vs real
  • Enviar resumen por WhatsApp

RF-002: Catálogo de Productos

RF-002.1: Gestión de Productos

  • Crear producto (nombre, precio, código de barras)
  • Editar producto
  • Eliminar/desactivar producto
  • Categorizar productos
  • Foto del producto (opcional)
  • Precio de compra (para calcular margen)

RF-002.2: Importación de Productos

  • Desde foto (OCR de lista de precios)
  • Desde archivo Excel/CSV
  • Desde templates predefinidos (Bimbo, Coca-Cola, etc.)
  • Desde audio (transcripción y procesamiento IA)
  • Copia de otro negocio similar (con permiso)

RF-002.3: Templates de Proveedores

  • Bimbo: Pan, galletas, pastelitos
  • Coca-Cola/FEMSA: Refrescos, jugos, agua
  • PepsiCo: Sabritas, Gamesa, bebidas
  • Modelo/Corona: Cervezas (donde aplique)
  • Ricolino: Dulces, chocolates
  • Genéricos: Productos básicos de abarrotes
  • Giros específicos: Taquería, fonda, nevería

RF-002.4: Variantes y Presentaciones

  • Mismo producto, diferentes tamaños
  • Precios por presentación
  • Código de barras por variante

RF-003: Inventario

RF-003.1: Control de Stock

  • Stock actual por producto
  • Stock mínimo configurable
  • Alertas de stock bajo (WhatsApp y push)
  • Historial de movimientos

RF-003.2: Entradas de Inventario

  • Registro de compras a proveedor
  • Entrada desde foto de nota/factura (OCR)
  • Ajustes manuales (merma, robo, etc.)

RF-003.3: Predicción de Resurtido

  • Análisis de ventas históricas
  • Sugerencia de cuánto comprar
  • Alertas proactivas: "En 3 días se te acaba la Coca"

RF-004: Sistema de Fiados/Crédito

RF-004.1: Registro de Fiados

  • Fiar a cliente identificado
  • Monto máximo de crédito por cliente
  • Fecha límite de pago (opcional)
  • Notas del fiado

RF-004.2: Gestión de Cobros

  • Lista de fiados pendientes por cliente
  • Total de fiados del negocio
  • Marcar como pagado (parcial o total)
  • Recordatorios automáticos por WhatsApp al cliente

RF-004.3: Historial

  • Historial de fiados por cliente
  • Clientes morosos
  • Reporte de fiados

RF-005: Clientes

RF-005.1: Registro de Clientes

  • Nombre, teléfono (WhatsApp)
  • Dirección (para entregas)
  • Notas
  • Registro automático desde WhatsApp

RF-005.2: Historial de Cliente

  • Compras realizadas
  • Fiados pendientes y pagados
  • Productos frecuentes
  • Total gastado

RF-005.3: Comunicación

  • Enviar mensaje por WhatsApp
  • Notificaciones de promociones
  • Recordatorios de fiado

RF-006: Pedidos de Clientes

RF-006.1: Recepción de Pedidos

  • Cliente envía pedido por WhatsApp
  • LLM interpreta y estructura el pedido
  • Notificación push al dueño
  • Vista de pedidos pendientes

RF-006.2: Procesamiento

  • Aceptar/rechazar pedido
  • Modificar pedido
  • Confirmar disponibilidad de productos
  • Calcular total

RF-006.3: Cobro de Pedido

  • Link de pago (Stripe)
  • Pago presencial con terminal
  • Pago en efectivo al entregar
  • CoDi

RF-006.4: Entregas a Domicilio

  • Marcar pedido como "para entrega"
  • Dirección del cliente
  • Costo de envío configurable
  • Estado: preparando, en camino, entregado

RF-007: Asistente IA (LLM)

RF-007.1: Canales de Comunicación

  • WhatsApp (principal)
  • Chat in-app
  • Comandos de voz (futuro)

RF-007.2: Capacidades para Dueño del Negocio

  • Consultar ventas: "¿Cuánto vendí hoy/esta semana/este mes?"
  • Consultar ganancias: "¿Cuál es mi utilidad de hoy?"
  • Consultar inventario: "¿Cuántas Coca-Colas tengo?"
  • Alertas: "¿Qué me falta por resurtir?"
  • Predicciones: "¿Cuándo debo comprar más pan?"
  • Registrar venta por chat: "Vendí 2 refrescos y una torta"
  • Agregar producto: "Agrega un producto nuevo: Doritos a $18"
  • Generar reportes: "Mándame el reporte de la semana"
  • Configurar: "Cambia el precio de la Coca a $22"

RF-007.3: Capacidades para Clientes

  • Identificación: Detectar que es cliente (no dueño)
  • Consultar productos: "¿Tienen refrescos?"
  • Hacer pedido: "Quiero 3 tacos y una Coca"
  • Preguntar precios: "¿A cómo el kilo de tortilla?"
  • Estado de pedido: "¿Ya está mi pedido?"
  • Horarios: "¿A qué hora abren?"

RF-007.4: MCP Server - Herramientas

TOOLS DISPONIBLES:

# Ventas
- registrar_venta(productos, metodo_pago, cliente?)
- obtener_ventas(periodo, filtros?)
- generar_corte_caja()
- calcular_ganancias(periodo)

# Productos
- buscar_producto(query)
- crear_producto(datos)
- actualizar_producto(id, datos)
- obtener_precio(producto)

# Inventario
- consultar_stock(producto?)
- registrar_entrada(productos)
- obtener_alertas_stock()
- predecir_resurtido(producto?)

# Clientes
- buscar_cliente(telefono)
- crear_cliente(datos)
- historial_cliente(cliente_id)
- enviar_mensaje_cliente(cliente_id, mensaje)

# Fiados
- registrar_fiado(cliente_id, monto, descripcion)
- obtener_fiados(cliente_id?)
- marcar_fiado_pagado(fiado_id, monto?)

# Pedidos
- crear_pedido(cliente_id, productos)
- obtener_pedidos(estado?)
- actualizar_pedido(pedido_id, estado)
- enviar_link_pago(pedido_id)

# Reportes
- generar_reporte(tipo, periodo, formato)
- enviar_reporte_whatsapp(reporte, destino)
- exportar_excel(datos)

# Configuración
- obtener_configuracion(clave?)
- actualizar_configuracion(clave, valor)
- obtener_horarios()
- actualizar_horarios(horarios)

RF-008: WhatsApp Business

RF-008.1: Configuración de Número

  • Opción A: WhatsApp Business propio del negocio

    • Conexión vía Meta Business API
    • Verificación del número
  • Opción B: Número compartido de la plataforma

    • Un número para múltiples negocios
    • Detección de negocio por contexto
    • "Hola, busco [Nombre Negocio]"

RF-008.2: Detección de Rol

  • Identificar si es dueño o cliente
  • Dueño: Acceso completo a gestión
  • Cliente: Solo consultas y pedidos

RF-008.3: Mensajes Automatizados

  • Bienvenida
  • Fuera de horario
  • Confirmación de pedido
  • Recordatorio de fiado
  • Alertas de inventario

RF-008.4: Multimedia

  • Recibir y procesar fotos (OCR)
  • Recibir y transcribir audios
  • Enviar tickets/reportes como imagen
  • Enviar documentos PDF

RF-009: Pagos y Suscripciones

RF-009.1: Suscripción del Negocio

  • Plan Changarrito ($99/mes)
  • Plan Tiendita ($199/mes)
  • Cambio de plan
  • Cancelación

RF-009.2: Métodos de Pago de Suscripción

  • Tarjeta (Stripe) - Recurrente
  • OXXO (Stripe) - Referencia única
  • Play Store In-App Purchase
  • App Store In-App Purchase

RF-009.3: Paquetes de Tokens IA

  • Compra de paquetes
  • Visualización de saldo
  • Historial de consumo
  • Alertas de saldo bajo

RF-009.4: Facturación (Opcional)

  • Solicitar factura
  • Datos fiscales del negocio
  • Descarga de facturas

RF-010: Reportes y Analytics

RF-010.1: Dashboard Web

  • Ventas del día/semana/mes
  • Gráficas de tendencia
  • Productos más vendidos
  • Comparativas de periodos

RF-010.2: Reportes Generables

  • Ventas por periodo
  • Inventario actual
  • Productos por agotarse
  • Fiados pendientes
  • Ganancias y márgenes
  • Cortes de caja históricos

RF-010.3: Formatos de Exportación

  • PDF
  • Excel
  • Imagen (para WhatsApp)

RF-011: Notificaciones

RF-011.1: Push Notifications

  • Nuevo pedido de cliente
  • Fiado por vencer
  • Stock bajo
  • Pago recibido

RF-011.2: WhatsApp

  • Resumen diario de ventas
  • Alertas de inventario
  • Recordatorios configurables

RF-011.3: Configuración

  • Activar/desactivar por tipo
  • Horarios de no molestar
  • Frecuencia

RF-012: Modo Offline

RF-012.1: Funcionalidad Sin Internet

  • Registrar ventas
  • Consultar productos y precios
  • Agregar productos al carrito
  • Ver historial local

RF-012.2: Sincronización

  • Automática al recuperar conexión
  • Manual forzada
  • Resolución de conflictos
  • Indicador de datos pendientes

RF-013: Integraciones de Terminal

RF-013.1: Mercado Pago

  • Pareado Bluetooth con terminal
  • Envío de monto a cobrar
  • Recepción de confirmación
  • Manejo de errores/rechazos

RF-013.2: Clip

  • Pareado Bluetooth con terminal
  • Envío de monto a cobrar
  • Recepción de confirmación
  • Manejo de errores/rechazos

RF-013.3: CoDi

  • Generación de QR
  • Polling de confirmación
  • Timeout y reintentos

RF-014: Onboarding

RF-014.1: Registro de Negocio

  • Nombre del negocio
  • Giro (abarrotes, comida, etc.)
  • Ubicación (colonia, ciudad)
  • Teléfono del dueño

RF-014.2: Configuración Inicial Guiada

  • Vía WhatsApp con LLM
  • Paso a paso en app
  • Cargar productos iniciales
  • Seleccionar templates

RF-014.3: Tutorial

  • Primeros pasos interactivo
  • Videos cortos
  • Tips por WhatsApp los primeros días

RF-015: Seguridad y Acceso

RF-015.1: Autenticación

  • Login con teléfono + OTP (SMS/WhatsApp)
  • PIN de acceso rápido
  • Biométrico (huella/face)

RF-015.2: Roles (Futuro)

  • Dueño: Acceso total
  • Empleado: Solo ventas
  • Contador: Solo reportes

RF-015.3: Datos

  • Encriptación en tránsito (HTTPS)
  • Encriptación en reposo
  • Backups automáticos

RF-016: Programa de Referidos

RF-016.1: Mecánica

  • Código/link único por negocio
  • Beneficio por referido: 1 mes gratis (ambos)
  • Tracking de referidos

RF-016.2: Comunicación

  • Compartir por WhatsApp
  • Ver referidos activos
  • Historial de beneficios

RF-017: Soporte

RF-017.1: Autoservicio

  • FAQ en app
  • Videos tutoriales
  • Asistente IA para dudas

RF-017.2: Humano (Escalación)

  • Chat con soporte (cuando IA no resuelve)
  • Teléfono de emergencia
  • Horario de atención

Versión: 1.0.0 Última actualización: 2026-01-04