Contabilización Automática de Movimientos de Inventario
El sistema genera pólizas contables automáticamente cuando se registran movimientos de inventario, manteniendo una separación clara entre el hecho físico (inventario) y el hecho comercial (CxP/CxC).
Concepto clave: Los movimientos de inventario solo afectan cuentas de Inventario y Costos/Gastos. Nunca afectan directamente Proveedores (210101) ni Clientes (110501).
Flujo del Motor Contabilizador
Arquitectura de Tres Capas
MainesERP utiliza una arquitectura de tres capas para separar claramente las responsabilidades contables:
Capa Comercial
Remisión de Compra/Venta
Genera CxP o CxC
Capa Operativa
Movimiento de Inventario
Registra hecho físico
Capa Contable
Póliza Automática
Inventario vs Costo
Cada capa tiene su propia responsabilidad contable. La Remisión de Compra origina la contabilización de Cuentas por Pagar. El Movimiento de Inventario origina la contabilización de costos e inventario. Esta separación permite mayor claridad y control.
Principios de Diseño
Motor Agnóstico
El motor contabilizador no conoce si el movimiento viene de una Remisión de Compra, una captura directa o cualquier otro origen. Solo analiza la clave del movimiento para determinar las cuentas.
Inmutabilidad
Si un movimiento de inventario existe, está aplicado. Para revertirlo se genera un movimiento contrario, nunca se elimina. Las pólizas siguen el mismo principio.
Sin Clientes/Proveedores
Los movimientos de inventario nunca afectan las cuentas de Clientes (110501) ni Proveedores (210101). Esas cuentas se afectan desde la Remisión de Compra/Venta.
Configuración Cerrada
Cada tipo de movimiento tiene una configuración contable predefinida. Si no existe configuración para una clave, el sistema genera un error en lugar de asumir valores.
Las reglas contables se basan en el tipo de movimiento, no en el documento que lo originó.
- El documento comercial describe el negocio (compra, venta, producción, devolución, etc.)
- El movimiento de inventario describe el efecto físico sobre las existencias
- La póliza describe el efecto financiero
Cada documento tiene una única responsabilidad y puede evolucionar independientemente de los demás.
Cuenta Puente: 5201 (Compras Nacionales)
Para las compras, el sistema utiliza la cuenta 5201 Compras Nacionales como cuenta de enlace (similar al concepto GR/IR de SAP). Esta cuenta actúa como puente entre el movimiento físico y el documento comercial.
Cómo funciona la Cuenta Puente
Mov. Inventario (Entrada)
Remisión Compra
Resultado Final
Tanto la póliza de movimiento de inventario como la póliza de CxP utilizan el mismo motor de contabilización (c_ConAutom_XMLs_20_genera_BN_poliza_de_XML_recibido).
- Para compras de inventario: La cuenta 5201 se establece directamente en la semilla de contabilización, sin depender del COG.
- Para gastos/servicios: La cuenta se deduce del COG asignado (6106, 6201, etc.).
Esto garantiza que la cuenta puente 5201 siempre se use para compras de inventario, independientemente del COG configurado.
Catálogo de Tipos de Movimiento
Cada tipo de movimiento tiene una configuración contable específica. Los movimientos se clasifican en: Inicial, Entradas, Salidas y Traspasos.
| Clave | Descripción | Cargo | Abono | Captura Directa |
|---|---|---|---|---|
| 1110 | Inventario Inicial | 111502 Inventario | 7411 Otros Ingresos | Sí |
| Clave | Descripción | Cargo | Abono | Captura Directa |
|---|---|---|---|---|
| 1210 | Compras | 111502 Inventario | 5201 Compras Nac. | Solo desde Compras |
| 1215 | Devolución de Ventas | 111502 Inventario | 5101 Costo Ventas | Solo desde Ventas |
| 1220 | Entrada por Producción (PT) | No requiere póliza * | Solo desde Producción | |
| 1235 | Ajuste Sobrantes | 111502 Inventario | 7411 Otros Ingresos | Sí |
| 1270 | Otras Entradas | 111502 Inventario | 7411 Otros Ingresos | Sí |
* Transformación interna — ver sección Producción para más detalles.
| Clave | Descripción | Cargo | Abono | Captura Directa |
|---|---|---|---|---|
| 1310 | Ventas | 5101 Costo Ventas | 111502 Inventario | Solo desde Ventas |
| 1320 | Salida por Producción (MP) | No requiere póliza * | Solo desde Producción | |
| 1315 | Devolución de Compras | 5101 Costo Ventas | 111502 Inventario | Solo desde Compras |
| 1335 | Ajuste de Faltantes | 7310 Gtos No Deducibles | 111502 Inventario | Sí |
| 1350 | Pérdidas | 7310 Gtos No Deducibles | 111502 Inventario | Sí |
| 1353 | Mermas | 7310 Gtos No Deducibles | 111502 Inventario | Sí |
| 1365 | Consumo Interno | 6119 Otros Gastos | 111502 Inventario | Sí |
| 1370 | Otras Salidas | 7310 Gtos No Deducibles | 111502 Inventario | Sí |
* Movimientos de Producción (1220, 1320): Transformación interna — el valor neto del inventario no cambia. Ver sección Producción para más detalles.
| Clave | Descripción | Póliza | Captura Directa | |
|---|---|---|---|---|
| 1510 | Salida por Traspaso | No requiere póliza | Sí | |
| 1515 | Entrada por Traspaso | No requiere póliza | Sí | |
Tratamiento contable del Traspaso
Un traspaso mueve inventario de un almacén a otro, pero no modifica el valor total del activo:
ALM-B: $5,000
Total: $15,000
ALM-B: $6,500
Total: $15,000
Resumen: El Balance General no cambia. No hay gasto, no hay ingreso, no cambia el patrimonio. Solo cambia la ubicación física del inventario. Por ello, no se requiere póliza contable.
Lo que SÍ se actualiza en el Traspaso:
- Existencias en almacén origen (disminuye)
- Existencias en almacén destino (aumenta)
- Kardex de ambos almacenes
- Costo promedio del almacén destino
- No requiere póliza contable (valor del activo sin cambio)
Tratamiento contable de la Producción
En un movimiento de producción ocurre una transformación interna:
Materia Prima-$373.76
Producto Terminado+$373.76
Cambio en Inventario$0.00
Desde el punto de vista contable: Si ambos inventarios (MP y PT) están en la misma cuenta 111502,
la póliza sería 111502 vs 111502 con el mismo monto — no modifica ningún saldo del mayor.
Resumen: La Producción transforma inventarios, pero no modifica el valor total del activo. Por ello, cuando Materia Prima y Producto Terminado pertenecen a la misma cuenta contable, el efecto neto sobre el mayor es cero y no se requiere póliza.
Lo que SÍ se actualiza en Producción:
- Existencias físicas (kardex)
- Costos unitarios
- Costo promedio
- Movimiento de inventario (trazabilidad)
- No requiere póliza contable (efecto neto = 0)
Si en el futuro se manejan cuentas separadas para Materia Prima (111501) y Producto Terminado (111502),
o si se implementa Producción en Proceso (WIP), entonces sí se requerirá generar póliza:
111502 Inventario Producto Terminado CARGO $373.76
111501 Inventario Materia Prima ABONO $373.76
Ejemplos Prácticos
Cuando se registra una Remisión de Compra, el sistema:
- Crea el Movimiento de Inventario (clave 1210) que genera:
111502 Inventario (CARGO) vs 5201 Compras (ABONO) - Crea la Póliza de CxP desde la Remisión que genera:
5201 Compras + IVA (CARGO) vs 210101 Proveedores (ABONO)
Resultado: Inventario aumenta, Proveedores aumenta, cuenta 5201 queda saldada.
Cuando se captura directamente un movimiento de Ajuste de Faltantes (clave 1335):
7310 Gastos No Deducibles (CARGO) vs 111502 Inventario (ABONO)
Resultado: Inventario disminuye, se registra un gasto no deducible. No hay CxP ni CxC porque es un ajuste interno.
Principios Fundamentales del Motor
Estas reglas definen el comportamiento del motor de contabilización y deben mantenerse conforme el ERP evolucione:
- El Movimiento de Inventario es el único documento que modifica existencias.
- El Movimiento de Inventario es el único documento que dispara la contabilización de inventarios.
- Las cuentas contables nunca se almacenan en el movimiento; se determinan en tiempo de ejecución.
- El tipo de movimiento (clave) determina la regla contable.
- El documento origen nunca determina la póliza; solo el tipo de movimiento.
- Si falla la contabilización, el movimiento permanece registrado (inmutabilidad).
- Toda póliza debe poder rastrearse hasta un movimiento de inventario.
- Todo movimiento genera como máximo una póliza.
Estos principios aseguran que el motor de contabilización sea predecible, auditable y mantenible a largo plazo. Cualquier cambio futuro debe respetar estas reglas fundamentales.