> ## 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.

# Conecta Reporter a Midaz

> Conecta Reporter a Midaz mediante una fuente de datos con nombre, protege la base de datos de origen con credenciales de mínimo privilegio y verifica la conexión de principio a fin.

Reporter lee los datos de Midaz mediante una **fuente de datos** con nombre. Una plantilla de informe hace referencia a ese nombre, y Reporter convierte sus marcadores de posición y filtros en consultas contra la base de datos de origen.

Por ejemplo, una plantilla puede hacer referencia a una cuenta de la fuente de datos `midaz_onboarding`:

```text theme={null}
{{ midaz_onboarding.account.name }}
```

Reporter genera consultas `SELECT` para fuentes de PostgreSQL y operaciones `Find` para fuentes de MongoDB. Luego renderiza los datos obtenidos mediante la plantilla. Reporter no escribe de vuelta en las bases de datos de origen ni almacena los resultados de los informes en Midaz.

## Antes de empezar

***

Necesitas lo siguiente:

* Acceso de red de Reporter a la base de datos de Midaz.
* Un usuario de base de datos con permisos de solo lectura.
* Preferiblemente, una réplica de lectura para que las cargas de trabajo de los informes no compitan con las del ledger. La configuración de referencia usa el host `midaz-postgres-replica` como ejemplo.
* La base de datos, los esquemas y las tablas que necesitan tus plantillas.

<Warning>
  Reporter genera operaciones de lectura, pero este comportamiento no impone los permisos de la base de datos. Usa credenciales de base de datos de solo lectura. No le des a Reporter un usuario que pueda insertar, actualizar, eliminar o modificar esquemas.
</Warning>

## Elige quién gestiona la conexión

***

Tu modelo de despliegue determina quién configura la fuente de datos:

* **Gestionado (alojado por Lerian):** el equipo de onboarding configura la conexión con los datos de tu producto Lerian. Confirma el nombre y la disponibilidad de la fuente de datos con tu contacto de Lerian antes de construir plantillas.
* **Autoalojado, de un solo tenant:** tu operador puede establecer la conexión al inicio con variables `DATASOURCE_<NAME>_*` y es responsable de su acceso de red, credenciales, certificados y permisos de base de datos.
* **Autoalojado, multi-tenant:** tu operador crea y gestiona las fuentes de datos de cada tenant mediante la API de Reporter. Establecerlas al inicio con `DATASOURCE_*` no es la vía de configuración multi-tenant.

En todos los modelos, los autores de informes hacen referencia a la fuente de datos configurada mediante su `configName`.

## Configura una fuente de datos con nombre

***

En un despliegue autoalojado de un solo tenant, define la conexión con variables de entorno `DATASOURCE_<NAME>_*`. Establece `DATASOURCE_<NAME>_CONFIG_NAME` con el nombre estable que usarán las plantillas y los filtros. En los despliegues multi-tenant, crea la fuente de datos mediante la API de Reporter en su lugar.

Por ejemplo, si el `configName` es `midaz_onboarding`, las plantillas hacen referencia a `midaz_onboarding` aunque el host o las credenciales de la base de datos cambien más adelante.

Para fuentes de PostgreSQL que exponen más de un esquema, deriva la variable de esquema a partir del `configName`. Un `configName` de `external_db` usa:

```env theme={null}
DATASOURCE_EXTERNAL_DB_SCHEMAS=sales,inventory,reporting
```

Consulta [Configura fuentes de datos externas](/es/products/reporter/using-reporter#configure-external-data-sources) para conocer las variables de conexión y ver ejemplos completos.

## Protege la base de datos de Midaz

***

Usa un rol de base de datos dedicado que pueda conectarse y seleccionar solo las tablas y los esquemas necesarios. Dirige Reporter hacia una réplica de lectura cuando tu topología lo permita. Esto mantiene las consultas de los informes alejadas de la base de datos principal, pero la réplica no sustituye las credenciales de solo lectura: aplica ambos controles.

Rota la credencial mediante tu proceso habitual de gestión de secretos. Mantén el `configName` estable para que las plantillas existentes sigan resolviendo la misma fuente de datos.

## Verifica la conexión

***

1. [Enumera las fuentes de datos](/es/reference/products/reporter/list-data-sources) y confirma que aparece el `configName` esperado.
2. Copia el ID de la fuente de datos de la respuesta.
3. [Obtén la fuente de datos](/es/reference/products/reporter/retrieve-data-source) y confirma que Reporter descubre los esquemas, las tablas y los campos esperados.
4. Crea una plantilla pequeña que haga referencia a un campo conocido y luego genera un informe para verificar toda la ruta de consulta y renderizado.

La conexión está lista cuando la fuente con nombre está disponible, su estructura descubierta es correcta y el informe de prueba devuelve el valor esperado.

## Solución de problemas

***

### La fuente de datos no está disponible

Revisa el enrutamiento de red, el DNS, la configuración de TLS, las credenciales, los permisos de la base de datos y el estado de la réplica. Durante la validación de la plantilla, Reporter puede devolver una advertencia `DATA_SOURCE_UNAVAILABLE` en lugar de bloquear la creación de la plantilla. Corrige la conexión antes de confiar en la salida del informe.

### El nombre de la fuente es ambiguo

Usa un `configName` descriptivo por cada rol de base de datos, como `midaz_onboarding` y `midaz_transaction`. Evita nombres genéricos como `database` o `postgres`, sobre todo cuando distintas fuentes contienen tablas con los mismos nombres. Actualiza la plantilla para que haga referencia a la fuente deseada de forma explícita.

## Próximos pasos

***

* [Crea tu primer informe](/es/products/reporter/reporter-quick-start)
* [Crea plantillas y filtros](/es/products/reporter/using-reporter)
* [Consulta Reporter dentro de una arquitectura de core bancario completa](/es/products/building-a-complete-core-banking)
