Skip to main content
Midaz registra la contabilidad para sistemas financieros en tiempo real. Usa contabilidad estricta de partida doble. Admite productos digitales, finanzas embebidas y operaciones de alto volumen. Midaz es centrado en el ledger: aplica cada saldo, movimiento y asiento a nivel del ledger. Obtienes trazabilidad, auditabilidad y consistencia por defecto. Esta página es el punto de entrada de la sección de Contabilidad. Presenta las primitivas centrales y muestra cómo encajan entre sí. También te dirige a las páginas de referencia y a una guía práctica de la contabilidad de principio a fin.

Cómo se relacionan las primitivas


Midaz convierte eventos de negocio en asientos balanceados del ledger. Un pequeño conjunto de primitivas se construye una sobre otra:

Plan de Cuentas

Esta es la estructura de saldos que tu producto necesita. Midaz no tiene una API dedicada de Plan de Cuentas. En su lugar, la modelas en un ledger a partir de assets, cuentas, segments, portfolios y tipos de cuenta. El campo code de un Asiento Contable (por ejemplo 1.1.1.001) lleva el número de cuenta tradicional de cada asiento.

Tipos de Cuenta

Son clasificaciones reutilizables que asignas a las cuentas. Cada tipo de cuenta tiene un nombre, un valor de clave y una descripción. Usas los tipos de cuenta para agrupar cuentas en tu estructura financiera.

Asientos Contables (Rúbricas)

Una ruta no necesita una entrada para cada acción de transacción. Cuando emite una acción, la entrada debe cumplir los requisitos de débito y crédito específicos de la ruta. Cada entrada configurada contiene la rúbrica de débito, de crédito o ambas, según lo que exige su ruta de operación; cada rúbrica presente tiene un code y una descripción. Con la validación de rutas (accounting.validateRoutes) habilitada, Midaz aplica la rúbrica correspondiente a cada operación, según la acción y la dirección de la operación.

Operaciones

Una transacción produce movimientos del ledger. Una Operación es un único tramo de una transacción — un débito o un crédito sobre una cuenta específica. Midaz valida que los totales de origen, destino y envío de la transacción original coincidan. El conjunto de operaciones devuelto no siempre es un par débito/crédito: la creación pendiente y la cancelación procesan solo tramos del origen. Cada operación lleva un transactionId, un amount y un assetCode. Cuando la validación de rutas (accounting.validateRoutes) está habilitada en el ledger y la ruta de operación define asientos contables, la operación también lleva un routeCode y un routeDescription de la rúbrica resuelta.
Con accounting.validateRoutes habilitado, cuando una ruta de operación define un asiento contable, Midaz resuelve una rúbrica para la acción y la dirección de la operación. Escribe el code de la rúbrica en el routeCode de la operación y la vincula con un transactionId. En conjunto, estos campos ofrecen una pista de auditoría completa: transacción → operación → rúbrica. Tus equipos rastrean qué regla contable se aplicó a cada movimiento, sin búsquedas adicionales.
En resumen, el flujo es:
Diagrama que muestra el flujo de trabajo de las primitivas contables

Flujo de trabajo de las primitivas contables

Midaz valida que los totales de origen, destino y envío de la transacción original coincidan. Las respuestas del ciclo de vida no siempre contienen ambas direcciones: la creación pendiente y la cancelación procesan solo tramos del origen. Cada movimiento permanece rastreable para auditoría y cumplimiento.
¿Eres nuevo en la contabilidad en Midaz? Comienza con la Guía de Contabilidad. Te ofrece un recorrido paso a paso desde el plan de cuentas hasta un ejemplo funcional de pago Pix.