> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Flujo de trabajo recomendado

> Sigue el flujo de onboarding recomendado para configurar Organizaciones, Ledgers, Activos y Cuentas paso a paso en Midaz.

Has explorado cómo funciona Midaz—desde sus entidades centrales hasta su arquitectura, lógica y seguridad. Ahora es el momento de poner ese conocimiento en acción.

Ya sea que estés lanzando un producto fintech o modernizando sistemas internos, **los flujos de trabajo estructurados son clave para traducir los conceptos de Midaz en operaciones financieras del mundo real**. Los gerentes de producto e ingenieros juegan un papel central en este proceso—especialmente en el Modelo Comunitario, donde las características principales se alojan por cuenta propia y sin plugins.

Piensa en cada transacción como un evento de libro contable. Con esa mentalidad, los flujos de trabajo descritos aquí te ayudarán a aplicar todo lo que has aprendido—asegurando claridad, trazabilidad y auditabilidad desde el principio.

## Configuración y gestión de Libros Contables

***

Al incorporarte a Midaz, sigue estos pasos clave para establecer una base sólida para tu infraestructura financiera:

<Frame caption="Figura 1. Flujo de trabajo para configurar y gestionar libros contables.">
  <img src="https://mintcdn.com/lerian-49cb71fc/ZrZBZTM4DWnrahSd/images/es/d2/setup-ledgers.svg?fit=max&auto=format&n=ZrZBZTM4DWnrahSd&q=85&s=5c9f48daf47f4c3b1091804610dcd5ab" alt="Flujo de trabajo para configurar y gestionar ledgers durante la incorporación a Midaz" width="382" height="1194" data-path="images/es/d2/setup-ledgers.svg" />
</Frame>

### Paso 1: [Configurar la Organización](/es/reference/midaz/create-an-organization)

Tu organización en Midaz representa tu banco o entidad comercial. Si aún no se ha creado, configúrala a través de la Consola o API. Asegúrate de que todos los detalles principales, como el nombre legal y los identificadores, sean precisos, ya que este contexto sustentará todas las operaciones del libro contable.

### Paso 2: [Crear los Libros Contables](/es/reference/midaz/create-a-ledger)

Crea un Libro Contable bajo tu organización para mantener registros financieros. Es común comenzar con un libro contable principal para todas las operaciones orientadas al cliente (por ejemplo, "Libro Contable Bancario Principal"). Inicialmente, no contendrá cuentas, pero sirve como la capa base para toda la actividad financiera.

### Paso 3: [Definir tipos de Activos](/es/reference/midaz/create-an-asset)

Registra los activos que tu libro contable admitirá—esto puede incluir monedas (por ejemplo, BRL, USD), puntos o incluso tokens cripto. Estos activos se utilizarán en toda tu configuración de cuentas y transacciones. Los activos pueden extenderse a medida que evoluciona tu cartera de productos.

### Paso 4: [Crear Tipos de Cuenta](/es/reference/midaz/create-an-account-type)

Si planeas aplicar reglas de clasificación de cuentas, define tus **Tipos de Cuenta**. Estos representan categorías estructuradas (por ejemplo, `user_wallet`, `treasury`, `revenue`) que luego pueden referenciarse durante la creación de cuentas o la validación de transacciones.

<Note>
  Los Tipos de Cuenta son opcionales por defecto, pero cuando están **habilitados**, se vuelven obligatorios durante la creación de cuentas para garantizar la consistencia de clasificación en todo tu libro contable.
</Note>

Cada Tipo de Cuenta tiene un `keyValue`, que debe ser único y alfanumérico (se permiten guiones y guiones bajos). Estos identificadores se utilizarán en flujos de validación y rutas de transacción.

### Paso 5: Configurar Rutas Contables

Usa **Rutas de Operación** y **Rutas Contables** (el recurso `transactionRoute` en la API) para definir y aplicar validación estructurada para tus transacciones.

