Sistema de Gestión
de Bodega UniM
Manual completo de usuario para operarios de bodega, agentes de ventas y administradores del sistema.
📥 Ingreso 📦 Picking 📊 Inventario 📅 Eventos 🛒 Ventas 🛡️ Ajustes 🛠️ Mantenimientos
Versión 1.1  ·  Agosto 2026  ·  UniM Costa Rica

👤 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óduloOperarioAgenteSupervisorAdmin.
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

RolUsuario / EmailContraseñaMódulos
Operario Carlos VegacvegaBodega2025Ingreso, Picking, Toma Física, Eventos
Operario Diana CruzdcruzBodega2025Ingreso, Picking, Toma Física, Eventos
Operario Marcos SolísmsolisBodega2025Ingreso, Picking, Toma Física, Eventos
Agente José Martíneznextcoventas1@gmail.comnextEventos (gestión)
Agente Ana Lópeznextcoventas3@gmail.comnextEventos (gestión)
Supervisor María GonzálezmgonzalezSup2025Ajustes de Inventario, Consulta
Supervisor Luis HerreralherreraSup2025Ajustes 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:

1
Recepción de Mercadería
→
2
Almacenamiento en Bodega
→
3
Gestión de Inventario
→
4
Picking / Alistamiento
→
5
Despacho / Venta
/
6
Envío a Evento
ℹ️
Procesos 5 y 6 son paralelosLos artículos en inventario pueden ir a una venta (picking → despacho) o a un evento externo. Ambos caminos son independientes y están registrados en el sistema.

1 Recepción de Mercadería

👷 Operario de Bodega

Proceso de ingreso físico de productos enviados por un proveedor, verificando cantidades contra la orden de compra registrada en el sistema.

📋
Requisito previoEl agente o administrador debe haber creado previamente la Orden de Compra en el sistema con la lista de artículos y cantidades esperadas. El operario recibe físicamente la mercadería contra esa orden.

Acceso al Módulo

Desde cualquier navegador (preferiblemente móvil) acceder a:

http://[servidor]/woocommerce-app UniM/ingreso/

Paso a Paso

📥 Ingreso a Bodega
📥
Ingreso a Bodega
Operario de recepción
Usuario: cvega
Contraseña: ••••••
Ingresar
📋 Órdenes de Compra
Carlos Vega
En Progreso
OC-2025-002
En progreso
Almacenes León y Cía.
36/76 unidades
Pendientes
OC-2025-003
Pendiente
AutoParts Distribuidora S.A.
3 artículos · 64 unidades

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.

1
Ingresar al sistema
Abrir /ingreso/ en el navegador del dispositivo. Ingresar el nombre de usuario y contraseña de operario (ej: cvega / Bodega2025).
2
Seleccionar la Orden de Compra
La pantalla muestra las órdenes en progreso (prioridad) y las pendientes. Tocar la orden que corresponde al proveedor que está haciendo la entrega (ej: OC-2025-003).
3
Revisar el detalle de la orden
El sistema muestra la lista de artículos esperados con sus cantidades. Tocar "Iniciar recepción" para comenzar.
💡 Verificar con el proveedor que los artículos físicos coincidan con los de la lista antes de iniciar el escaneo.
4
Escanear código de ubicación
El sistema solicita primero la ubicación de bodega donde se almacenarán los artículos. Escanear el código QR/barras de la estantería (ej: 1-1A1). También se puede escribir manualmente.
5
Escanear artículos uno a uno
Una vez confirmada la ubicación, escanear el código de barras de cada artículo o caja. El sistema suma automáticamente las unidades.
📦 Código individual = +1 unidad    Código de caja = +N unidades según factor (ej: caja de 12 suma 12 de golpe)
6
Cambiar de ubicación si aplica
Si los artículos de la orden van a distintas estanterías, usar el botón "Cambiar ubicación" y escanear el siguiente código de estantería.
7
Finalizar la recepción
Al terminar de escanear, tocar "Finalizar recepción". El sistema genera automáticamente el reporte de diferencias.

Reporte de Diferencias

Al finalizar, el sistema compara lo recibido contra lo esperado y muestra el reporte:

