Canales de eventos
Lerian STA publica en estos canales:
- Un canal de auditoría que lleva el registro de auditoría de Lerian STA: cambios de credenciales, cambios de estado de las transferencias, acciones de operador y resultados de los archivos entrantes. Alimenta el log de auditoría de Lerian STA y se ejecuta cuando
AUDIT_PUBLISHER_ENABLEDestrue. - Un canal de negocio firmado, enrutado como
sta.{direction}.{sanitized-source-product}con un fallbackunrouted, para los consumidores de productos externos. Lleva seis resultados terminales de transferencia. El campostatusdel payload nombra el estado (Accepted,Rejected,Inconsistent,Canceled,DownloadFinishedoNotAuthorized), youtcomeindicaSUCCESS,FAILUREoCANCELED. También lleva los resultados de presentación de Reporter, enrutados por el nombre del resultado. - El stream de eventos, cuando
STREAMING_ENABLEDestrue. Lleva los mismos resultados como CloudEvents del tipostudio.lerian.br-sta.br_sta_transfers.<event>, donde<event>esaccepted,rejected,inconsistent,canceled,download_finishedodownload_not_authorized. Cada evento lleva el tenantdefaultence-tenantid.
error_code solo para los resultados de fallo y de cancelación, y una cancelación del operador lo deja vacío. Los eventos de éxito entrante llevan el comprobante.
El comprobante
Al completarse una descarga entrante, Lerian STA emite su evento terminal download-finished, enrutado por el producto de origen del archivo. El evento lleva un comprobante (
object_key, sha256, size_bytes y file_name), pero no los bytes en sí. Para los hechos terminales entrantes, document_code lleva el código observado de BACEN. Cuando el mnemónico persistido y el código se corroboran entre sí, document_type lleva el mnemónico. De lo contrario, conserva el código por compatibilidad. Una cancelación del operador de una transferencia entrante no lleva ninguno de los dos campos.
El producto de dominio consumidor se suscribe a su propia clave. Obtiene el artefacto duradero por su clave de objeto y vuelve a verificar el SHA-256. Luego procesa el archivo. Lerian STA es el límite de transporte e integridad. El producto consumidor es dueño del asiento en el ledger.
Límite del ledger
Lerian STA no escribe en el ledger de la institución. Entrega el archivo y el comprobante. El producto consumidor es dueño de cualquier asiento en el ledger. Por ejemplo, la Lerian SISBAJUD Mensageria lee los archivos de órdenes judiciales, y el Lerian SISBAJUD executor ejecuta las órdenes en Midaz. Esto mantiene a Lerian STA como una capa pura de transporte e integridad, independiente del significado de negocio de cualquier archivo.
Presentaciones regulatorias de Reporter
Cuando
REPORTER_EVENTS_CONSUMER_ENABLED es true, Lerian STA consume el evento regulatory.filing_approved de Reporter. Presenta el informe aprobado ante BACEN como una transferencia saliente. Antes de enviar el informe, Lerian STA compara el archivo almacenado con el artifact_sha256 del evento.
Lerian STA informa el resultado de una presentación como un resultado de presentación. Publica el resultado en el canal de negocio firmado, con el nombre del resultado como routing key. Cuando STREAMING_ENABLED es true, también publica el resultado en el stream de eventos.
Los dos resultados llevan
report_id, document_id, document_version, event_id y source_event_id. source_event_id es el id del CloudEvent de la aprobación, cuando la aprobación tiene uno. Un resultado entregado agrega channel, protocol y delivered_at, el momento en que Lerian STA observó la aceptación. Un resultado rechazado agrega refused_at y reason. El reason es checksum_mismatch, digest_missing, credential_unavailable, malformed_approval, rejected_by_regulator, inconsistent_transfer, canceled o transfer_failed.
Convenciones de integración
- Eventos acoplados al commit. Un registro escrito con un cambio de estado está disponible solo después de que se confirma ese cambio.
- Comprobante, no payload. Los consumidores reciben una referencia al artefacto duradero, la obtienen y vuelven a verificar su SHA-256 antes de actuar sobre ella.
- Entrega al menos una vez. Deduplica por el
event_iddel payload, que se mantiene igual para un hecho terminal. - Suscripción por clave. Los clientes eligen sus suscripciones al broker. STA enruta los resultados de transferencia firmados por dirección y producto de origen saneado, con un fallback
unrouted. No exige que solo un suscriptor pueda recibir un archivo.

