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

# Cómo funciona Lerian STA

> Cómo funciona Lerian STA: envío saliente y descubrimiento de archivos entrantes hacia BACEN, máquina de estados del protocolo, integridad SHA-256, presupuestos de reintento y acciones del operador.

Lerian STA mueve archivos en dos direcciones. Cada intercambio es una **transferencia**, un único archivo que se mueve entre la institución y BACEN. Un **número de protocolo** rastrea la transferencia a lo largo del ciclo de vida del protocolo de BACEN. Cada extremo verifica el **SHA-256**.

## Envío saliente

***

La institución, o un producto upstream de Lerian, entrega a Lerian STA un archivo para BACEN. Lerian STA obtiene entonces un **número de protocolo** de BACEN. Sube los bytes del archivo. BACEN valida los bytes contra el **SHA-256** declarado.

La transferencia avanza a través del ciclo de vida de BACEN:

| Estado                         | Significado                                                                                                                                                                                                                                                          |
| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Protocolo generado**         | BACEN asignó el número de protocolo.                                                                                                                                                                                                                                 |
| **Transmitiendo**              | Lerian STA está subiendo los bytes.                                                                                                                                                                                                                                  |
| **Verificación de integridad** | BACEN está validando el SHA-256 declarado.                                                                                                                                                                                                                           |
| **Recibido**                   | BACEN recibió el archivo.                                                                                                                                                                                                                                            |
| **Entregado**                  | BACEN entregó el archivo a su destino.                                                                                                                                                                                                                               |
| **En procesamiento**           | BACEN está procesando el archivo.                                                                                                                                                                                                                                    |
| **Aceptado**                   | BACEN aceptó el archivo — un éxito terminal.                                                                                                                                                                                                                         |
| **Rechazado / Inconsistente**  | BACEN rechazó el archivo — un fallo terminal.                                                                                                                                                                                                                        |
| **Respondido fuera de banda**  | Lerian STA encontró una respuesta entrante separada para el protocolo. Este estado terminal local confirma la llegada de la respuesta, no si BACEN aceptó o rechazó el archivo; registra el historial de auditoría pero no emite ningún evento de resultado externo. |

La carga reintenta dentro de un **presupuesto acotado**. Una vez que Lerian STA agota el presupuesto de reintentos, cancela la transferencia. Cada protocolo también lleva un **TTL** acotado de reloj de pared (44 horas de forma predeterminada). Lerian STA debe terminar la carga antes de que BACEN haga expirar el protocolo.

## Descubrimiento y descarga entrantes

***

Lerian STA consulta a BACEN por archivos disponibles, por cada tenant activo, con una periodicidad configurada.

Para cada archivo, Lerian STA compara el **código de sistema de BACEN** del archivo contra las **configuraciones de fuente entrante** del tenant. Luego descarga los bytes. Verifica los bytes contra el **SHA-256** reportado por BACEN. Almacena el archivo de forma duradera en el almacenamiento de objetos.

Una discrepancia de hash o un fallo de descarga reintenta dentro de un presupuesto acotado. Una vez que Lerian STA agota el presupuesto, pone en cuarentena la transferencia hacia un fallo terminal (inconsistente o cancelada). No entrega el archivo a su producto de origen.

## Acciones del operador

***

Un operador solo puede actuar donde el estado y la configuración de la transferencia lo permiten:

* **Cancelar** solo cuando la máquina de estados canónica permite una transición a `Canceled`. No está permitido desde todos los estados no terminales.
* **Reintentar** una transferencia saliente solo cuando es no terminal, tiene presupuesto de carga restante, y su TTL de protocolo no ha expirado.
* **Marcar como urgente** solo para una transferencia entrante en `AvailableForDownload` cuya configuración de fuente tiene la urgencia habilitada. De lo contrario, falla de forma cerrada.

Lerian STA también cancela una transferencia cuando su protocolo de BACEN expira.