* Comienza [**creando las Rutas de Operación**](/es/reference/midaz/create-an-operation-route), que validan cada tramo de la transacción individualmente (por ejemplo, el débito debe provenir de una cuenta de tipo `user_wallet`, y el crédito debe ir al alias `@external/BRL`).
* Luego, [**crea la Ruta de Transacción**](/es/reference/midaz/create-transaction-route), combinando las rutas de operación individuales en un flujo completo (por ejemplo, una transacción de retiro de efectivo con validaciones específicas de débito y crédito).

<Warning>
  Una vez que el enrutamiento esté configurado y la validación esté habilitada en el libro contable, todas las transacciones enviadas deben cumplir con la estructura de enrutamiento definida—de lo contrario, serán rechazadas.

  El campo `route` en el payload de la transacción debe incluir el ID de la **Ruta de Transacción** que creaste.
</Warning>

### Paso 6: Gestionar tus Libros Contables

Mantén tus libros contables limpios y escalables con las siguientes mejores prácticas:

* Usa el sistema RBAC de Midaz para asignar permisos y controlar el acceso por libro contable.
* Planifica libros contables separados cuando sea necesario (por ejemplo, "Pruebas", "Interno", "Multi-entidad"), y documenta la propiedad.
* Revisa y concilia periódicamente los datos del libro contable, especialmente al integrar con sistemas de liquidación externos.
* Midaz aplica lógica de doble entrada, por lo que cada movimiento es completamente rastreable—sin cambios manuales de saldo.

## Configuración de Cuentas, Portafolios y Segmentos

***

Esta sección te ayuda a estructurar los datos del cliente y los derechos de productos en Midaz.

<Frame caption="Figura 2. Flujo de trabajo para configurar Cuentas, Portafolios y Segmentos.">
  <img src="https://mintcdn.com/lerian-49cb71fc/SEOef3JqTInYAAau/images/es/d2/accounts-portfolios-segments.svg?fit=max&auto=format&n=SEOef3JqTInYAAau&q=85&s=b72760bfbdd1760b6aaccdbcbcdb0566" alt="Flujo de trabajo para configurar cuentas, portafolios y segmentos con el fin de estructurar los datos de clientes y los derechos de producto en Midaz" width="406" height="1392" data-path="images/es/d2/accounts-portfolios-segments.svg" />
</Frame>

### Paso 1: [Crear un Portafolio de cliente](/es/reference/midaz/create-a-portfolio)

Comienza creando un **Portafolio** para cada nuevo cliente. Los Portafolios actúan como los contenedores lógicos para las cuentas. Vincula cada portafolio a tu CRM o sistema interno a través de metadatos (por ejemplo, ID de Entidad).

### Paso 2: [Configurar Cuentas de cliente](/es/reference/midaz/create-an-account)

Cada producto financiero o activo que posee el cliente se convierte en una **Cuenta** separada bajo su portafolio.

* Una cuenta corriente en BRL y una cuenta de ahorros en USD son cuentas separadas.
* Si [los Tipos de Cuenta](/es/reference/midaz/create-an-account-type) están habilitados, el campo `type` se vuelve obligatorio y debe coincidir con uno de los valores pre-registrados.
* Usa alias de cuenta para simplificar las operaciones posteriores.

<Tip>
  Los Tipos de Cuenta ayudan a estandarizar la categorización de cuentas en todo tu ecosistema—mejorando el enrutamiento, los informes y las integraciones.
</Tip>

### Paso 3: [Aplicar segmentación](/es/reference/midaz/create-a-segment)

Usa Segmentos para categorizar portafolios o cuentas (por ejemplo, `standard`, `vip`, `enterprise`). Estas etiquetas permiten lógica dinámica (por ejemplo, exenciones de comisiones, interés escalonado) basada en la segmentación del cliente.

### Paso 4: Establecer subcuentas (opcional)

Para organizaciones o casos especializados, puedes configurar subcuentas. Usa convenciones de nomenclatura claras para mantener la trazabilidad (por ejemplo, "Acme USD - Nómina").