ArtículoEsperadoRecibidoDiferencia
Aceite Motor 5W-30 1L2424✓ Sin diferencia
Filtro de Aceite Toyota1210−2 (faltante)
Bujía NGK Premium88✓ Sin diferencia
⚠️
Faltantes frecuentes Si el proveedor entrega menos de lo indicado en la orden, el faltante queda registrado. Contactar al proveedor para coordinar la entrega pendiente o la nota de crédito correspondiente.

2 Almacenamiento y Ubicación

👷 Operario de Bodega

El 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:

6-9A1    Edificio 6  Piso 9  Estante A  Nivel 1
CódigoDescripciónZona
1-1A1Edificio 1, Piso 1, Estante A, Nivel 1Lubricantes
1-1A3Edificio 1, Piso 1, Estante A, Nivel 3Filtros
1-1A5Edificio 1, Piso 1, Estante A, Nivel 5Encendido
1-1B1Edificio 1, Piso 1, Estante B, Nivel 1Enfriamiento
1-1B4Edificio 1, Piso 1, Estante B, Nivel 4Frenos
1-1C1Edificio 1, Piso 1, Estante C, Nivel 1Eléctrico
🏷️
Etiquetas de ubicación Cada estantería física debe tener su código QR o código de barras impreso. Si una ubicación no tiene código físico, se puede escribir manualmente en el campo de texto durante el proceso de recepción.

Unidades de Almacenaje vs. Unidades de Distribución

El sistema maneja dos tipos de códigos para el mismo artículo:

TipoCódigoAcción al escanearEjemplo
Unidad individualACE-5W30-1L+1 litroUn litro de aceite suelto
Caja / PaqueteACE-5W30-1L-BOX+12 litrosCaja con 12 litros
✅
El operario simplemente escanea lo que tiene en la mano — unidad suelta o caja completa — y el sistema convierte automáticamente a la unidad base. No se permiten cajas parciales: si quedan unidades sueltas de una caja abierta, se escanean una a una.

3 Gestión de Inventario — Toma Física

👷 Operario de Bodega

Proceso 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.

⚠️
Impacto en el sistema Al completar la toma física, el sistema ajusta automáticamente el stock a las cantidades contadas. Este proceso es irreversible — asegurarse de que el conteo sea correcto antes de confirmar.

Acceso al Módulo

http://[servidor]/woocommerce-app UniM/tomafisica/

Paso a Paso

1
Iniciar sesión de toma física
Ingresar con usuario de operario. Tocar "Nueva toma física" para iniciar una sesión. Se genera un ID de sesión que identifica este conteo.
2
Ir a la primera ubicación
Moverse físicamente al primer estante. Escanear o escribir el código de ubicación (ej: 1-1A1).
3
Escanear todos los artículos en esa ubicación
Escanear cada artículo o caja presente en ese estante. El sistema acumula el total. Al terminar esa ubicación, pasar a la siguiente.
💡 Escanear todos los artículos visibles — el sistema se encarga de identificar si son parte del inventario esperado o si hay artículos no registrados.
4
Recorrer todas las ubicaciones
Repetir el proceso por cada estante de la bodega. No es necesario seguir un orden específico, pero se recomienda ir sistemáticamente de A1 hacia C.
5
Finalizar y revisar el reporte
Al tocar "Finalizar toma física", el sistema compara el conteo contra el stock registrado y muestra el reporte de diferencias. Revisar cuidadosamente antes de confirmar.
6
Confirmar ajuste de inventario
Al confirmar, el stock del sistema se actualiza a los valores contados. Los ajustes quedan registrados en el historial de movimientos.

4 Picking — Alistamiento de Pedidos

👷 Operario de Bodega

Proceso 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

http://[servidor]/woocommerce-app UniM/pickingdev/
📦 Picking Bodega
Carlos Vega
Mis Pedidos
Pedido #1001
En progreso
José Martínez · 3 líneas
Pedido #1002
Pendiente
Ana González · 2 líneas
📦 #1001
1/3
Aceite Motor 5W-30 1L
SKU: ACE-5W30-1L
📍 1-1A1
2
Tomado
3
Total
1
Resta
Escanear artículo
📷
Código individual o caja

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

