Saltar al contenido principal
Lerian SLC es orientado a eventos en sus bordes. Consume los mensajes entrantes de Núclea. Escribe sus hechos de negocio en un outbox transaccional, que los entrega a las suscripciones de webhook. Cuando el streaming está activado, el outbox también publica eventos en la columna vertebral de streaming de la plataforma. En la columna vertebral de streaming, cada evento es un registro de CloudEvents. Un webhook entrega el payload del evento como JSON.

Lo que consume


Desde Núclea, mediante la RSFN:
  • GEN0015 (hay un archivo disponible para retirar, lo que inicia la obtención de los retornos)
  • SLC0001 (vista previa y final de la compensación)
  • SLC0002
  • PAG0101 (estado operativo)
En el bus entrante de SFN:
  • Desde Lerian SILOC, los mensajes de ciclo y de financiamiento de SILOC: PAG0102, PAG0103 y LDL0021.
  • Desde Lerian SILOC, los avisos de liquidación bruta y bilateral: LTR0001, LTR0007 y LTR0012.
  • El resultado de cada comando de liquidación que envía Lerian SLC.
Desde Núclea por REST, Lerian SLC sondea los veredictos SLC0915, los retornos PRO / ERR / RET y los mensajes de retorno de ASLC. Correlaciona cada empalme de retorno mediante la clave que repite la contraparte: una línea RET o un veredicto SLC0915 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 archivo transmitido.

Lo que emite


Los eventos del ciclo de vida y las retransmisiones de estado se escriben en la misma transacción que el cambio de estado que reportan.
  • Eventos del ciclo de vida de la operación: uno por cada estado al que entra la operación, desde operation.created hasta operation.cancelled. operation.manually_advanced reporta una intervención auditada. operation.d1_rejected reporta un crédito que la IF Domicílio rechazó después de que se liquidó.
  • operation.status_relayed: el riel retransmitió la respuesta de la IF Domicílio a la credenciadora.
  • operation.forward_rejected: un envío saliente quedó retenido y necesita acción del operador. El payload, 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. operationIdsScope indica si operationIds está completo para el archivo o si es solo una muestra. GET /v1/operations?transmitHold=parked lista cada operación retenida.
  • operation.verdict_unresolved: el veredicto de Núclea sobre un envío no se resolvió en una aceptación ni en un rechazo, así que la operación no avanzó.
  • Alertas de calendario: operation.stuck_detected, d1.missing_confirmation, confirmation.overdue y schedule.cutoff_approaching.
  • 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, deposit_required, deposit_deadline_approaching y divergence_reported.
  • funding.deposit_failed: la institución informó que no pudo hacer un depósito.
  • report.request_acknowledged y report.result_available: Núclea confirmó la recepción de una solicitud de informe, o su resultado está disponible.

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.

Límite de la ruta del dinero


Lerian SLC es responsable de la mensajería de liquidación de tarjetas con Núclea. No hace la liquidación monetaria en sí. La posición neta se liquida en el SLC y en Núclea. 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, la conectividad SILOC del lado del participante.

Convenciones de la API


  • Recepción idempotente. La recepción de operaciones rechaza un externalId que ya usa otra operación, con 409 y SLC-0104. En un lote, una línea con un externalId duplicado se rechaza sola, y su error nombra la operación existente.
  • Escrituras idempotentes. La recepción de operaciones, la recepción por lotes y la confirmación de depósito aceptan un header X-Idempotency opcional. Las operaciones de clave de firma y de comando de liquidación lo exigen y responden 400 sin él.
  • Webhooks firmados. Lerian SLC firma cada webhook con HMAC-SHA256 y envía la firma en X-Webhook-Signature.
  • 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, no la clave privada.