de Bodega UniM
Roles del Sistema
El sistema cuenta con varios tipos de usuario, cada uno con acceso a módulos específicos según su función en la empresa.
🏭 Operario de Bodega
Personal físico de la bodega. Ejecuta los procesos de recepción, picking, toma física, envío a eventos y retorno de artículos.
💼 Agente de Ventas
Gestiona eventos, crea y configura los artículos planificados para cada evento. Accede al módulo de eventos con su email corporativo.
🛡️ Supervisor de Bodega
Responsable del control de inventario. Es el único rol autorizado para registrar ajustes manuales y dar de baja unidades físicas serializadas.
🔑 Administrador
Mantiene actualizado el catálogo de productos: publicación, precios, identificación, descripciones y fotos.
| Módulo | Operario | Agente | Supervisor | Admin. |
|---|---|---|---|---|
Ingreso de Mercadería /ingreso/ | ✅ Completo | — | — | — |
Picking / Alistamiento /pickingdev/ | ✅ Completo | — | — | — |
Toma Física /tomafisica/ | ✅ Completo | — | — | — |
Eventos — Gestión /eventos/ | Escaneo / Alistar / Envío / Retorno | ✅ Crear / Gestionar | — | — |
Consulta /consulta/ | ✅ Lectura | ✅ Lectura | ✅ Lectura | ✅ Lectura |
Ajustes de Inventario /ajustes/ | — | — | ✅ Completo | — |
Mantenimientos /mantenimiento/ | — | — | Solo Ubicaciones | ✅ Completo |
Credenciales de Acceso
| Rol | Usuario / Email | Contraseña | Módulos |
|---|---|---|---|
| Operario Carlos Vega | cvega | Bodega2025 | Ingreso, Picking, Toma Física, Eventos |
| Operario Diana Cruz | dcruz | Bodega2025 | Ingreso, Picking, Toma Física, Eventos |
| Operario Marcos Solís | msolis | Bodega2025 | Ingreso, Picking, Toma Física, Eventos |
| Agente José Martínez | nextcoventas1@gmail.com | next | Eventos (gestión) |
| Agente Ana López | nextcoventas3@gmail.com | next | Eventos (gestión) |
| Supervisor María González | mgonzalez | Sup2025 | Ajustes de Inventario, Consulta |
| Supervisor Luis Herrera | lherrera | Sup2025 | Ajustes de Inventario, Consulta |
Flujo General de Procesos
Los artículos recorren el siguiente ciclo dentro del sistema, desde que llegan de un proveedor hasta que son vendidos o despachados a un evento:
Recepción de Mercadería
👷 Operario de BodegaProceso de ingreso físico de productos enviados por un proveedor, verificando cantidades contra la orden de compra registrada en el sistema.
Acceso al Módulo
Desde cualquier navegador (preferiblemente móvil) acceder a:
Paso a Paso
Pantalla 1: Login con usuario de operario.
Pantalla 2: Lista de órdenes de compra activas. El operario selecciona la orden correspondiente al proveedor que llega.
/ingreso/ en el navegador del dispositivo. Ingresar el nombre de usuario y contraseña de operario (ej: cvega / Bodega2025).OC-2025-003).Reporte de Diferencias
Al finalizar, el sistema compara lo recibido contra lo esperado y muestra el reporte:
| Artículo | Esperado | Recibido | Diferencia |
|---|---|---|---|
| Aceite Motor 5W-30 1L | 24 | 24 | ✓ Sin diferencia |
| Filtro de Aceite Toyota | 12 | 10 | −2 (faltante) |
| Bujía NGK Premium | 8 | 8 | ✓ Sin diferencia |
Almacenamiento y Ubicación
👷 Operario de BodegaEl almacenamiento es parte integral del proceso de recepción. El sistema registra en qué ubicación física se colocó cada artículo.
Estructura de Códigos de Ubicación
Los códigos de ubicación siguen el formato Edificio – Piso – Estante – Nivel:
| Código | Descripción | Zona |
|---|---|---|
| 1-1A1 | Edificio 1, Piso 1, Estante A, Nivel 1 | Lubricantes |
| 1-1A3 | Edificio 1, Piso 1, Estante A, Nivel 3 | Filtros |
| 1-1A5 | Edificio 1, Piso 1, Estante A, Nivel 5 | Encendido |
| 1-1B1 | Edificio 1, Piso 1, Estante B, Nivel 1 | Enfriamiento |
| 1-1B4 | Edificio 1, Piso 1, Estante B, Nivel 4 | Frenos |
| 1-1C1 | Edificio 1, Piso 1, Estante C, Nivel 1 | Eléctrico |
Unidades de Almacenaje vs. Unidades de Distribución
El sistema maneja dos tipos de códigos para el mismo artículo:
| Tipo | Código | Acción al escanear | Ejemplo |
|---|---|---|---|
| Unidad individual | ACE-5W30-1L | +1 litro | Un litro de aceite suelto |
| Caja / Paquete | ACE-5W30-1L-BOX | +12 litros | Caja con 12 litros |
Gestión de Inventario — Toma Física
👷 Operario de BodegaProceso de conteo físico de todos los artículos en bodega para detectar diferencias entre el inventario real y el registrado en el sistema. Se recomienda realizarla mensualmente o cuando se sospeche de pérdidas.
Acceso al Módulo
Paso a Paso
Picking — Alistamiento de Pedidos
👷 Operario de BodegaProceso de recolección de artículos desde la bodega para preparar un pedido de cliente. El operario recibe una lista de artículos con ubicaciones y cantidades.
Acceso al Módulo
Pantalla 1: Lista de pedidos asignados al operario. Los pedidos en progreso aparecen primero.
Pantalla 2: Escaneo de artículos. Se ve cuántas unidades se han tomado del total requerido.
Paso a Paso
/pickingdev/ e ingresar con usuario de operario. Se muestra la lista de pedidos asignados con estado: pendiente o en progreso.Despacho y Venta
👤 Agente + SistemaUna vez que el picking de un pedido está completado, el artículo está listo para ser entregado al cliente. Este proceso conecta la bodega con la tienda online.
✅ Pedido Picking Completado
El operario marcó todas las líneas del pedido como completadas. Los artículos están físicamente separados y listos para despacho.
🚚 Despacho al Cliente
El agente o encargado de despacho entrega los artículos al cliente o los envía con el transportista. El pedido se marca como entregado en el sistema de ventas.
Estados de un Pedido
| Estado de Picking | Significado | Acción Siguiente |
|---|---|---|
| Pendiente | No se ha iniciado el alistamiento | Asignar a un operario |
| En progreso | El operario está alistando el pedido | Esperar a que finalice |
| Completado | Todos los artículos están listos | Despachar al cliente |
/). Al procesarse el pago, el pedido aparece automáticamente en el módulo de picking para que el operario lo aliste. No es necesario ingresar el pedido manualmente.Ciclo de Eventos
💼 Agente + 👷 OperarioLos artículos pueden salir de la bodega hacia eventos externos (ferias, exposiciones), moverse entre eventos sin regresar a bodega, y finalmente retornar. Cada movimiento actualiza el stock y queda registrado en el historial. Entre la planificación (6A) y la salida física (6C) hay una etapa obligatoria de Alistar (6B) — el picking del evento — que debe completarse antes de poder despachar.
Los 3 Flujos del Ciclo
Impacto en Stock por Flujo
| Flujo | Stock en bodega | Estado unidad física | Registro creado |
|---|---|---|---|
| 6C — Salida Bodega → Evento |
−N unidades Se descuenta del stock disponible |
dispatched |
event_movement tipo salida |
| 6D — Transferencia Evento A → Evento B |
Sin cambio El artículo ya salió de bodega en 6C |
dispatched (sin cambio) |
event_movement tipo transfer_out en origen + transfer_in en destino |
| 6E — Retorno Evento → Bodega |
+N unidades Se suma de vuelta al stock |
in_warehouse (nueva ubicación) |
event_movement tipo retorno + stock_movement tipo ingreso |
Acceso al Módulo
6A. Crear y Configurar un Evento (Agente)
💼 Agente de VentasPantalla 1: Formulario de creación del evento con todos los datos de contacto y fechas.
Pantalla 2: Lista de artículos planificados con cantidades. El agente activa el evento cuando está listo.
/eventos/ con el email y contraseña de agente (ej: nextcoventas1@gmail.com / next).6B. Alistar — Picking del Evento
👷 Operario de BodegaAntes de poder despachar el evento, el sistema exige que los artículos planificados sean alistados físicamente — el mismo proceso de picking descrito en la sección 4, pero generado automáticamente para el evento. Esta etapa aparece como la tarjeta "Alistar", entre Planificar y Enviar, en el detalle del evento.
/pickingdev/ con el pedido de picking del evento ya seleccionado, listo para escanear.6C. Salida — Bodega → Evento
👷 Operario de Bodega📉 Qué cambia en stock
El stock disponible del artículo disminuye en la cantidad enviada. El artículo queda marcado como en evento — no disponible para picking ni para otro evento.
📦 Unidades serializadas
Si el artículo tiene trazabilidad, el estado de cada unidad física cambia a dispatched. Su código de barras único queda vinculado al evento.
/eventos/, ingresar con usuario de operario (ej: cvega). Ver la lista de eventos activos asignados.6D. Transferencia — Evento A → Evento B
👷 Operario de BodegaCuando un artículo necesita moverse de un evento a otro sin regresar a bodega. Útil cuando el artículo está en una feria que cierra y se manda directo a la siguiente.
📊 Qué cambia en stock
Nada en bodega. El artículo ya fue descontado al salir en 6C. Solo cambia en qué evento está registrado: sale del Evento A y entra al Evento B.
📋 Registros creados
Dos entradas en event_movements: transfer_out en el evento origen y transfer_in en el evento destino. La unidad física sigue con estado dispatched.
La transferencia requiere 4 pasos: seleccionar el artículo del evento origen, elegir el evento destino, indicar la cantidad y escanear el artículo físico para confirmar.
6E. Retorno — Evento → Bodega
👷 Operario de BodegaCuando el evento finaliza, los artículos que no se vendieron regresan a la bodega. El proceso es similar a una recepción de proveedor: se escanea cada artículo, se asigna la ubicación de destino y el sistema incrementa el stock.
📈 Qué cambia en stock
El stock disponible en bodega aumenta por cada unidad retornada. Si retornan 10 unidades, el stock sube 10. Las unidades no retornadas (vendidas/extraviadas) quedan como diferencia a justificar.
📍 Ubicación actualizada
Cada artículo retornado puede guardarse en una ubicación diferente a la original. El operario escanea la estantería de destino y el sistema actualiza la ubicación del producto.
El retorno sigue el mismo flujo que la recepción de proveedor:
- Escanear el artículo físico
- Escanear la estantería de destino
- El sistema suma el stock y actualiza la ubicación
- Repetir hasta procesar todos los que regresan
location del producto con la nueva estantería.6F. Reporte de Diferencias y Cierre del Evento
💼 Agente + 👷 OperarioAl finalizar el retorno, el sistema compara lo enviado contra lo retornado. Las diferencias deben ser justificadas antes de cerrar el evento.
| Artículo | Enviado | Retornado | Diferencia | Justificación |
|---|---|---|---|---|
| Anticongelante Verde 1L | 24 | 22 | −2 | Vendido en evento |
| Pastillas de Freno Del. | 6 | 4 | −2 | Vendido en evento |
| Cinta Vulcanizante | 12 | 12 | ✓ | — |
Justificaciones Disponibles
| Código | Justificación | Descripción |
|---|---|---|
VENDIDO | Vendido en evento | El artículo fue vendido durante el evento |
DANIADO | Artículo dañado | El artículo sufrió daños y no puede regresar |
EXTRAVIADO | Artículo extraviado | El artículo no fue localizado al cierre del evento |
DEVUELTO | Devuelto a proveedor | El artículo fue devuelto directamente al proveedor |
SOBRANTE | Sobrante de evento | Se recibieron más unidades de las enviadas |
OTRO | Otro motivo | Ver campo de notas |
Módulo de Consulta
👤 Cualquier usuarioPermite buscar artículos por código de barras para consultar stock, ubicación y si el artículo está actualmente en un evento.
Información disponible por artículo
📊 Stock actual
Cantidad disponible en bodega según el sistema.
📍 Ubicación en bodega
Código de estante donde se encuentra el artículo.
📅 En evento
Si está activo en un evento, muestra el nombre del evento y cuántas unidades están fuera.
📋 Historial de movimientos
Últimos ingresos, salidas y ajustes de inventario del artículo.
Ajustes de Inventario
🛡️ Solo SupervisoresPermite registrar correcciones manuales al inventario de unidades físicas serializadas. Cada ajuste queda registrado en la bitácora de la unidad con fecha, hora, supervisor responsable y motivo.
Acceso al Módulo
¿Qué es la bitácora?
Cada unidad física serializada tiene un código de barras único (formato XXXXXX.YYYYYY) que permite rastrear su ciclo de vida completo:
| Tipo de movimiento | Color | Cuándo ocurre |
|---|---|---|
| Ingreso | ● Verde | Cuando se recibe la unidad en bodega (proceso de recepción) |
| Cambio de ubicación | ● Azul | Cuando se mueve físicamente a otra estantería |
| Despacho | ● Amarillo | Cuando la unidad sale por una venta o picking |
| Partición (split) | ● Morado | Cuando se divide una caja o paquete en unidades menores |
| Ajuste manual | ● Naranja | Corrección registrada por un supervisor |
Tipos de Ajuste Disponibles
🚫 Dar de baja
Retira la unidad del inventario activo. El estado cambia a Dado de baja (invalidado). No puede revertirse — si fue un error, contactar al administrador.
📍 Cambiar ubicación
Actualiza el código de estantería registrado en el sistema para reflejar el movimiento físico de la unidad.
🔄 Corrección de estado
Cambia el estado registrado de la unidad cuando el sistema no refleja la realidad (ej: aparece como despachada pero está en bodega).
💬 Solo observación
Registra una nota en la bitácora sin modificar ningún dato. Útil para documentar incidencias o hallazgos durante inspección.
🏷️ Etiqueta dañada
La unidad sigue en bodega tal cual — no cambia su estado ni su código. Solo reimprime la misma etiqueta cuando llegó dañada, despegada o ilegible.
Mermar / Aumentar por cantidad y Reclasificar producto
Estos tres no se escanean primero — son botones aparte en la pantalla principal de Ajustes, antes de buscar ninguna unidad, porque no parten de un código ya conocido.
📉 Mermar por cantidad
Para cuando faltan unidades sin un código legible que escanear (ej. se perdieron las etiquetas). Se busca el producto por nombre y se indica cuántas unidades bajar — el sistema invalida las unidades con código más antiguas que haga falta.
📈 Aumentar por cantidad
El caso inverso: apareció más stock físico del que tiene el sistema y nunca se le puso etiqueta (conteo físico, devolución no registrada). Se busca el producto, se indica la cantidad encontrada, y el sistema genera e imprime una etiqueta nueva por cada unidad.
🔄 Reclasificar producto
Para cuando un artículo se ingresó o etiquetó como otro producto por error (ej. se registró "Máquina de humo" siendo en realidad "Máquina de vapor"). Se escanea la unidad mal identificada, se busca y elige el producto correcto, y el sistema invalida el código viejo, mueve el stock entre ambos productos, genera un código nuevo bajo el producto correcto y reimprime su etiqueta.
Paso a Paso
/ajustes/ e ingresar con credenciales de supervisor (ej: mgonzalez). El sistema muestra el chip de supervisor en el encabezado.XXXXXX.YYYYYY). El código está en la etiqueta pegada a la unidad.Mockup — Ficha de unidad y bitácora
Pantalla 1: Ficha de la unidad con su bitácora cronológica. El supervisor puede ver todo el historial antes de actuar.
Pantalla 2: Formulario de ajuste. El tipo y motivo son obligatorios; el botón de confirmar se activa solo cuando todo está completo.
Mantenimientos
🔑 Administrador 🔑 SupervisorPunto de entrada único a las tareas de mantenimiento del catálogo. Al ingresar se muestra un menú ("Mantenimientos") con tres opciones — Productos, Categorías y Ubicaciones — cada una habilitada según el permiso que tenga el usuario. Un Administrador ve las tres; un Supervisor sin el permiso "Mantenimiento" solo ve habilitada Ubicaciones (las otras dos aparecen atenuadas con "No tenés acceso con tu rol actual").
Acceso al Módulo
📦 Productos
Permite mantener actualizado el catálogo: publicar/despublicar productos, editar precios, identificación (nombre, slug, SKU, código base), descripciones, ubicación y la foto del producto — además de crear artículos nuevos desde cero.
Campos Editables
| Grupo | Campos |
|---|---|
| Estado | Publicado / Borrador — controla si el producto es visible en la tienda online |
| Identificación | Nombre, Slug (URL), SKU, Código base |
| Descripción | Descripción corta y descripción larga |
| Precios y costo | Precio regular, precio de oferta, costo de compra (interno, no visible al cliente) |
| Imagen | Foto principal del producto — se puede reemplazar subiendo un archivo nuevo |
Paso a Paso — Editar un Producto
/mantenimiento/, ingresar con un usuario que tenga el permiso "Mantenimiento" habilitado, y tocar la opción Productos en el menú de Mantenimientos.Esquinero o TRS-0001) y seleccionarlo de los resultados.Crear un Artículo Nuevo
Desde la pantalla de Productos, el botón "+ Nuevo artículo" abre un formulario con Categoría, Código, Artículo, Descripción, Ubicación, Precio de venta y Precio de oferta. Al elegir la categoría, el Código se sugiere solo (ver "Autonumérico" en la subsección Categorías) — la sugerencia queda editable, no es obligatorio usarla.
🏷️ Categorías
Permite crear, renombrar y eliminar categorías del catálogo, y fijar manualmente el prefijo de código que el autonumérico usa para esa categoría al crear artículos nuevos (en Mantenimiento o desde Ingreso).
Autonumérico — cómo se decide el prefijo
| Prioridad | Regla |
|---|---|
| 1️⃣ | Prefijo fijado a mano en esta pantalla (si existe, siempre gana) |
| 2️⃣ | El prefijo que la categoría ya viene usando en el catálogo (ej. 12 productos con JAR-000X → sugiere JAR) |
| 3️⃣ | Si la categoría es nueva y no tiene productos: las primeras 3 letras del nombre (sin tildes ni espacios) |
Eliminar una categoría
📍 Ubicaciones
Gestión de las ubicaciones físicas de bodega — mismo módulo de siempre (/ubicaciones/), ahora también accesible desde acá para quien tenga el permiso correspondiente. Permite:
| Acción | Detalle |
|---|---|
| Agregar | Una por una a mano, o importando varias de golpe desde un Excel (columnas Piso, Ubicación, Nivel) |
| Filtrar | Buscar una ubicación puntual dentro del listado completo |
| Imprimir etiquetas | Individual por ubicación, o todas de una — en tamaño Grande o Pequeña |
| Panel resumen | Total de ubicaciones, cuántas tienen productos y cuántas están vacías |
Configuración del Sistema
Activar / Desactivar Módulo de Eventos
El módulo de eventos puede desactivarse para periodos donde no se realizan eventos externos. Solo los agentes y administradores pueden cambiar esta configuración.
/eventos/ como agente → Tocar el ícono ⚖️ en el header → Al final de la pantalla de Justificaciones → Tocar el toggle "Módulo de Eventos: Activo/Inactivo".
Datos de Configuración en Archivos
| Archivo | Contenido |
|---|---|
config/events_config.json | Activación del módulo de eventos |
config/users.json | Usuarios del sistema con roles (agente, admin, etc.) |
config/category_include.json | Categorías visibles en la tienda |
config/price_overrides.json | Sobrecostos de precio por categoría |
Referencia Rápida
URLs del Sistema
| Módulo | URL | Usuario |
|---|---|---|
| ⊞ Menú Principal | /menu.html | Todos (punto de entrada) |
| Tienda Online | / | Clientes |
| Ingreso de Mercadería | /ingreso/ | Operarios |
| Ubicaciones (también accesible desde Mantenimientos) | /ubicaciones/ | Solo Supervisores |
| Impresión de Etiquetas | /etiquetas/ | Operarios + Supervisores |
| Picking / Alistamiento | /pickingdev/ | Operarios |
| Toma Física | /tomafisica/ | Operarios |
| Consulta de Artículos | /consulta/ | Todos |
| Módulo de Eventos | /eventos/ | Operarios + Agentes |
| Ajustes de Inventario | /ajustes/ | Solo Supervisores |
| Mantenimientos | /mantenimiento/ | Administradores (Productos + Categorías) y Supervisores (Ubicaciones) |
| Manual de Usuario | /manual/ | Todos |
Estados de los Procesos
| Proceso | Estado | Significado |
|---|---|---|
| Orden de Compra | Pendiente | Creada, aún no se ha recibido nada |
| En Progreso | Recepción iniciada, aún faltan artículos | |
| Completada | Todos los artículos recibidos y ubicados | |
| Evento | Borrador | En planificación, sin artículos enviados |
| Activo | Evento en curso, artículos pueden salir/retornar | |
| Completado | Evento cerrado con reporte de diferencias | |
| Pedido Picking | Pendiente | Esperando operario para alistar |
| En Progreso | Operario alistando artículos | |
| Completado | Listo para despacho, bloqueado |
Reglas de Negocio Importantes
stock_movements con fecha, hora, operario y tipo de movimiento.Contacto y Soporte
Agosto 2026 · Confidencial — Uso interno