1
Ingresar al módulo de Picking
Abrir /pickingdev/ e ingresar con usuario de operario. Se muestra la lista de pedidos asignados con estado: pendiente o en progreso.
2
Seleccionar un pedido
Tocar el pedido para ver el detalle: lista de artículos, cantidades requeridas y las ubicaciones donde están en bodega. Continuar con el primer artículo.
3
Ir a la ubicación indicada
Moverse físicamente al estante indicado. Escanear el código de la ubicación para confirmar que es el lugar correcto. Existe un botón "Saltar" si la ubicación no tiene código físico.
📍 Si la ubicación escaneada no coincide con la indicada, el sistema muestra una advertencia pero permite continuar.
4
Escanear el artículo
Escanear el código del artículo o de la caja. El sistema muestra el conteo actualizado. Repetir hasta completar la cantidad requerida.
⛔ El sistema bloquea automáticamente si se intenta escanear más unidades de las requeridas (sobrepicking). Esto es intencional y no se puede omitir.
5
Línea completada → siguiente artículo
Al completar la cantidad de un artículo, el sistema pasa automáticamente al siguiente. Si quedan líneas pendientes, repetir los pasos 3 y 4.
6
Pedido completado
Cuando todas las líneas están completas, el pedido se marca como Completado y queda bloqueado. El sistema vuelve automáticamente a la lista de pedidos.
🚫
Pedido bloqueado Un pedido marcado como completado no puede modificarse. Si se cometió un error, contactar al administrador del sistema para hacer el ajuste correspondiente.

5 Despacho y Venta

👤 Agente + Sistema

Una 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 PickingSignificadoAcción Siguiente
PendienteNo se ha iniciado el alistamientoAsignar a un operario
En progresoEl operario está alistando el pedidoEsperar a que finalice
CompletadoTodos los artículos están listosDespachar al cliente
🛒
Flujo con la Tienda Online Los pedidos se generan desde la tienda web (/). 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.

6 Ciclo de Eventos

💼 Agente + 👷 Operario

Los 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

🏭
Bodega
Stock completo
6C Salida →
← 6E Retorno
📅
Evento A
Artículos activos
6D Transfer →
📅
Evento B
Artículos activos

Impacto en Stock por Flujo

FlujoStock en bodegaEstado unidad físicaRegistro 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
ℹ️
Artículo exclusivo por evento Un artículo solo puede estar activo en un evento a la vez. Para moverlo a otro evento se usa la transferencia directa (6D) — no hace falta retornarlo a bodega primero.

Acceso al Módulo

http://[servidor]/woocommerce-app UniM/eventos/

6A. Crear y Configurar un Evento (Agente)

💼 Agente de Ventas
📅 Nuevo Evento
Nombre: Feria Automotriz 2025
Lugar: Palacio de los Deportes
Dirección: Calle 26, Ave 8-10
Inicio: 01/06
Fin: 03/06
Tel: +506 2222-5678
Guardar Evento
📦 Artículos del Evento
Escanear código del artículo...
En el evento
Aceite 5W-30 1L
ACE-5W30-1L · Plan: 15 unidades
Bujía NGK Premium
BUJ-NGK-001 · Plan: 20 unidades
Activar Evento

Pantalla 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.

1
Iniciar sesión como Agente
Ingresar a /eventos/ con el email y contraseña de agente (ej: nextcoventas1@gmail.com / next).
2
Crear el evento (botón +)
Tocar el botón "+" en la lista de eventos. Completar: nombre, lugar, dirección, fecha/hora de inicio y fin, teléfono de contacto.
3
Agregar artículos planificados
Desde la tarjeta "Planificar" del detalle del evento, tocar "+Artículos". Escanear (con lector o cámara 📷) o escribir el código de cada artículo y definir la cantidad planificada a llevar.
💡 Reparto por fecha: si varios eventos se cruzan en fechas y piden el mismo artículo, el sistema reparte el disponible (stock menos lo reservado) empezando por el evento que inicia primero. Lo que no alcance queda como faltante, se marca en naranja (⚠ "Faltan N") en la lista de eventos y en el detalle, y se completa solo cuando entra mercadería o se libera de otro evento.
💡 Calendario (📅): el ícono junto a cada artículo muestra, día por día, cuántas unidades están comprometidas en cada evento.
💡 Cambiar la cantidad: en la lista de artículos del evento, tocar el lápiz ✏️ y escribir la cantidad pedida. Si se reduce, lo que sobra se libera automáticamente (incluida la reserva del alisto) y pasa a los eventos que tenían faltantes. No puede quedar por debajo de lo ya enviado.
4
Activar el evento
Al estar lista la lista de artículos, tocar "Activar" (dentro de la tarjeta Planificar del detalle del evento). A partir de ese momento el operario puede iniciar el proceso de alistamiento.

