Módulo de Contabilidad
🔑 Acceso al Módulo
Menú Principal: Contabilidad
El módulo de Contabilidad es accesible desde el menú lateral principal. Las opciones disponibles son:
- Plan de Cuentas: Contabilidad > Plan de Cuentas
- Asientos Contables: Contabilidad > Asientos Contables
- Balance General: Contabilidad > Balance General
- Estado de Resultados: Contabilidad > Estado de Resultados
- Libro Mayor: Contabilidad > Libro Mayor
- Balance de Comprobación: Contabilidad > Balance de Comprobación
- Conciliación Bancaria: Contabilidad > Conciliación Bancaria
- Notas Crédito/Débito: Contabilidad > Notas Crédito/Débito
- Mapeos Contables: Contabilidad > Mapeos Contables
- Cierre de Período: Contabilidad > Cierre de Período
Permisos requeridos: accounting:read o accounting:*
Descripción General

El módulo de Contabilidad es un sistema completo de contabilidad formal que cumple con los Principios de Contabilidad Generalmente Aceptados (PCGA) y utiliza el sistema de partida doble.
Características Principales
🏦 Plan de Cuentas Jerárquico

- Estructura de cuentas multinivel con códigos personalizables
- Clasificación por tipo: Activos, Pasivos, Patrimonio, Ingresos, Gastos
- Soporte para subcategorías (activos corrientes, fijos, etc.)
- Cuentas de resumen y cuentas de detalle
- Naturaleza deudora o acreedora por cuenta
📝 Asientos Contables (Journal Entries)

- Sistema de partida doble (débitos = créditos)
- Tipos de asientos: apertura, regulares, ajustes, cierre
- Estados: borrador, contabilizado, reversado
- Trazabilidad completa con usuario y fecha
- Integración automática desde otros módulos
📊 Estados Financieros
- Balance General (Balance Sheet): Activos, Pasivos y Patrimonio
- Estado de Resultados (Income Statement): Ingresos y Gastos
- Balance de Comprobación (Trial Balance): Verificación de partida doble
- Libro Mayor (General Ledger): Movimientos detallados por cuenta




🔗 Integraciones Automáticas
- Tesorería: Pagos, cobros, transferencias bancarias
- Presupuesto: Ejecución presupuestaria y compromisos
- Nómina: Asiento de devengo al aprobar período + Asiento al pagar
- Proyectos: Asiento de devengo al aprobar valuación + Asiento al pagar
- Inventario: Asiento al recibir mercancía + Asiento al consumir en proyecto
- Compras: Órdenes de compra y recepciones
📄 Notas de Crédito y Débito
- Registro de devoluciones, descuentos y ajustes
- Flujo de aprobación con estados
- Generación automática de asientos contables
- Asociación con documentos de referencia
🏦 Conciliaciones Bancarias

- Conciliación de movimientos bancarios con registros contables
- Identificación automática de transacciones
- Ajustes y correcciones
- Workspace integrado para gestión eficiente
📅 Gestión de Períodos Fiscales

- Control por período fiscal (YYYY-MM)
- Depreciación automática de activos
- Reportes por período
Estructura del Módulo
Modelos de Datos
AccountingAccount (Cuenta Contable)
Representa cada cuenta en el plan de cuentas:
- code: Código único (ej: 1.1.01.001)
- name: Nombre de la cuenta
- accountType: ASSET, LIABILITY, EQUITY, REVENUE, EXPENSE
- accountSubtype: Clasificación adicional
- parentId: Cuenta padre para jerarquía
- level: Nivel en la jerarquía
- isDebitNature: Naturaleza deudora (true) o acreedora (false)
- acceptsTransactions: Solo cuentas hoja aceptan movimientos
- balance: Saldo actual
- balanceDebit/balanceCredit: Saldos acumulados
JournalEntry (Asiento Contable)
Representa un asiento contable completo:
- code: Código único (ASI-2026-00001)
- entryDate: Fecha del asiento
- description: Descripción del movimiento
- entryType: OPENING, REGULAR, ADJUSTMENT, CLOSING
- status: DRAFT, POSTED, REVERSED
- fiscalPeriod: Período fiscal (YYYY-MM)
- totalDebit/totalCredit: Totales que deben ser iguales
- sourceModule: Módulo de origen (treasury, payroll, etc.)
- sourceEntityId: ID de la entidad origen
JournalEntryLine (Línea de Asiento)
Representa cada línea dentro de un asiento:
- accountingAccountId: Cuenta afectada
- lineNumber: Número de línea
- description: Descripción específica
- debitAmount: Monto débito
- creditAmount: Monto crédito
- currency: Moneda de la transacción
- exchangeRate: Tipo de cambio aplicado
- projectId/departmentId: Dimensiones analíticas opcionales
Flujo de Trabajo
1. Configuración Inicial
- Configurar el plan de cuentas jerárquico
- Definir cuentas de activos, pasivos, patrimonio, ingresos y gastos
- Configurar enlaces contables para módulos integrados
- Establecer períodos fiscales
2. Operación Diaria
- Asientos Manuales: Crear asientos en estado borrador

- Asientos Automáticos: Generados por otros módulos (pagos, nómina, etc.)
- Revisión: Verificar que débitos = créditos
- Contabilización: Cambiar estado a POSTED para afectar balances
- Correcciones: Reversar asientos si es necesario
3. Cierre de Período
- Revisar todos los asientos del período
- Realizar ajustes necesarios
- Calcular depreciaciones automáticas
- Generar estados financieros
- Cerrar el período fiscal
Permisos y Roles
Permisos Disponibles
accounting.view- Ver información contableaccounting.create- Crear asientos en borradoraccounting.edit- Editar asientos en borradoraccounting.post- Contabilizar asientosaccounting.reverse- Reversar asientosaccounting.delete- Eliminar asientos en borradoraccounting.reports- Ver reportes y estados financierosaccounting.admin- Administrar plan de cuentas y configuración
Roles Típicos
- Contador: Todos los permisos excepto admin
- Asistente Contable: view, create, edit
- Auditor: view, reports
- Gerente Financiero: view, reports, admin
Navegación
- Plan de Cuentas
- Asientos Contables
- Estados Financieros
- Conciliación Bancaria
- Notas de Crédito/Débito
- Integraciones
- Depreciación
Mejores Prácticas
✅ Recomendaciones
- Siempre verificar que débitos = créditos antes de contabilizar
- Usar descripciones claras y detalladas en cada asiento
- Revisar asientos automáticos antes de cerrar períodos
- Mantener el plan de cuentas organizado y actualizado
- Realizar conciliaciones bancarias mensualmente
- Documentar ajustes y correcciones importantes
⚠️ Advertencias
- No eliminar cuentas que tienen movimientos históricos
- No modificar asientos contabilizados (usar reversión)
- No cerrar períodos sin revisar todos los asientos
- No crear cuentas sin definir correctamente su naturaleza
- Verificar tipos de cambio en transacciones multimoneda