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

# Integración con Lerian SLC

> Integración con Lerian SLC: familias de eventos del outbox de CloudEvents para el ciclo de vida de la liquidación de tarjetas y la compensación, webhooks firmados con HMAC, y Midaz y Reporter opcionales.

Lerian SLC es orientado a eventos en sus bordes. Consume los mensajes entrantes de Nuclea. Emite sus hechos de negocio mediante un **outbox transaccional** hacia la columna vertebral de streaming de la plataforma y hacia **webhooks firmados con HMAC**. Cada evento lleva un envelope de **CloudEvents**. Lerian SLC publica un evento solo después de que su cambio de estado se confirma.

## Lo que consume

***

Desde la entrada de Nuclea, mediante la **RSFN**:

* **GEN0015**
* **SLC0001** (vista previa y final de la compensación)
* **SLC0002**
* **PAG0101** (estado operativo)

Lerian SLC correlaciona cada empalme de retorno mediante la clave que repite la contraparte: una línea **RET** por su número de control de 20 posiciones, una línea **ASLC023** o D+1 por su **NUliquid**, y una **PRO** en el nivel de archivo por el número de control del segmento transmitido.

## Lo que emite

***

Cada emisión pasa por el outbox transaccional. Lerian SLC publica un evento si y solo si su cambio de estado se confirma. Cada evento lleva un envelope de CloudEvents. La plataforma lo entrega en la columna vertebral de streaming y a los webhooks firmados con HMAC.

* **Eventos del ciclo de vida de la operación**: uno por cada transición de estado de la operación.
* **`operation.status_relayed`**: el riel retransmitió el estado de una operación a la IF Domicílio.
* **`operation.forward_rejected`**: un envío saliente quedó retenido y necesita acción del operador. La carga útil, no el nombre del evento, indica qué tramo y por qué. `stage` identifica el tramo afectado: `forward` hacia la IF Domicílio o `dispatch` hacia Núclea. En ambos casos, `parkReason` es `attempt_budget_exhausted`. Los ids de operación de la carga útil son los que toma el endpoint de liberación.
* **`cancellation.confirmed_by_domicile`**: la IF Domicílio confirmó una cancelación y el evento lleva el NUliquid.
* **`d1.value_mismatch`**: una divergencia de valor entre D0 y D+1.
* **`certificate.expiring`**: un certificado que se acerca a su vencimiento.
* La familia **`clearing.*`**: `cycle_opened`, `cycle_closed`, `cycle_recalculated`, `preview_available`, `final_available`, `credit_settled`, `credit_returned`, `deposit_required`, `deposit_deadline_approaching` y `divergence_reported`.

Los webhooks del flujo de domicilio llevan el **NUliquid**. Los consumidores lo usan para correlacionar el crédito al comercio de cada operación con su evidencia de retorno del domicilio.

## Punto de contacto con Midaz

***

Lerian SLC es independiente. No contabiliza en un ledger por sí mismo. **Midaz** es un consumidor **opcional**. Midaz puede suscribirse a los eventos de Lerian SLC o llamar a su API para reflejar la liquidación en el ledger. Lerian SLC no depende de Midaz.

## Punto de contacto con Reporter

***

**Reporter** es un consumidor **opcional** de los eventos de Lerian SLC. Reporter también puede actuar como **proveedor opcional y conectable de la materialización de ASLC** mediante plantillas. Lerian SLC conserva la propiedad regulatoria del formato de ASLC. Reporter solo lo genera cuando lo conectas.

## Límite de la ruta del dinero

***

Lerian SLC es responsable de la mensajería de liquidación de tarjetas con Nuclea. No hace la liquidación monetaria en sí. La posición neta se liquida en el SLC y en Nuclea. El tramo de reservas se liquida en BACEN. La familia de liquidación neta diferida del dominio de tarjetas llega a Lerian SLC retransmitida desde [Lerian SILOC](/es/rails/siloc/what-is-lerian-siloc), la conectividad SILOC del lado del participante.

## Convenciones de la API

***

* **Recepción idempotente.** Los envíos canónicos de la API son idempotentes por `external_id`. Lerian SLC rechaza un `external_id` duplicado, de modo que un envío reintentado nunca liquida dos veces.
* **Autenticación en línea.** mTLS y una firma JWS por solicitud protegen cada operación individual en línea sobre REST.
* **Los certificados son referencias, no secretos.** Un certificado registrado lleva su certificado público y una referencia de custodia. Lerian SLC nunca almacena ni devuelve la clave privada.