6B. Alistar — Picking del Evento

👷 Operario de Bodega

Antes 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.

📦
Pedido de picking automático El sistema crea un pedido de picking vinculado al evento la primera vez que se toca la tarjeta "Alistar". Si el stock disponible es menor al planificado para algún artículo, la cantidad del pedido se reduce automáticamente y se muestra un aviso con el detalle.
1
Abrir la tarjeta "Alistar" del evento
Desde el detalle del evento activo, tocar la tarjeta "Alistar" y luego "Recojer productos".
2
El sistema abre el módulo de Picking
Se abre automáticamente /pickingdev/ con el pedido de picking del evento ya seleccionado, listo para escanear.
3
Recorrer ubicaciones y escanear cada artículo
Igual que un picking normal (ver sección 4): ir a la ubicación indicada, escanear el artículo, repetir hasta completar todas las líneas planificadas del evento.
4
Picking completado → se habilita Enviar
Al completar todas las líneas, la tarjeta "Alistar" queda marcada con un check verde y la tarjeta "Enviar" se habilita en el detalle del evento.
🚫
Enviar bloqueado sin alistamiento No se puede iniciar el despacho (6C — Salida) de un evento sin haber completado primero su alistamiento. Los eventos que ya estaban en curso antes de esta validación conservan acceso directo a Enviar como excepción, para no interrumpir procesos ya iniciados.

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.

1
Ingresar como operario al módulo de Eventos
En /eventos/, ingresar con usuario de operario (ej: cvega). Ver la lista de eventos activos asignados.
2
Seleccionar el evento y tocar "Enviar"
Abrir el evento activo y tocar el botón "Enviar". Se muestra la lista de artículos planificados con la cantidad a enviar y el progreso actual.
3
Escanear cada artículo al cargarlo al vehículo
Escanear el código de barras de cada unidad física a medida que se carga, con lector USB o tocando el ícono 📷 junto al campo para usar la cámara del dispositivo. El sistema lleva el conteo en tiempo real y actualiza el progreso por línea. Si se escaneó algo por error, se puede quitar la última unidad desde el resumen de despacho (ícono de basurero).
⛔ No se puede enviar más unidades de las planificadas. Si se necesitan más, el agente debe actualizar la cantidad planificada primero.
4
Confirmar el envío
Al terminar de cargar, tocar "Envío Completado". El sistema descuenta las unidades del stock de bodega y registra el movimiento de salida en el historial del evento.
✅
Después del envío Los artículos enviados aparecen en el módulo de Consulta como "En evento: [nombre del evento]". El stock de bodega ya no los contabiliza.

6D. Transferencia — Evento A → Evento B

👷 Operario de Bodega

Cuando 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.

⚠️
Requisito del evento destino El evento destino debe estar en estado Activo para poder recibir artículos. Si todavía está en Borrador, el agente debe activarlo primero.
🔄 Transferir Artículo
Paso 1 — Artículo
Aceite 5W-30 1L ✓
Disponibles en Evento A: 12 uds
Paso 2 — Evento destino
Feria Verde Heredia 2025 ▾
Paso 3 — Cantidad
Unidades a transferir: 5
Paso 4 — Confirmar
Escanear código del artículo...
Confirmar Transferencia

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.

📋
Trazabilidad Después de confirmar, el Evento A muestra el artículo con "X unidades transferidas" y el Evento B lo recibe como "X unidades recibidas por transferencia".
1
Abrir el evento origen y tocar "Transferir"
Desde el detalle del Evento A (el que tiene el artículo actualmente), tocar el botón "Transferir". Solo se muestra si el evento está activo.
2
Seleccionar el artículo a transferir
Tocar el artículo en la lista. Solo aparecen artículos con unidades disponibles — las que ya fueron enviadas y aún no retornaron.
3
Elegir el evento destino y la cantidad
Seleccionar el Evento B del desplegable (solo muestra eventos activos). Ingresar cuántas unidades se transfieren — no puede ser mayor a las disponibles en el evento origen.
4
Escanear el artículo para confirmar
Escanear el código de barras del artículo físico. El sistema valida que coincida con el artículo seleccionado y ejecuta la transferencia entre eventos.
✅ Tras confirmar: el Evento A descuenta las unidades y el Evento B las suma. El stock de bodega no cambia.

