
Figura 1. Midaz y sus dominios interconectados y estructura modular.
Componentes centrales
Midaz
En el centro de todo. Midaz coordina cada elemento, desde la persistencia de datos hasta la lógica de negocio, para que puedas enfocarte en lo esencial.Capa de datos
Toda la información fluye hacia la capa de datos persistente, asegurando durabilidad, consistencia y rendimiento en todo el sistema.Dominios y relaciones
Organizaciones
Cada organización representa un entorno distinto que utiliza Midaz. Puede contener uno o varios Ledgers, dependiendo de cómo estructures tus datos.Ledgers
Los Ledgers son donde ocurre toda la actividad financiera. Rastrea saldos, almacena activos e impulsa transacciones. Cada Ledger pertenece a una organización. Desde aquí, el sistema se ramifica en:- Activos: definen qué tipo de valor se rastrea.
- Portafolios: agrupan cuentas relacionadas bajo un propósito compartido.
Activos
Los activos definen las unidades de valor, como BRL, USD, puntos o tokens. Cada cuenta está vinculada a un activo específico.Portafolios
Las Portafolios agrupan cuentas por lógica de negocio. Puedes tener tantas portafolios como necesites para organizar tu estructura financiera. Cada cartera contiene una o más cuentas.Cuentas y Segmentos
Las Cuentas están vinculadas a Portafolios y representan saldos individuales. Se agrupan por Segmentos, que te ayudan a aislar datos por cliente, producto, región o cualquier otra dimensión. Los segmentos facilitan el seguimiento y la elaboración de informes con precisión. Además, las Cuentas pueden clasificarse lógicamente por Tipos de Cuenta, los cuales definen la naturaleza y el propósito de las cuentas dentro de la estructura financiera, permitiendo un enrutamiento de transacciones adecuado y la validación operativa en diferentes categorías de cuentas.Saldos
Un Saldo representa el monto neto que una Cuenta mantiene de un Activo determinado en un Ledger específico.- Una cuenta puede tener múltiples saldos, cada uno identificado por una
balanceKey(por ejemplo,default,collateral,operational), para particionar fondos sin dividir cuentas. - Las cuentas externas están limitadas a un único saldo (predeterminado).
- Si se omite
balanceKeyen una transacción, se utiliza el saldo predeterminado. - Los saldos se derivan automáticamente de las operaciones del Ledger. Pueden ser listados, consultados o (en escenarios de administración/pruebas) ajustados manualmente.
- La clave de caché (Valkey) también incluye
balanceKeyen su formato:<org_id>:<ledger_id>:<account_alias>:<balance_key>.
Transacciones
Las transacciones mueven valor entre cuentas. Cada transacción se compone de Operaciones (débitos y créditos). Esto mantiene tu lógica consistente, trazable y alineada tanto con tu modelo de negocio como con tus políticas contables.Entidades de Enrutamiento de Transacciones
Las entidades de Enrutamiento de Transacciones amplían las capacidades de Midaz creando un ecosistema estructurado que garantiza anotaciones correctas y direcciones de flujo financiero adecuadas. Se componen de:- Rutas de Operación (Operation Routes): Definen comportamientos atómicos de transacción, especificando cómo se anota y dirige cada movimiento financiero de acuerdo con reglas de negocio predefinidas y estándares contables.
- Rutas de Transacción (Transaction Routes): Orquestan múltiples Rutas de Operación en eventos financieros balanceados, aplicando la validación de doble entrada y manteniendo la integridad de la transacción en todas las cuentas.
En resumen
Midaz te ofrece una estructura potente y modular:
- Las Organizaciones gestionan Ledgers.
- Los Ledgers contienen activos, portafolios y estructuras contables.
- Las Portafolios contienen cuentas, agrupadas por segmento.
- Las Transacciones mueven valor y desencadenan tratamientos contables.
- Todos los datos están sincronizados, son trazables y están listos para la elaboración de informes financieros.

