Visión General
📘 Manual del Sistema EMS
Sistema completo de gestión para supermercados. Control de inventario, ventas, facturación y más.
14
Módulos12
Tablas1
Asistente IA¿Qué es EMS?
Sistema de gestión empresarial
EMS es un sistema completo de gestión diseñado para supermercados en República Dominicana. Incluye todas las herramientas necesarias para administrar tu negocio.
Flujo Principal del Negocio
Cómo funciona el ciclo de operación
Estructura de Archivos
Organización del proyecto
Tecnologías Utilizadas
Stack tecnológico del sistema
| Componente | Tecnología | Versión |
|---|---|---|
| Backend | PHP | 7.2+ |
| Base de datos | EMSDB / MySQL | 11.8+ |
| Frontend | JavaScript Vanilla | ES6+ |
| Voz | Web Speech API | Nativo |
Módulo de Productos
Gestión del inventario
Tipos de Productos
Producto Simple
Un producto individual sin relación padre-hijo. Se vende directamente como unidad.
Producto Tipo Caja (Padre-Hijo)
Cuando compras por caja pero vendes por unidad. El sistema crea automáticamente dos productos relacionados:
Campos de Productos
Estructura de la tabla ems_products
| Campo | Tipo | Descripción |
|---|---|---|
id |
varchar(32) | Identificador único (ej: p_abc123) |
nombre |
varchar(255) | Nombre del producto |
precio |
decimal(10,2) | Precio de venta |
precio_compra |
decimal(10,2) | Costo de adquisición |
ganancia_unitaria |
decimal(10,2) | precio - precio_compra |
cantidad |
decimal(10,2) | Stock disponible |
cantidad_inicial |
decimal(10,2) | Stock cuando se registró |
es_caja |
tinyint(1) | 1 = es caja/padre, 0 = es unidad |
unidades_por_caja |
decimal(10,2) | Cuántas unidades trae la caja |
producto_padre_id |
varchar(32) | ID del producto padre (si es hijo) |
Sistema de Ofertas
Promociones y descuentos por cantidad
Cada producto puede tener una oferta activa con los siguientes campos:
| Campo | Ejemplo | Descripción |
|---|---|---|
offer_active |
1 | Oferta activa |
offer_qty |
3 | Cantidad para la oferta |
offer_price |
1,830.00 | Precio de la oferta |
offer_label |
3X1830 | Etiqueta visible |
Módulo de Inversiones
Registro de compras de mercancía
¿Qué es una Inversión?
Una inversión es el registro de una compra de mercancía. Cuando compras productos al proveedor, lo registras como inversión para que el sistema cree los productos y actualice el inventario.
Origen del Dinero
De dónde salió el dinero para la compra
| Origen | Descripción | Ejemplo |
|---|---|---|
| Capital del negocio | Dinero de las ganancias del supermercado | Usaste RD$ 5,000 de la caja |
| Dinero externo | Dinero que pusiste de tu bolsillo | Aportaste RD$ 10,000 personales |
| Mixto | Parte del negocio, parte externo | RD$ 3,000 caja + RD$ 7,000 personal |
Ejemplo de Inversión
Caso práctico paso a paso
Módulo de Ventas
Punto de venta - Venta Rápida
Venta Rápida - El HUB Central
Venta Rápida es el corazón del sistema. Todas las operaciones de venta pasan por aquí:
Facturas
→ Venta Rápida
Pedidos
→ Venta Rápida
Ofertas
→ Venta Rápida
Catálogo
→ Venta Rápida
Proceso de Venta
Pasos para completar una venta
1 Agregar productos al carrito
- Buscar producto por nombre
- Seleccionar cantidad
- Agregar al carrito
2 Información del cliente (opcional)
- Nombre del cliente
- Teléfono
- Método de entrega (Pickup/Delivery)
3 Procesar venta
- Seleccionar método de pago
- Confirmar la venta
4 El sistema automáticamente
- ✓ Resta cantidad del inventario
- ✓ Registra la venta en
ems_sales - ✓ Crea factura en
ems_invoices - ✓ Crea items en
ems_invoice_items - ✓ Actualiza cantidad de cajas (si aplica)
Sistema de Peso (Libras/Onzas)
Formato dominicano para productos por peso
Para productos que se venden por peso, el sistema usa el formato dominicano:
Módulo de Facturación
Generación de facturas electrónicas
Estructura de Facturas
Cada venta genera una factura con sus items relacionados:
Estados de Factura
Ciclo de vida de las facturas
| Estado | Badge | Descripción |
|---|---|---|
completada |
Completada | Venta finalizada y pagada |
pendiente |
Pendiente | En proceso de pago |
cancelada |
Cancelada | Factura anulada |
F-YYYYMMDD-XXXXXXEjemplo: F-20251223-abc123
Módulo de Pedidos
Gestión de solicitudes de compra
Un pedido es una solicitud de compra que aún no se ha procesado. Puede venir del catálogo público o crearse manualmente.
Métodos de Entrega
Opciones disponibles para el cliente
Pickup
Recoger en tienda
Delivery
Envío a domicilio
Módulo Financiero
Control de ingresos, gastos y totales
Ingresos
Dinero que entra (no ventas)
Gastos
Dinero que sale (no compras)
Inventario
Valor de la mercancía
Total
Valor del negocio
Cálculo del Total del Negocio
Fórmula para calcular el valor real
Módulo de Devoluciones
Gestión de productos devueltos
Cuando un cliente devuelve un producto, el sistema:
Módulo de Productos Dañados
Control de mercancía perdida o dañada
Cuando un producto se daña, vence o se pierde, hay que registrarlo para mantener el inventario correcto.
Sistema Progresivo de Pérdidas
Las pérdidas se deducen en este orden:
Super Elba - Asistente de Voz
Control por voz con tono dominicano
Super Elba es un asistente de voz integrado que permite interactuar con el sistema de forma natural y cariñosa.
Activación
- Hacer clic en el botón del micrófono 🎤
- Decir "Super Elba" (wake word)
- Dar el comando
Comandos Disponibles
Frases que Super Elba entiende
Agregar Productos
Consultar Precios
Control del Carrito
Información del Cliente
Características Especiales
Lo que hace única a Super Elba
Tono Dominicano
"Claro mi amor" 💕
Saludo por Hora
Buenos días/tardes/noches
Búsqueda Inteligente
"bruga" → "brugal"
Opciones Numeradas
"Dime 1, 2 o 3"
"Claro mi amor" • "Con mucho gusto, corazón" • "Enseguida, mi vida" • "¿Algo más, cariño?"
Sistema de Usuarios
Roles y permisos
| Rol | Permisos | Acciones |
|---|---|---|
| admin | Acceso completo | Todo el sistema |
| empleado | Limitado | Solo ventas y consultas |
Acciones Restringidas (Solo Admin)
Funciones que requieren permisos de administrador
Tablas de la Base de Datos
Estructura completa del sistema
| Tabla | Descripción | Registros típicos |
|---|---|---|
ems_products |
Productos del inventario | ~50-500 |
ems_sales |
Registro de ventas | Miles |
ems_investment |
Compras de mercancía | ~50-200 |
ems_invoices |
Facturas generadas | Miles |
ems_invoice_items |
Items de cada factura | Miles |
ems_orders |
Pedidos | Cientos |
ems_income |
Ingresos extra | Pocos |
ems_expenses |
Gastos | Decenas |
ems_returns |
Devoluciones | Pocos |
ems_damaged |
Productos dañados | Pocos |
ems_totals |
Total del negocio | 1 |
ems_users |
Usuarios del sistema | ~3-10 |
Diagrama de Relaciones
Cómo se conectan las tablas
Fórmulas y Cálculos
Todas las fórmulas matemáticas del sistema
Productos
Ventas
Ofertas
Peso (Libras/Onzas)
Total del Negocio
Buenas Prácticas
Recomendaciones para usar el sistema
Resolución de Problemas
Soluciones a problemas comunes
| Problema | Solución |
|---|---|
| Producto no aparece | Verificar que se registró la inversión |
| Total incorrecto | Ejecutar reset_totals |
| Cantidad negativa | Revisar devoluciones y productos dañados |
| Super Elba no responde | Verificar permisos del micrófono |
| Error 500 en API | Revisar logs de PHP y sintaxis |