6E. Retorno — Evento → Bodega

👷 Operario de Bodega

Cuando 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.

↩️ Retorno del Evento
Feria Automotriz San José 2025
Escanear artículo que regresa
22
Retornados
5
Pendientes
27
Enviados
📷 Escanear artículo que regresa…
✓ Anticongelante Verde — 22/24 retornados
Ubic anterior: 1-1B1 · Restan: 2
Escanear ubicación de destino
📷 Código de estantería…
Puede ser diferente a la ubicación original

El retorno sigue el mismo flujo que la recepción de proveedor:

  1. Escanear el artículo físico
  2. Escanear la estantería de destino
  3. El sistema suma el stock y actualiza la ubicación
  4. Repetir hasta procesar todos los que regresan
💡
Si varios artículos van a la misma estantería, el sistema la recuerda para el siguiente escaneo — no es necesario escanearla cada vez.
1
Abrir el evento y tocar "Retorno"
Desde el detalle del evento activo, tocar "Retorno". Se muestra la lista de artículos enviados con el progreso: cuántos ya volvieron y cuántos están pendientes.
2
Escanear el artículo que regresa
Escanear el código de barras del artículo físico, con lector USB o tocando el ícono 📷 para usar la cámara. El sistema lo identifica, confirma que pertenece a este evento, y solicita la ubicación de bodega donde se almacenará.
3
Escanear la estantería de destino
Escanear el código de la estantería donde se guardará (ej: 1-1B1), con lector, cámara o escribiéndolo manualmente. El sistema actualiza la ubicación del artículo y suma las unidades al stock de bodega.
📍 La ubicación puede ser diferente a la original — el sistema actualiza el campo location del producto con la nueva estantería.
4
Repetir por cada artículo que regresa
Procesar todos los artículos que vuelven del evento. Cuando ya no haya más para procesar, tocar "Finalizar — Ver Diferencias".
💡 Los artículos que NO regresan (vendidos, extraviados, dañados) quedan automáticamente como diferencias en el reporte de cierre (sección 6F).
✅
Después del retorno Cada unidad retornada vuelve a aparecer en el módulo de Consulta como disponible en bodega, con la nueva ubicación. El stock del producto aumenta por la cantidad retornada.

6F. Reporte de Diferencias y Cierre del Evento

💼 Agente + 👷 Operario

Al finalizar el retorno, el sistema compara lo enviado contra lo retornado. Las diferencias deben ser justificadas antes de cerrar el evento.

ArtículoEnviadoRetornadoDiferenciaJustificación
Anticongelante Verde 1L2422−2Vendido en evento
Pastillas de Freno Del.64−2Vendido en evento
Cinta Vulcanizante1212✓—

Justificaciones Disponibles

CódigoJustificaciónDescripción
VENDIDOVendido en eventoEl artículo fue vendido durante el evento
DANIADOArtículo dañadoEl artículo sufrió daños y no puede regresar
EXTRAVIADOArtículo extraviadoEl artículo no fue localizado al cierre del evento
DEVUELTODevuelto a proveedorEl artículo fue devuelto directamente al proveedor
SOBRANTESobrante de eventoSe recibieron más unidades de las enviadas
OTROOtro motivoVer campo de notas
⚠️
Justificación obligatoria Toda diferencia (faltante o sobrante) debe tener una justificación seleccionada antes de poder cerrar el evento. El sistema no permite cerrar sin justificar todas las diferencias.
🔧
Gestión de justificaciones Las justificaciones disponibles las puede editar el agente desde la pantalla de configuración del módulo (icono ⚖️ en el header). Se pueden activar/desactivar y agregar nuevas según las necesidades de la empresa.

🔍 Módulo de Consulta

👤 Cualquier usuario

Permite buscar artículos por código de barras para consultar stock, ubicación y si el artículo está actualmente en un evento.

http://[servidor]/woocommerce-app UniM/consulta/

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 Supervisores

