Skip to main content
Lerian SPI es la integración de mensajería nativa de Lerian para Pix. Llega al sistema de pagos instantáneos de BACEN (SPI) y al directorio de claves DICT a través de la RSFN. Incluye cuatro binarios en tiempo de ejecución (spi, dict, brcode y core), por lo que su conjunto de variables es amplio. El servicio lee todas las variables al iniciar. Cuando systemplane está activo (el valor predeterminado), puede anular un subconjunto en tiempo de ejecución sin reiniciar. El resto de las variables requieren un reinicio para cambiar. Para los parámetros que se comportan igual en todos los servicios de Lerian en Go (postura de despliegue, almacenes de datos, multi-tenancy, telemetría, streaming), consulta Elementos esenciales de configuración de BYOC. En las tablas siguientes, Obligatorio marca una variable que debes configurar, de forma global o bajo la condición indicada. significa que no tiene valor predeterminado.
La mayoría de las variables orientadas a BACEN llevan un prefijo de superficie: BACEN_SPI_* para el transporte de liquidación de SPI, BACEN_DICT_* para el cliente DICT, BACEN_BRCODE_JOSE_* para la firma JOSE de BR Code, y BACEN_ICOM_* para el canal de long-poll entrante.

Tiempo de ejecución y servidor

Autenticación

Lerian SPI autoriza las rutas protegidas, incluida la API de administración de systemplane, a través de Access Manager.

Callback de BACEN (entrante desde SPI)

Transporte de liquidación de SPI (BACEN_SPI_*)

Conexión al endpoint de liquidación SPI de BACEN a través de la RSFN, con un endpoint secundario opcional y el endpoint de archivo (ARQ).

TLS mutuo con BACEN

Los archivos BACEN_TLS_* respaldan el canal TLS mutuo con BACEN. Los clientes de SPI y DICT los comparten.

Firma de mensajes y certificados

Lerian SPI firma digitalmente sus mensajes salientes. Elige un backend de custodia con BACEN_SPI_SIGNER_KIND.

Validación de certificados (OCSP/CRL)

Resolutor de payload

Estas variables controlan cómo el servicio almacena y referencia payloads grandes de SPI.

Canal entrante (BACEN_ICOM_*)

Canal de long-poll para los mensajes que BACEN envía de vuelta al participante. Con BACEN_ICOM_CONSUMER_ENABLED=true, el inicio también requiere un backend de persistencia configurado, BACEN_SPI_INTERNAL_CALLBACK_SECRET y BACEN_CALLBACK_MTLS_HEADER_SECRET. Con BACEN_ICOM_SECONDARY_CONSUMER_ENABLED=true, requiere además BACEN_SPI_SECONDARY_ENDPOINT.

Cliente DICT (BACEN_DICT_*)

Cliente para el directorio de claves Pix de BACEN (DICT), incluido el endpoint antifraude (NP).

Firma JOSE de BR Code (BACEN_BRCODE_JOSE_*)

Firma payloads dinámicos de BR Code (JWS).

Cifrado y hashing de PII

Cada variable a continuación contiene material sensible de clave o pepper. Protege los datos personales en reposo mediante cifrado e indexación ciega. Nunca confirmes ni registres un valor en logs. Inyéctalo en el momento del despliegue a través de tu gestor de secretos. Una rotación de pepper o clave requiere un reindexado o recifrado planificado.

PostgreSQL

Redis

Outbox y streaming

Lerian SPI publica eventos mediante un outbox transaccional y un productor de lib-streaming, y consume eventos de liquidación para BR Code. El consumidor de liquidación de BR Code se ejecuta de forma incondicional. Streaming no tiene interruptor de activación: STREAMING_BROKERS es obligatorio al iniciar, incluso cuando OUTBOX_ENABLED=false. Configura los ajustes compartidos STREAMING_CLOUDEVENTS_SOURCE, STREAMING_COMPRESSION, STREAMING_REQUIRED_ACKS y STREAMING_EVENT_POLICIES como se describe en Streaming y outbox.

Programadores

Trabajos en segundo plano, cada uno con su propio interruptor. Los trabajos controlados por el programador que se indican a continuación están desactivados por defecto. Los workers de descubrimiento e inventario de DICT tienen sus propios controles en la siguiente sección.

Descubrimiento e inventario de DICT

El descubrimiento de reclamos entrantes se ejecuta solo cuando SCHEDULER_ENABLED y SCHEDULER_INBOUND_DISCOVERY_ENABLED son ambos true. Los demás workers de DICT que aparecen a continuación se ejecutan de forma independiente a SCHEDULER_ENABLED, cada uno con su propio interruptor explícito.

Rate limiting, idempotencia y conectividad

Systemplane y configuración en tiempo de ejecución

Consulta Systemplane para conocer la API, los espacios de nombres y los permisos requeridos.

Observabilidad

Documentación

Salud y readiness

Lerian SPI expone GET /health (liveness), GET /readyz (readiness) y GET /version en el puerto HTTP principal. /metrics se ejecuta en su propio listener cuando está habilitado. Consulta Salud y readiness para conocer el contrato de las verificaciones.