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

# Variables de entorno

> Variables de entorno en el momento del despliegue para Lerian SILOC: runtime, conectividad de la cola de liquidación de SILOC, persistencia, autenticación y certificados.

Lerian SILOC es la integración de mensajería nativa de Lerian para SILOC, el sistema de liquidación diferida neta que Núclea opera para los flujos de boleto y tarjetas. Estableces estas variables en el momento del despliegue. Un cambio surte efecto solo después de que reinicies el servicio. Para conocer los parámetros que se comportan igual en todos los servicios de Lerian en Go (postura de despliegue, telemetría y convenciones de almacenamiento de datos), consulta [Fundamentos de configuración de BYOC](/es/reference/byoc-configuration).

<Note>
  Lerian SILOC es un servicio en etapa inicial. Esta página documenta la superficie de configuración verificada actual. Espera que crezca a medida que el riel madure. Por ejemplo, Lerian planea un plano de configuración en tiempo de ejecución de systemplane, pero aún no lo expone. Trata la referencia de entorno propia del servicio como la fuente de verdad para una versión dada.
</Note>

En las siguientes tablas, **Obligatorio** marca una variable que debes establecer, ya sea de forma global o bajo la condición indicada. `—` significa que no hay valor predeterminado.

## Runtime y servidor

| Variable          | Descripción                                                                                                                                                                                                                         | Predeterminado              | Obligatorio |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------- | ----------- |
| `SERVICE_NAME`    | Identificador del servicio usado en los logs y la telemetría.                                                                                                                                                                       | Predeterminado del servicio | No          |
| `ENV_NAME`        | Etiqueta del entorno de runtime. `production` activa las verificaciones más estrictas de autenticación y TLS que se describen abajo.                                                                                                | `development`               | No          |
| `DEPLOYMENT_MODE` | Postura de aplicación de TLS (`local`, `byoc`, `saas`). `saas` hace que TLS sea obligatorio y el servicio se niega a iniciar sin él. Consulta [Modo de despliegue y TLS](/es/reference/byoc-configuration#deployment-mode-and-tls). | —                           | No          |
| `LOG_LEVEL`       | Nivel de verbosidad de los logs (`debug`, `info`, `warn`, `error`).                                                                                                                                                                 | `info`                      | No          |
| `SERVER_PORT`     | Puerto de escucha HTTP. Las sondas de liveness y readiness se vinculan a este mismo puerto.                                                                                                                                         | `9820`                      | No          |

## Autenticación

Lerian SILOC autoriza las rutas protegidas mediante Access Manager. Funciona con un cierre predeterminado: la autenticación permanece activa a menos que la deshabilites.

| Variable       | Descripción                                                                                             | Predeterminado | Obligatorio   |
| -------------- | ------------------------------------------------------------------------------------------------------- | -------------- | ------------- |
| `AUTH_ENABLED` | Exige la autenticación de Access Manager en las rutas protegidas. Debe ser `true` en producción y SaaS. | `true`         | En producción |
| `AUTH_ADDRESS` | Dirección del servicio Access Manager. Debe ser una URL `https://` válida en producción y SaaS.         | —              | En producción |

## PostgreSQL

La réplica recurre al host primario cuando dejas `DB_REPLICA_HOST` vacío (predeterminado de nodo único).

| Variable          | Descripción                                                                                                       | Predeterminado | Obligatorio  |
| ----------------- | ----------------------------------------------------------------------------------------------------------------- | -------------- | ------------ |
| `DB_HOST`         | Host de PostgreSQL.                                                                                               | —              | Sí (en vivo) |
| `DB_PORT`         | Puerto de PostgreSQL.                                                                                             | `5432`         | No           |
| `DB_USER`         | Usuario de la base de datos.                                                                                      | —              | Sí (en vivo) |
| `DB_PASSWORD`     | Contraseña de la base de datos. Sensible: inyéctala en el momento del despliegue; nunca la incluyas en un commit. | —              | Sí (en vivo) |
| `DB_NAME`         | Nombre de la base de datos.                                                                                       | —              | Sí (en vivo) |
| `DB_SSLMODE`      | Modo TLS de libpq. Usa `require` o un modo más estricto en producción.                                            | `disable`      | No           |
| `DB_REPLICA_HOST` | Host opcional de réplica de lectura. Recurre a `DB_HOST` cuando no está establecido.                              | —              | No           |

## Redis

| Variable         | Descripción                                                                                                                  | Predeterminado | Obligatorio |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------- | -------------- | ----------- |
| `REDIS_ADDRESS`  | Host y puerto de Redis/Valkey.                                                                                               | —              | No          |
| `REDIS_PASSWORD` | Contraseña de Redis. Sensible.                                                                                               | —              | No          |
| `REDIS_DB`       | Número de base de datos de Redis.                                                                                            | `0`            | No          |
| `REDIS_TLS`      | Establece la postura de TLS que reporta la verificación de readiness de Redis. No configura TLS para el transporte de Redis. | `false`        | No          |

## Conectividad de liquidación de SILOC

Lerian SILOC mantiene una única conexión IBM MQ con el gestor de colas de liquidación de SILOC de Núclea. Establecer `MQ_HOST`, `MQ_CHANNEL`, `MQ_QUEUE_MANAGER`, `MQ_SEND_QUEUE` o `MQ_RECEIVE_QUEUE` hace que el servicio valide todo el descriptor de conexión de forma cerrada en el arranque. `MQ_PORT`, `MQ_TLS_ENABLED` y `MQ_SSL_KEY_REPOSITORY` por sí solos no activan esa validación.

| Variable                | Descripción                                                                                                                                                                                                                                                                                                         | Predeterminado | Obligatorio            |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | ---------------------- |
| `MQ_HOST`               | Host del gestor de colas.                                                                                                                                                                                                                                                                                           | —              | Sí (SILOC en vivo)     |
| `MQ_PORT`               | Puerto de escucha del gestor de colas.                                                                                                                                                                                                                                                                              | —              | Sí (SILOC en vivo)     |
| `MQ_QUEUE_MANAGER`      | Nombre del gestor de colas. Debe ser el gestor de colas de liquidación de SILOC de Núclea.                                                                                                                                                                                                                          | —              | Sí (SILOC en vivo)     |
| `MQ_CHANNEL`            | Canal de conexión de servidor. Debe coincidir con el patrón de canal de SILOC de Núclea `C02992335.<ISPB>.1`, donde `<ISPB>` es el ISPB de 8 dígitos del participante.                                                                                                                                              | —              | Sí (SILOC en vivo)     |
| `MQ_SEND_QUEUE`         | Cola de envío saliente.                                                                                                                                                                                                                                                                                             | —              | Sí (SILOC en vivo)     |
| `MQ_RECEIVE_QUEUE`      | Cola de recepción entrante.                                                                                                                                                                                                                                                                                         | —              | Sí (SILOC en vivo)     |
| `MQ_TLS_ENABLED`        | Habilita TLS mutuo en el canal MQ. Debe ser `true` en producción.                                                                                                                                                                                                                                                   | `false`        | En producción          |
| `MQ_SSL_KEY_REPOSITORY` | Ruta al repositorio de claves de GSKit (`MQSSLKEYR`) que respalda TLS de MQ. La clave privada vive aquí, nunca en una variable de entorno. Obligatoria cuando `MQ_TLS_ENABLED=true`.                                                                                                                                | —              | Si TLS está habilitado |
| `CAMARA_PAG_ISPB`       | El ISPB de 8 dígitos de la câmara de SILOC. Cada mensaje de liquidación entrante se autoriza contra este remitente antes de tener cualquier efecto semántico. Coincide con el prefijo del canal de liquidación, así que anúlalo solo para una câmara de prueba. Un valor que no tenga 8 dígitos impide el arranque. | `02992335`     | No                     |

## Certificados

| Variable                  | Descripción                                                                                                                                                                                                  | Predeterminado | Obligatorio |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------- | ----------- |
| `CERT_READINESS_MIN_DAYS` | Umbral de días para el vencimiento que registra una advertencia para un certificado actualmente válido. No degrada el readiness únicamente porque el certificado esté cerca de vencer. Debe ser mayor que 0. | `30`           | No          |

## Confianza y custodia

| Variable                    | Descripción                                                                                                   | Predeterminado | Obligatorio |
| --------------------------- | ------------------------------------------------------------------------------------------------------------- | -------------- | ----------- |
| `SFN_TRUST_MANIFEST_PATH`   | Ruta al manifiesto de confianza de SFN usado para validar el material de confianza de los mensajes regulados. | —              | No          |
| `SFN_CUSTODY_CONFIG_PATH`   | Ruta a la configuración del proveedor de custodia.                                                            | —              | No          |
| `SFN_CUSTODY_CACHE_ENTRIES` | Número máximo de entradas de custodia que se mantienen en la caché en memoria.                                | `16`           | No          |

<h2 id="observability">
  Observabilidad
</h2>

| Variable                       | Descripción                                                                                                                                                                                                                                                                                                                                                                                    | Predeterminado | Obligatorio                      |
| ------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | -------------------------------- |
| `ENABLE_TELEMETRY`             | Habilita la instrumentación de OpenTelemetry.                                                                                                                                                                                                                                                                                                                                                  | `false`        | No                               |
| `OTEL_EXPORTER_OTLP_ENDPOINT`  | Endpoint del colector OTLP.                                                                                                                                                                                                                                                                                                                                                                    | —              | Si la telemetría está habilitada |
| `STREAMING_BROKERS`            | Direcciones de broker para el despachador de hechos obligatorio de SILOC. El streaming no tiene modo deshabilitado: una configuración de broker faltante o inválida impide el arranque, en lugar de dejar los hechos como `PENDING`. Configura los ajustes compartidos `STREAMING_*` como se describe en [Streaming y outbox](/es/reference/byoc-configuration#streaming-and-outbox).          | —              | Sí                               |
| `STREAMING_CLOUDEVENTS_SOURCE` | Identidad de origen de CloudEvents. Cópiala exactamente del paquete de despliegue de Lerian actual. Un valor diferente, incluidos espacios en blanco al inicio o al final, impide el arranque; el servicio usa esa identidad para derivar sus temas de broker y el ámbito de control de acceso.                                                                                                | —              | Sí                               |
| `LDL_FACT_CONSUMER_ENABLED`    | Habilita el consumidor de los hechos de liquidación LDL autoritativos de SPB. Cada hecho completa la instrucción de SILOC que autoriza. Con `true`, se requieren `STREAMING_BROKERS` y el almacén de datos de PostgreSQL, y el servicio se niega a iniciar sin ellos. Deshabilitado, su verificación de readiness reporta `skipped`; en ejecución, la verificación no condiciona el readiness. | `false`        | No                               |

## Salud y readiness

Lerian SILOC expone `GET /health` (liveness), `GET /readyz` (readiness) y `GET /version` en el puerto HTTP principal. El servicio arranca y atiende estas sondas incluso antes de que sus almacenes de datos y la conexión de liquidación sean accesibles. `/readyz` reporta la salud de cada dependencia. Consulta [Salud y readiness](/es/reference/health-and-readiness) para conocer el contrato de las sondas.