Permite 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 restringido Este módulo requiere credenciales de supervisor. Los operarios de bodega y agentes de ventas no tienen acceso. El login de supervisores es independiente del resto del sistema.

Acceso al Módulo

http://[servidor]/woocommerce-app UniM/ajustes/

¿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 movimientoColorCuándo ocurre
Ingreso● VerdeCuando se recibe la unidad en bodega (proceso de recepción)
Cambio de ubicación● AzulCuando se mueve físicamente a otra estantería
Despacho● AmarilloCuando la unidad sale por una venta o picking
Partición (split)● MoradoCuando se divide una caja o paquete en unidades menores
Ajuste manual● NaranjaCorrecció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.

Paso a Paso

1
Ingresar al módulo de Ajustes
Abrir /ajustes/ e ingresar con credenciales de supervisor (ej: mgonzalez). El sistema muestra el chip de supervisor en el encabezado.
2
Buscar la unidad
Escanear el código de barras único de la unidad física con la cámara, o escribirlo manualmente (formato XXXXXX.YYYYYY). El código está en la etiqueta pegada a la unidad.
💡 Si no se conoce el código, buscarlo en el módulo de Consulta filtrando por SKU o nombre del producto.
3
Revisar la ficha y bitácora
El sistema muestra el estado actual de la unidad (producto, ubicación, estado) y su historial completo en orden cronológico. Verificar que sea la unidad correcta antes de continuar.
4
Tocar "Registrar ajuste"
El botón solo está disponible si la unidad no ha sido dada de baja previamente. Las unidades ya invalidadas no pueden recibir más ajustes.
5
Seleccionar tipo y motivo
Elegir el tipo de ajuste (dar de baja, cambiar ubicación, corrección de estado, u observación) y luego el motivo específico. Ambos campos son obligatorios para los tipos que los requieren.
📋 Para "Dar de baja": Deterioro · Merma · Robo o Pérdida · Error de ingreso · Vencimiento
6
Confirmar el ajuste
El botón de confirmar se activa solo cuando todos los campos requeridos están completos. Al confirmar, el sistema actualiza la unidad y registra el movimiento en la bitácora de forma permanente.
⚠️
Los ajustes son permanentes No existe opción de "deshacer". Si se registró un ajuste por error, el supervisor debe crear un contra-ajuste con el motivo "Error de sistema" para documentar la corrección en la bitácora.

Mockup — Ficha de unidad y bitácora

🛡️ Ajustes
mgonzalez
📦
Válvula de presión 3/4"
AB1234.X7K9P2
En bodega 📍 1-1C4
Bitácora de movimientos
📥
Ingreso
2026-05-10 · Ernesto · OC-2026-042
📍
Cambio de ubicación
2026-05-14 · Carlos · 1-1C4
✏️ Registrar ajuste
✏️ Nuevo ajuste
Tipo de ajuste
🚫
Dar de baja
Retira del inventario activo
📍
Cambiar ubicación
Motivo
Deterioro ✓ Merma Robo
✅ Confirmar ajuste

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 🔑 Supervisor

Punto 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 restringido Requiere el permiso de módulo "Mantenimiento" (Productos y Categorías) o "Ubicaciones" (habitualmente Administrador y Supervisor respectivamente). Operarios y agentes no ven esta tarjeta en el menú principal.

Acceso al Módulo

http://[servidor]/woocommerce-app UniM/mantenimiento/

📦 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

GrupoCampos
EstadoPublicado / Borrador — controla si el producto es visible en la tienda online
IdentificaciónNombre, Slug (URL), SKU, Código base
DescripciónDescripción corta y descripción larga
Precios y costoPrecio regular, precio de oferta, costo de compra (interno, no visible al cliente)
ImagenFoto principal del producto — se puede reemplazar subiendo un archivo nuevo

Paso a Paso — Editar un Producto

