Skip to main content
Los Asientos Contables (también conocidos como Rúbricas) asignan una acción de transacción a los asientos del ledger que genera. El motor usa esta asignación para resolver qué cuentas debitar y acreditar en cada acción. Luego anota cada operación con los códigos contables de partida doble correctos en cada etapa del ciclo de vida de la transacción.

Qué son los Asientos Contables


Una rúbrica asigna una acción de transacción a las cuentas del ledger que el motor debe debitar y acreditar. En lugar de calcular cada clasificación a mano, registras las rúbricas una sola vez. Midaz luego las resuelve automáticamente a medida que procesa las transacciones. Cada rúbrica lleva:
  • code — un identificador único (el código del plan de cuentas, ej., 1.1.1.001).
  • description — una etiqueta legible para el asiento (ej., Customer checking — outbound).
  • Un conjunto de mapeos de acción — un asiento por tipo de acción, cada uno con su propia rúbrica de débito y/o crédito.
Cuando el motor procesa una transacción, resuelve la rúbrica de cada operación. Registra el routeCode y el routeDescription resultantes en la operación. Esto te da una pista de auditoría completa desde la transacción hasta la operación y la rúbrica. Tus equipos pueden rastrear exactamente qué regla contable se aplicó a cada movimiento.
Configura las rúbricas por acción en cada Ruta de Operación. Las rutas Source requieren la rúbrica de débito. Las rutas Destination requieren la rúbrica de crédito. Las rutas Bidirectional requieren ambas.

Los 8 tipos de acción


Cada acción representa un evento transaccional distinto. Las primeras cinco acciones cubren el ciclo de vida de la transacción. Las últimas tres cubren los movimientos de sobregiro, bloqueo y desbloqueo. Una sola rúbrica puede asignar diferentes cuentas de débito y crédito para cada acción. Cada etapa de una operación cae entonces en el asiento correcto del ledger. Overdraft clasifica las operaciones complementarias que el motor genera automáticamente durante el uso y el pago del sobregiro. Block y unblock clasifican las operaciones que producen los endpoints de transacción dedicados de bloqueo y desbloqueo. Registras las rúbricas de las tres de la misma manera que las demás acciones.
Cada acción puede apuntar a diferentes mapeos de cuentas de débito y crédito dentro de la misma rúbrica. Mapea solo las acciones que una ruta usa. Si habilitas la validación estricta (más abajo), cubre cada acción que emitan tus transacciones.

Configurar Asientos Contables


Registras las rúbricas a través de la API como parte de tus Rutas de Operación. El bloque accountingEntries de una ruta define un asiento por acción. Cada asiento lleva su rúbrica de debit y/o credit:
Gestionas estos asientos a través de los endpoints de Ruta de Operación — consulta Crear una Ruta de Operación y Actualizar una Ruta de Operación. Para el flujo completo de configuración, consulta Enrutamiento de Transacciones.

Modos de validación


Midaz reacciona ante una rúbrica faltante según la configuración contable del Ledger. Dos compuertas distintas controlan este comportamiento:

Por defecto (tolerante)

Por defecto, la transacción procede normalmente cuando ninguna rúbrica coincide con una acción. Midaz deja los campos routeCode y routeDescription vacíos (nil) para esa operación. No genera ningún error.

Estricto (opcional)

Establece accounting.validateRoutes en true en la Configuración del Ledger para exigir una rúbrica registrada en cada acción. Midaz luego rechaza cualquier operación cuya acción y dirección no tenga un mapeo registrado. Devuelve el error 0117 ErrAccountingRouteNotFound.
En modo estricto, si una ruta tiene asientos contables pero una transacción usa una acción no mapeada, Midaz deniega la transacción con 0117 ErrAccountingRouteNotFound. Una Transacción en Dos Fases dispara esto cuando mapeas solo direct. Esta compuerta mantiene cada etapa de una operación mapeada antes de la ejecución, de modo que tus reportes contables se mantengan consistentes.
Usa el modo estricto en ledgers de producción donde cada tipo de transacción necesita una clasificación contable. El valor predeterminado tolerante ayuda mientras configuras las rutas. En producción, puede dejar movimientos sin clasificación de forma silenciosa.
Cuando Midaz encuentra una rúbrica coincidente, anota la operación con dos campos:
  • routeCode — el code de la AccountingRubric resuelta para esa acción y dirección.
  • routeDescription — la descripción de la rúbrica resuelta, poblada junto con routeCode.