Pular para o conteúdo principal
O Lerian SILOC é orientado a eventos nas suas bordas. Com uma conexão MQ do SILOC configurada, ele consome mensagens SFN aceitas da Núclea e emite fatos na plataforma. Ele não tem consumidores de webhook voltados ao cliente. Sistemas downstream se inscrevem nos tópicos de streaming em vez de receber callbacks.

O que ele consome


  • Mensagens SFN da Núclea. Com o descritor completo de conexão MQ do SILOC configurado, o Lerian SILOC descriptografa e decodifica cada mensagem de entrada a partir do envelope regulatório e, em seguida, a roteia por uma política fechada de (CodProdt, CodMsg). LDL0020, LDL0006 e todo outro par não aceito falham de forma fail-closed para uma exceção de operador. Consulte Como o Lerian SILOC funciona para as rotas.
  • Fatos de liquidação LDL do SPB, quando LDL_FACT_CONSUMER_ENABLED=true. Cada fato registra o resultado da instrução que ele nomeia.
  • Comandos de cartão do Lerian SLC, quando CARD_COMMAND_CONSUMER_ENABLED=true. O serviço envia cada comando à Núclea e publica seu resultado.

Semântica de ingestão e entrega


  • O repasse do SLC é pelo menos uma vez. Para um frame de funding do SLC decodificado com sucesso e com um BCMSG.NUOp não vazio, a chave de deduplicação durável é a parte da mensagem: BCMSG.NUOp e seu número de parte, NumSeq.
  • O serviço grava esse registro de mensagem processada apenas depois de um repasse bem-sucedido. Ele não cria registro de mensagem processada para uma mensagem não decodificada ou não aceita. Uma falha antes da gravação do registro pode resultar em outra entrega, então esse comportamento não é uma garantia incondicional de exatamente uma vez de ponta a ponta.

O que ele emite


  • Fatos de participante. O Lerian SILOC publica studio.lerian.br-siloc.siloc_participant.registered, studio.lerian.br-siloc.siloc_participant.updated e studio.lerian.br-siloc.siloc_participant.status-changed como CloudEvents no backbone de streaming da plataforma. Sistemas downstream acompanham o diretório de participantes sem fazer polling.
  • Fatos operacionais. Transições de alerta (studio.lerian.br-siloc.siloc_alert.raised, studio.lerian.br-siloc.siloc_alert.cleared e studio.lerian.br-siloc.siloc_alert.acknowledged), alterações de cronograma, avisos da câmara, respostas às requisições da instituição, resultados multilaterais da câmara e fatos de liquidação de ciclos OT.
  • Requisições com falha. Quando uma requisição de saída termina FAILED, o Lerian SILOC publica studio.lerian.br-siloc.siloc_outbound.failed na mesma transação da mudança de status. Nenhuma resposta e nenhuma recusa vêm depois dele. O evento traz id, codMsg, numCtrlIF, nuop, ispbIF, ispbLDL, codProdt quando a requisição tem um, status, reason e failedAt. reason é schema_invalid, unregistered_code, lbtr_closed ou movement_day_ended.

Nenhum ponto de contato com o Midaz


O Lerian SILOC não tem integração direta com o ledger. Ele não mantém posição contábil. Ele roteia bytes e emite fatos. Este trilho não contabiliza dinheiro. A liquidação da posição líquida acontece no SILOC e no STR. Qualquer lançamento contábil fica a cargo do serviço dono da movimentação de dinheiro.

Limite do caminho do dinheiro


O trilho STR separado, Lerian SPB, executa a perna de depósito do STR, a liquidação monetária no BACEN. O SILOC não faz isso. O Lerian SILOC transporta as mensagens do SILOC e administra a conexão. Ele nunca movimenta dinheiro. Ele envia as requisições de transferência e de saque da instituição à Núclea, que as executa.

Convenções de API


  • O path base é /api/v1/siloc, e os erros seguem o formato RFC 9457 de problem-detail.
  • A autenticação segue o esquema padrão de bearer-token da plataforma.
  • Idempotência. Uma requisição que altera estado precisa de um header X-Idempotency de até 255 caracteres. Dentro de 24 horas, repetir a mesma requisição com a mesma chave retorna a resposta armazenada em vez de executar o comando de novo. Uma requisição recusada com um 4xx não consome sua chave.
  • Certificados são referências, não segredos. Um certificado registrado carrega um certificado público e uma referência de custódia externa. Ele não armazena nem retorna nenhuma chave privada.