1
Ingresar al módulo
Abrir /mantenimiento/, ingresar con un usuario que tenga el permiso "Mantenimiento" habilitado, y tocar la opción Productos en el menú de Mantenimientos.
2
Buscar el producto
Escribir en el buscador el nombre, SKU o código base del producto (ej: Esquinero o TRS-0001) y seleccionarlo de los resultados.
3
Editar los campos necesarios
Modificar estado, identificación, descripciones o precios. Los campos marcados con * son obligatorios.
4
Cambiar la foto (opcional)
Tocar sobre la imagen del producto y subir un archivo nuevo desde el dispositivo. La imagen anterior se reemplaza.
5
Guardar los cambios
Los cambios se reflejan de inmediato en la tienda online y en el resto de los módulos que muestran información del producto.
⚠️
Despublicar oculta el producto Un producto en estado "Borrador" no aparece en la tienda online ni se puede vender, pero conserva su stock y ubicación en bodega — sigue disponible para los demás procesos internos (ingreso, picking, eventos, etc.).

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.

💡
Este mismo formulario también se puede abrir sin salir de Ingreso de Mercadería: si se escribe un código que no existe en el catálogo, se abre automáticamente para crearlo al vuelo.

🏷️ 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

PrioridadRegla
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)
💡
El código sugerido siempre es editable — sirve como punto de partida, no se fuerza. Si se borra o se cambia a mano, elegir otra categoría después no lo vuelve a pisar.

Eliminar una categoría

🚫
No se puede eliminar una categoría que tenga productos asignados — hay que reasignar esos productos a otra categoría primero. El sistema avisa cuántos productos la están usando.

📍 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ónDetalle
AgregarUna por una a mano, o importando varias de golpe desde un Excel (columnas Piso, Ubicación, Nivel)
FiltrarBuscar una ubicación puntual dentro del listado completo
Imprimir etiquetasIndividual por ubicación, o todas de una — en tamaño Grande o Pequeña
Panel resumenTotal 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.

Pasos: Ingresar a /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".
⚠️
Al desactivar el módulo, los operarios y agentes no podrán acceder al módulo de eventos. Los datos existentes no se eliminan — se reactivarán cuando se vuelva a activar el módulo.

Datos de Configuración en Archivos

ArchivoContenido
config/events_config.jsonActivación del módulo de eventos
config/users.jsonUsuarios del sistema con roles (agente, admin, etc.)
config/category_include.jsonCategorías visibles en la tienda
config/price_overrides.jsonSobrecostos de precio por categoría

📋 Referencia Rápida

URLs del Sistema

MóduloURLUsuario
⊞ Menú Principal/menu.htmlTodos (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

ProcesoEstadoSignificado
Orden de CompraPendienteCreada, aún no se ha recibido nada
En ProgresoRecepción iniciada, aún faltan artículos
CompletadaTodos los artículos recibidos y ubicados
EventoBorradorEn planificación, sin artículos enviados
ActivoEvento en curso, artículos pueden salir/retornar
CompletadoEvento cerrado con reporte de diferencias
Pedido PickingPendienteEsperando operario para alistar
En ProgresoOperario alistando artículos
CompletadoListo para despacho, bloqueado

Reglas de Negocio Importantes

🚫
No se permiten cajas parciales durante ingreso o picking. Si quedan unidades sueltas de una caja abierta, se escanean individualmente.
🚫
Sobrepicking bloqueado: No se puede alistar más unidades de las solicitadas en el pedido.
🚫
Pedido completado = bloqueado: No se puede modificar un pedido marcado como completado.
⚠️
Artículo exclusivo en evento: Un mismo artículo no puede estar activo en dos eventos simultáneos. Transferirlo usando el proceso de transferencia.
⚠️
Diferencias deben justificarse: No es posible cerrar un evento con diferencias sin asignarles una justificación.
✅
Todos los movimientos quedan registrados en el historial de stock_movements con fecha, hora, operario y tipo de movimiento.
📷
Escaneo con cámara disponible: además del lector de código de barras USB, todos los campos de escaneo del sistema (Ingreso, Alistar/Picking, Planificar, Enviar y Retornar) tienen el ícono 📷 para escanear con la cámara del celular o tablet.
🌓
Tema oscuro/claro compartido: la preferencia de tema (☀️/🌙) es la misma en todos los módulos del sistema de bodega — se guarda una sola vez y aplica automáticamente al entrar a cualquier módulo.

Contacto y Soporte

📞
Para problemas técnicos o dudas sobre el sistema, contactar al administrador del sistema o al equipo de TI de UniM.
Manual de Usuario — Sistema DECA Bodega v1.1
Agosto 2026 · Confidencial — Uso interno