Prerrequisitos
Antes de comenzar, instala estas herramientas:
Midaz se ejecuta en macOS (Apple Silicon e Intel) y Linux (amd64). En Windows, ejecútalo a través de WSL2.
Paso 1 — Clonar el repositorio
Clona el repositorio de Midaz y accede al directorio del proyecto.
Paso 2 — Configurar los archivos de entorno
Midaz usa archivos
.env para configurar cada componente. Genéralos a partir de los ejemplos proporcionados:
.env.example a .env en el directorio de cada componente. Los valores predeterminados funcionan para desarrollo local. No necesitas cambiarlos.
Paso 3 — Iniciar la infraestructura
Inicia los servicios de soporte que Midaz necesita: PostgreSQL, MongoDB, Valkey, RabbitMQ, Redpanda y OpenTelemetry.
Paso 4 — Iniciar Midaz
Midaz se ejecuta como un único servicio Ledger que incluye los dominios de onboarding y de transacciones. Inícialo con:
200 OK.
Paso 5 — Crear una organización
Una organización representa la entidad comercial detrás de la operación financiera: tu empresa, un cliente o una institución regulada. En producción, se corresponde con la entidad legal que contiene tus ledgers, cuentas y transacciones.
Guarda el
id devuelto en la respuesta. Lo usas en los próximos pasos como {organization_id}.Paso 6 — Crear un ledger
Un ledger es un libro de registros aislado dentro de una organización. Puedes crear ledgers separados para diferentes dominios financieros, como pagos, cobro de tarifas o liquidación. Cada ledger tiene sus propias cuentas e historial de transacciones.
id devuelto como {ledger_id}.
Paso 7 — Crear un activo
Un activo define la unidad de valor rastreada en el ledger. Puede ser una moneda fiduciaria como BRL o USD. También puede ser puntos de fidelidad, tokens cripto, valores o cualquier unidad personalizada que tu negocio rastree. Debes crear al menos un activo antes de crear cuentas.
Paso 8 — Crear cuentas
Las cuentas representan a los participantes o compartimentos en tu flujo financiero: una billetera de cliente, un pool de ingresos, una cuenta de comerciante o una reserva interna. Cada cuenta se vincula a un único activo y sigue las reglas de contabilidad de partida doble. Necesitas al menos dos cuentas para procesar una transacción: una para debitar (origen) y otra para acreditar (destino). Crea una cuenta de origen:
Paso 9 — Procesar tu primera transacción
Esta es la acción principal: mueve valor entre cuentas con trazabilidad completa. Midaz registra cada transacción como una operación balanceada. Debita el origen y acredita el destino, para que tus libros se mantengan consistentes por diseño.
Esta transacción envía R$ 10,00 de
@revenue a @customer-001. El valor "1000" representa 10,00 en la unidad más pequeña del BRL, centavos.Midaz usa valores enteros para evitar errores de punto flotante. Esta es una práctica estándar en sistemas financieros.Paso 10 — Verificar el saldo
Verifica el saldo de la cuenta de destino para confirmar la transacción.
Explora la API
Midaz puede servir su especificación OpenAPI 3.1 y documentación interactiva de la API. Esta superficie de documentación está desactivada de forma predeterminada. Para activarla, define
LEDGER_HUMA_DOCS_ENABLED=true en components/ledger/.env y reinicia Midaz. Luego accede a:
- Documentación de la API:
http://localhost:3002/v1/docs - Especificación OpenAPI:
http://localhost:3002/v1/openapi.json(o/v1/openapi.yaml)
Observabilidad
Midaz incluye una instancia preconfigurada de Grafana integrada con OpenTelemetry.
- Panel de Grafana:
http://localhost:3100 - Credenciales predeterminadas:
midaz/lerian
Detener Midaz
Para detener todos los servicios:
Próximos pasos
Creando transacciones
Aprende las diferentes formas de crear transacciones, incluyendo JSON, inflow y outflow, y cuándo usar cada una.
Desplegar en producción
Despliega Midaz en Kubernetes usando el chart oficial de Helm.
Configuración de CRM
Gestiona titulares y cuentas alias para conectar identidades del mundo real a tus cuentas de Midaz.
Extender con plugins
Agrega Fees Engine, Pix y otras capacidades a tu despliegue de Midaz.

