Documentación de arquitectura para UX/UI y desarrollo
Describe los 14 módulos del sistema, cómo se conectan, por qué se conectan,
qué errores pueden ocurrir en cada integración y qué casos quedan pendientes de definir.
● Digital / Comercial● Operativo● Calidad / Mantenimiento● Financiero / RR.HH● Tecnología● BI / Inteligencia● Núcleo / Admin
Mapa del ecosistema
Todos los módulos organizados por capa funcional. Hacé clic en cualquier módulo para ir a su documentación detallada.
Reportes / BIDashboard · KPIs · Alertas
AdministraciónUsuarios · Permisos · Config
Capa digital / comercial
VentasPedidos · Cotizaciones
CRMClientes · Pipeline
EcommerceTienda · Pedidos web
IT & SoporteTickets · Infra · Garantías
Capa operativa
InventarioStock · Entradas · Salidas
ProducciónÓrdenes · Materiales
LogísticaEnvíos · Tracking · Remito
Control de calidadInspección · NC · Lotes
MantenimientoMáquinas · OT · Preventivo
Capa financiero / personas
FinanzasContabilidad · Caja · Cobros
ContaduríaDocumentos · Facturas · Auditoría
RR.HHPersonal · Liquidaciones
Para UX/UI — leer primero
Las capas no son jerarquías de autoridad sino de abstracción de datos.
BI consume de todos pero no manda sobre nadie. Administración configura permisos pero no opera datos de negocio.
Esto define qué módulos deben ser accesibles desde la nav principal y cuáles son sub-secciones.
Flujo operativo principal
El ciclo de vida de una venta: desde que entra el pedido hasta que queda registrado el cobro y los datos llegan al BI.
PedidoVentas / CRM / Web
Origen: vendedor, ecommerce o CRM. Genera una orden de venta.
¿Stock?InventarioDECISIÓN
Consulta disponibilidad en tiempo real. Ramifica el flujo.
ProducciónSi no hay stock
Orden de fabricación. Consume materiales, genera producto.
CalidadInspección loteBLOQUEO
Puede rechazar el lote. Nadie entra a stock sin aprobación.
LogísticaDespacho
Despacha, genera remito y actualiza tracking al cliente.
FinanzasFactura
Emite factura, registra en cuenta corriente del cliente.
BIDatos vivos
Todos los datos del ciclo llegan al dashboard en tiempo real.
Punto de fallo más común — para el equipo de desarrollo
El paso Inventario → Calidad → stock aprobado es donde más bugs aparecen en ERP nuevos.
Si no existe un estado_lote con valores en_inspeccion | aprobado | rechazado,
el stock puede entrar "de costado" sin pasar por calidad. Ese campo es obligatorio antes de cualquier
ingreso a inventario de producto terminado.
Flujo secundario — ciclo de mantenimiento
ParoProducción detecta
Producción reporta falla de máquina. Se bloquea la línea.
OTMantenimiento
Se crea Orden de Trabajo. Se asigna técnico y repuesto.
RepuestoInventario
Egreso de repuesto del stock. Inventario se actualiza.
Cierre OTMáquina OK
Técnico cierra OT. Se libera la línea en Producción.
CostoFinanzas
Costo de mano de obra + repuesto se imputa a Finanzas.
Módulos — por qué existen
Cada módulo tiene una razón de existir, responsabilidades claras y un conjunto definido de integraciones. Si dos módulos hacen lo mismo, hay un problema de diseño.
Reportes / BIcapa 0 — inteligencia
Existe porque cada módulo ve solo su parte. El BI consolida todo en una sola vista.
No opera datos, los lee. Su arquitectura ideal es una capa de lectura separada
(read replica o data warehouse) para no frenar las operaciones.
INTodos los módulos — métricas, eventos, estados
OUTAlertas automáticas — stock bajo mínimo, SLA vencido, MTBF caído
Administracióncapa 1 — núcleo
Gestiona identidad y permisos. Es el módulo que define quién puede hacer qué en cada módulo.
Sin él, cualquier empleado podría facturar o ajustar stock manualmente.
En una empresa pequeña evita errores; en una mediana, previene fraudes.
OUTTodos los módulos — roles, permisos, usuarios activos
INRR.HH — altas y bajas de empleados
Ventascapa 2 — comercial
Es el módulo que genera el documento que pone en movimiento a toda la empresa: la orden de venta.
Sin una orden confirmada, ni Inventario descuenta, ni Logística despacha, ni Finanzas factura.
Es el disparador principal del flujo operativo.
OUTInventario — descuenta stock al confirmar
OUTFinanzas — orden → factura
↔CRM — historial de cliente, pipeline
CRMcapa 2 — comercial
Administra la relación con el cliente antes, durante y después de la venta.
Se enlaza con Ventas para que el vendedor vea el historial completo al cotizar,
y con Soporte para que el técnico sepa quién es el cliente sin pedirle datos de vuelta.
↔Ventas — pipeline y oportunidades
OUTIT & Soporte — historial del cliente al abrir ticket
Ecommercecapa 2 — digital
Canal de ventas autónomo. Se conecta directamente a Inventario para mostrar stock real
(sin mostrar 0 cuando hay 5 unidades, ni vender lo que no existe). Genera órdenes de venta
automáticas y dispara Logística al confirmar el pago, sin intervención humana.
OUTVentas — pedido web → orden de venta
↔Inventario — stock en tiempo real
OUTLogística — despacho automático post-pago
IT & Soporte técnicocapa 2 — tecnología
Módulo fusionado con dos subáreas: Helpdesk externo (tickets de clientes, garantías, posventa)
y Gestión IT interna (infraestructura, accesos, mantenimiento del ERP).
Se fusionan porque comparten el mismo motor de tickets; se diferencian por tipo_origen.
IT interno no se conecta con Logística — esa conexión solo aplica al Helpdesk
cuando un cliente envía un equipo físico para reparación.
INCRM — historial al abrir ticket de cliente
↔Inventario — repuestos para el Helpdesk externo
OUTFinanzas — notas de crédito y costos de garantía
OUTLogística — solo Helpdesk externo: retiro/envío de equipos
Inventariocapa 3 — operativo
El módulo más conectado del sistema. Todos los movimientos físicos de stock pasan por acá:
ingresos de producción, egresos por ventas, consumo de repuestos para mantenimiento y soporte.
Es la fuente de verdad sobre qué hay disponible en cada momento.
INCalidad — aprueba ingreso de lote terminado
INEcommerce — pedidos web descuentan stock
INVentas — órdenes confirmadas descuentan stock
OUTProducción — disponibilidad de materiales
OUTFinanzas — valuación de stock para balance
Produccióncapa 3 — operativo
Transforma materias primas (que vienen de Inventario) en producto terminado (que va a Calidad antes
de entrar a Inventario). Depende de que Mantenimiento le garantice disponibilidad de máquinas y
de que Inventario tenga los materiales necesarios antes de arrancar una orden.
INInventario — materias primas disponibles
INMantenimiento — disponibilidad de máquinas
OUTCalidad — lotes a inspeccionar antes de ingresar a stock
OUTLogística — producto listo para despacho
Logísticacapa 3 — operativo
Gestiona el movimiento físico de los productos hacia afuera. No decide qué se despacha
(eso lo decide Ventas/Ecommerce) sino cómo y cuándo. Genera el remito que Finanzas
necesita para facturar y actualiza el tracking que ve el cliente.
INVentas / Ecommerce — órdenes a despachar
INProducción — producto terminado listo
OUTFinanzas — remito → cierre contable de la venta
INIT & Soporte (Helpdesk) — retiro de equipos para reparación
Control de calidadcapa 3 — calidad
Actúa como una barrera entre Producción e Inventario. Ningún lote de producto terminado
puede ingresar al stock sin pasar por inspección. Si rechaza, genera una No Conformidad
que impacta en Finanzas (merma o reproceso) y en Producción (vuelta a fabricar).
Su existencia evita vender productos defectuosos.
INProducción — lotes terminados para inspeccionar
OUTInventario — lote aprobado → ingreso a stock
OUTFinanzas — NC con costo de merma o reproceso
OUTBI — tasa de defectos, costo de calidad por lote
Mantenimientocapa 3 — calidad
Gestiona los activos físicos de la fábrica (máquinas, equipos) y su disponibilidad operativa.
Sin este módulo, un paro de máquina no tiene visibilidad en el ERP: no se sabe cuánto costó,
cuánto tardó ni qué tan seguido pasa. Con él, se puede hacer mantenimiento preventivo y
reducir paros no planificados.
↔Producción — paro / liberación de línea
OUTInventario — egreso de repuestos por OT
OUTFinanzas — costo de mano de obra y repuesto por OT
OUTBI — MTBF, disponibilidad, costo por máquina
Finanzascapa 4 — financiero
Recibe eventos económicos de casi todos los módulos y los convierte en asientos contables.
No opera nada por sí mismo: todo lo que registra viene de una acción que ocurrió en otro módulo.
Si un módulo no está integrado con Finanzas, ese costo o ingreso queda invisible para la empresa.
INVentas — orden de venta → factura
INLogística — remito → cierre de venta
INCalidad — NC → merma o reproceso
INMantenimiento — costo de OT
INIT & Soporte — garantías y notas de crédito
↔RR.HH — liquidación de sueldos
RR.HHcapa 4 — personas
Gestiona el ciclo de vida del empleado dentro de la empresa. Su integración con Finanzas
es la más crítica: la liquidación de sueldos genera uno de los movimientos financieros
más importantes y más repetidos del mes. También alimenta a Administración con altas y
bajas para mantener los accesos al ERP actualizados.
↔Finanzas — liquidaciones, presupuesto por área
OUTAdministración — alta/baja de usuario al incorporar o dar de baja empleado
Contaduríacapa 4 — gestión documental contable
Es el repositorio oficial de todos los documentos contables de la empresa: facturas de compra y venta,
notas de crédito y débito, remitos, recibos, estados de cuenta y libros contables.
El contador sube, valida y archiva los documentos en formato digital con trazabilidad completa.
No duplica a Finanzas — Finanzas registra los movimientos económicos; Contaduría
custodia los documentos que los respaldan y garantiza que estén disponibles para auditorías,
presentaciones ante AFIP y cierres de ejercicio.
INFinanzas — facturas emitidas, NC/ND, recibos de cobro automáticamente archivados
INLogística — remitos de despacho vinculados a facturas
INRR.HH — recibos de sueldo firmados digitalmente
INCompras externas — facturas de proveedores cargadas manualmente por el contador
OUTBI — estado de cumplimiento fiscal, documentos vencidos, alertas de presentación
OUTAdministración — permisos de acceso por rol (solo lectura para auditor externo)
Conexiones — por qué y qué puede fallar
Cada conexión tiene una razón funcional, un dato que viaja, un posible error y un caso edge. Hacé clic en cada tarjeta para ver el detalle completo.
Ventas→Inventarioactivo
Al confirmar una orden de venta, Inventario descuenta las unidades automáticamente.
Por qué se conectan
Si Inventario no se actualiza en el momento de la venta, dos vendedores pueden confirmar el último stock disponible al mismo tiempo. Resultado: sobrecomprometido, cliente enojado.
Posibles errores
race condition Dos órdenes simultáneas del mismo producto. Necesita transacción atómica en BD.
stock negativo Si no hay validación previa, Inventario puede quedar en negativo.
orden cancelada Si la venta se cancela, el stock debe reintegrarse. ¿Automático o manual?
Casos edge / pendientes de definir
¿Qué pasa si se vende un producto que todavía está "en inspección de calidad"? ¿Se permite reservar stock no aprobado? Decisión de negocio, no técnica.
clic para expandir
Ecommerce↔Inventarioactivo
La tienda web muestra stock real. Al confirmar compra, descuenta automáticamente.
Por qué se conectan
Una tienda con stock ficticio genera ventas que no se pueden cumplir. La sincronización debe ser en tiempo real (websocket o polling corto), no batch nocturno.
Posibles errores
lag de sincronización Si hay demora entre el descuento real y lo que muestra la tienda, se pueden vender unidades ya agotadas.
pago aprobado, sin stock El pago se acreditó pero el producto se agotó en el intervalo. Necesita flujo de reembolso automático.
Casos edge
¿Se muestra el número exacto de unidades en la tienda, o solo "disponible / sin stock"? Exponer números exactos puede generar ansiedad de compra artificial — decisión de UX.
clic para expandir
Producción→Calidadactivo
Todo lote terminado va a inspección antes de ingresar al stock como producto disponible.
Por qué se conectan
Sin esta barrera, producto defectuoso puede llegar al cliente. El costo de una devolución supera siempre el costo de la inspección.
Posibles errores
ingreso directo Si hay un bypass en el código que permite ingresar a stock sin estado "aprobado", la barrera no funciona.
lote parcial ¿Qué pasa si se aprueba el 70% del lote? ¿Se ingresan las unidades aprobadas y las demás van a reproceso?
Casos edge
Urgencia de entrega: hay un pedido urgente y el lote sigue en inspección. ¿Hay un rol que pueda aprobar "bajo su responsabilidad"? Definir quién tiene ese permiso en Administración.
clic para expandir
Mantenimiento↔Producciónactivo
Mantenimiento puede bloquear o liberar líneas de producción. Producción genera solicitudes de OT.
Por qué se conectan
Un paro de máquina impacta directamente en el plan de producción. Si el ERP no refleja el estado real de la máquina, el planificador sigue asignando órdenes a una línea parada.
Posibles errores
paro no notificado El operario reporta verbalmente pero no en el sistema. Las órdenes siguen "en curso" en el ERP mientras la máquina está parada.
OT abierta indefinidamente La máquina se reparó informalmente pero la OT no se cerró. Métricas de MTBF quedan corruptas.
Casos edge
Mantenimiento preventivo programado: la máquina se va a parar en 3 días. ¿El módulo de Producción recibe la alerta para ajustar el plan con anticipación?
clic para expandir
IT & Soporte→Finanzasactivo
El Helpdesk externo genera notas de crédito por garantías y costos de servicio técnico.
Por qué se conectan
Si las garantías no se registran en Finanzas, la empresa pierde visibilidad sobre el costo real de posventa. Puede haber un producto con margen positivo en ventas pero negativo cuando se suma el costo de garantías.
Posibles errores
NC sin factura origen Si el ticket de garantía no tiene referencia a la factura original, Finanzas no puede vincularlo contablemente.
garantía vencida El cliente reclama garantía, el soporte acepta "de buena fe". ¿Quién aprueba esa excepción y deja rastro?
Casos edge
La reparación implica un repuesto importado con demora. ¿El ticket queda abierto meses? ¿Hay SLA diferenciado para garantías con espera de repuesto?
clic para expandir
Logística→Finanzasactivo
El remito de despacho activa el cierre contable de la venta en Finanzas.
Por qué se conectan
En Argentina (y en general), la factura se emite cuando el bien sale del depósito, no cuando se cierra la venta. El remito de Logística es el disparador legal del momento de facturación.
Posibles errores
despacho sin remito El producto sale pero no se genera el documento. Ventas no se puede facturar legalmente.
remito con error de bultos Se despacharon 10 unidades pero el remito dice 8. Diferencia que aparece en la auditoría.
Casos edge
Entrega parcial: se despachan 6 de las 10 unidades pedidas. ¿Se factura parcial? ¿Se generan dos remitos? ¿Cómo queda la orden en Ventas — abierta o cerrada?
clic para expandir
Finanzas↔RR.HHactivo
La liquidación de sueldos genera uno de los movimientos financieros más regulares e importantes del mes.
Por qué se conectan
Los sueldos son un costo fijo que Finanzas necesita proyectar y registrar. RR.HH calcula el bruto y los descuentos; Finanzas registra el egreso de caja y el pasivo fiscal.
Posibles errores
liquidación manual Si RR.HH liquida en Excel y Finanzas carga manualmente, hay riesgo de error de tipeo y discrepancias.
empleado dado de baja Si RR.HH da de baja a un empleado y Finanzas no se entera, puede seguir apareciendo en proyecciones de nómina.
Casos edge
Horas extra o bonos variables: ¿se calculan en RR.HH y se pasan a Finanzas como un monto cerrado, o Finanzas necesita ver el detalle para imputar correctamente por centro de costos?
clic para expandir
Mantenimiento→Inventarioactivo
Cada OT que consume un repuesto genera un egreso en el inventario de repuestos.
Por qué se conectan
Los repuestos son stock. Si Mantenimiento los usa sin registrarlo, Inventario muestra unidades que físicamente no existen. El primer técnico que busca el repuesto en una urgencia y no lo encuentra entiende por qué importa.
Posibles errores
repuesto usado informalmente El técnico toma el repuesto "para ya" sin cargar la OT. Stock desactualizado.
stock mínimo no configurado Si no hay alerta de stock mínimo para repuestos críticos, la empresa se queda sin ellos en el peor momento.
Casos edge
Repuesto importado con lead time de 45 días. ¿El sistema alerta cuando queda el último? ¿Puede disparar automáticamente una solicitud de compra a Finanzas/Administración?
clic para expandir
CRM→IT & Soporteactivo
Al abrir un ticket, Soporte recibe automáticamente el historial completo del cliente desde CRM.
Por qué se conectan
Un cliente no debería tener que repetir sus datos ni su historial cada vez que llama. El técnico debe ver qué compró, cuándo, si ya tuvo tickets anteriores y si tiene garantía activa antes de decir "hola".
Posibles errores
cliente sin CRM El cliente compró por Ecommerce pero no tiene ficha en CRM. El ticket se abre sin contexto. ¿Se crea automáticamente la ficha?
datos desactualizados El cliente cambió de teléfono en Ecommerce pero CRM no se enteró. ¿Qué fuente es la canónica?
Casos edge
El ticket lo abre alguien que no es el titular de la cuenta (familiar, empleado). ¿Se vincula al cliente original o se crea un contacto secundario?
clic para expandir
Calidad→Finanzasactivo
Cuando un lote es rechazado, el costo de merma o reproceso se imputa automáticamente a Finanzas.
Por qué se conectan
Sin esta conexión, los rechazos de calidad son "invisibles" para el área financiera. La empresa no sabe cuánto le cuesta producir mal. Este dato es clave para justificar inversión en mejoras de proceso.
Posibles errores
NC sin costo Se registra el rechazo pero no se imputa el costo de los materiales ya consumidos. Las métricas de calidad existen pero las financieras no.
reproceso no controlado El lote rechazado vuelve a producción sin generar una nueva OT ni un nuevo paso por calidad.
Casos edge
El defecto es responsabilidad de un proveedor (materia prima mala). ¿El costo de la NC se imputa a Finanzas internamente o genera un reclamo al proveedor? ¿Existe módulo de Compras para gestionar esto?
clic para expandir
BI y Pipeline — por qué se sostienen
Dos conceptos que aparecen en el diagrama y que merecen su propia explicación porque no son módulos operativos sino capas transversales de inteligencia y flujo.
Reportes / BI
Business Intelligence — capa de lectura
El BI no es un módulo más del ERP — es una capa separada de lectura que
consume datos de todos los módulos sin participar en ninguna operación. Su arquitectura
ideal es una read replica o un data warehouse para no frenar las transacciones.
Por qué se sostiene solo: porque la empresa necesita ver la foto completa
que ningún módulo individual puede dar. Ventas ve sus pedidos; Finanzas ve sus facturas;
pero solo el BI puede responder "¿cuál es el costo total de una venta incluyendo producción,
calidad, logística y posventa?".
01
KPIs operativos Unidades producidas, tasa de defectos, OTIF (on-time in-full), tiempo medio de entrega.
02
KPIs financieros Facturación, margen bruto, costo de garantías, liquidaciones pendientes.
03
KPIs de calidad MTBF (mean time between failures), tasa de rechazo por lote, costo de NC.
04
Alertas automáticas Stock bajo mínimo, SLA de soporte vencido, máquina con disponibilidad menor al 80%.
05
Por qué se enlaza con todos Porque cada módulo genera datos que solos no dicen nada pero combinados revelan tendencias, cuellos de botella y oportunidades de mejora.
Pipeline de datos
Bus de eventos — comunicación entre módulos
El pipeline es la infraestructura de comunicación entre módulos.
En lugar de que Ventas llame directamente a Inventario (acoplamiento fuerte),
Ventas publica un evento y Inventario (y Finanzas, y BI) lo consumen
de forma independiente. Esto hace el sistema resiliente y escalable.
Por qué se sostiene solo: porque con acoplamiento directo, si Inventario
está caído, Ventas no puede confirmar una orden. Con un bus de eventos, Ventas confirma,
el evento queda en cola, e Inventario lo procesa cuando vuelve. El negocio no para.
01
Eventos síncronos Consulta de stock en tiempo real al cotizar — necesita respuesta inmediata. Va directo, no por cola.
02
Eventos asíncronos Descuento de stock al confirmar venta, notificación a BI, impacto en Finanzas — no necesitan ser instantáneos.
03
Eventos de alerta Stock bajo mínimo, SLA vencido, OT sin cerrar — generados por cualquier módulo, consumidos por BI y por el módulo responsable.
04
Por qué se enlaza con todos Porque es el mecanismo que hace posible que los módulos se comuniquen sin depender directamente uno del otro. Es el sistema nervioso del ERP.
05
Para el equipo Implementación simple para empezar: tabla eventos en BD con tipo, payload JSON, procesado bool y un worker que la poll cada N segundos. Puede evolucionar a Kafka o RabbitMQ cuando la carga lo justifique.
Para UX/UI — implicación directa en la interfaz
El pipeline asíncrono significa que cuando el usuario confirma una orden, puede ver el estado "procesando"
durante unos segundos antes de que el stock se actualice. La interfaz debe comunicar esto claramente:
no es un error, es el sistema procesando en orden. Usar spinners con mensajes de estado, no silencios
que generan ansiedad y dobles clics.
Algoritmo interactivo
Diagrama de flujo del ciclo operativo del ERP. Cada figura tiene su forma correcta: óvalo para inicio/fin, rombo para decisiones, rectángulo para procesos. Hacé clic en los botones Sí / No para avanzar por el flujo y ver qué módulo actúa, por qué y qué puede salir mal.