### Paso 5: [Establecer el saldo inicial](/es/reference/midaz/create-a-transaction-using-json)

Usa la **API de Transacciones** para inyectar el saldo de apertura. Esto asegura trazabilidad y cumplimiento de doble entrada:

* Debita la fuente de financiamiento.
* Acredita la nueva cuenta.
* No actualices manualmente los saldos—Midaz rastrea cada valor a través de transacciones.

### Paso 6: Verificar y revisar

Antes de proceder con las operaciones:

* Confirma que las cuentas se crearon con los activos y tipos correctos.
* Valida los saldos de las cuentas.
* Verifica si se ha aplicado la segmentación.
* Confirma la configuración a través de la API o la Consola.

### Paso 7: Gestión continua de Cuentas

Mantén la integridad del sistema gestionando operaciones de ciclo de vida a través de API o Consola:

* Actualiza los detalles de la cuenta según sea necesario.
* Cierra cuentas solo una vez que el saldo llegue a cero.
* Reclasifica portafolios/cuentas si cambia la segmentación.

## Implementación de gestión de transacciones de doble entrada

***

Midaz garantiza la integridad del libro contable mediante la aplicación estricta de la lógica de doble entrada. Cada transacción debe contener al menos una operación de débito y una de crédito.

<Frame caption="Figura 3. Flujo de trabajo para implementar gestión de transacciones de doble entrada">
  <img src="https://mintcdn.com/lerian-49cb71fc/SEOef3JqTInYAAau/images/es/d2/double-entry-transaction-management.svg?fit=max&auto=format&n=SEOef3JqTInYAAau&q=85&s=0fc50db31b6b07c3bdc76aa1bc2c19c3" alt="Flujo de trabajo para implementar la gestión de transacciones por partida doble, donde cada transacción lleva al menos una operación de débito y una de crédito" width="398" height="1376" data-path="images/es/d2/double-entry-transaction-management.svg" />
</Frame>

### Paso 1: Estructurar la transacción

Comienza estructurando tu objeto **Transacción**:

* **Una vez que tu Ruta de Transacción esté configurada**, inserta su ID en el campo `route` de tu payload de transacción.
* Define las cuentas de origen y destino, incluyendo detalles de activo y valor.
* Agrega metadatos descriptivos para garantizar trazabilidad y claridad.

### Paso 2: Elegir tu método de integración

Puedes definir transacciones a través de:

* **DSL de Transacciones (Lenguaje Gold)** – una sintaxis legible por humanos para prototipado rápido.
* **API de Transacciones** – para control completo y ejecución programática.

Ambos enfoques son totalmente compatibles y producen entradas de libro contable idénticas.

### Paso 3: Aplicar validación de doble entrada

Midaz verifica automáticamente que la suma de créditos coincida con la suma de débitos. Las discrepancias o violaciones estructurales rechazarán la transacción al enviarla.

### Paso 4: Implementar idempotencia

Usa claves de idempotencia para prevenir duplicados de reintentos de red. Midaz reconocerá claves repetidas y evitará el procesamiento duplicado.

### Paso 5: Rastrear y conciliar transacciones

Usa herramientas integradas para:

* Rastrear transacciones enviadas y publicadas.
* Auditar metadatos y marcas de tiempo.
* Conciliar lotes de transacciones para cumplimiento.

### Paso 6: Enviar correcciones a través de reversiones

En lugar de editar o eliminar transacciones, envía entradas correctivas. Cada reversión está vinculada a su original a través de los metadatos de la transacción para trazabilidad completa.

### Paso 7: Optimizar flujos de trabajo complejos

Usa transacciones de múltiples operaciones para:

* Procesar acumulaciones de intereses.
* Ejecutar pagos por lotes.
* Manejar flujos condicionales con lógica de enrutamiento.

Midaz garantiza atomicidad en todos los tramos—o la transacción completa se publica, o nada lo hace.
