pending, completed ou failed. O Lerian SRC aceita a consulta na hora e trabalha com o BACEN depois de responder à sua requisição.
Requisição de consulta
Seu sistema envia
POST /v1/src/consultations com um header X-Idempotency. O corpo indica um documento e as perguntas a fazer sobre ele.
Um
holder ou um representative é uma pessoa que você consulta para uma empresa. Envie primeiro a consulta da empresa. Depois envie a consulta da pessoa, com companyConsultationId definido como o id que a consulta da empresa retornou. Uma requisição que viola essas regras retorna 422 com um código de SRC-0004 a SRC-0008.
O Lerian SRC verifica a requisição antes de aceitá-la. Ele verifica os dígitos verificadores, o tipo de documento, os tipos de proteção e a motivação. Uma requisição que falha em uma dessas verificações retorna 422 com o código SRC-0002, e o Lerian SRC não envia nada ao BACEN.
Uma requisição aceita retorna 202 com o id da consulta e o status pending. O Lerian SRC armazena a consulta antes de enviar qualquer coisa ao BACEN, e publica o evento de aceite.
SRC0001: a consulta ao BACEN
O Lerian SRC envia cada consulta aceita ao BACEN como uma mensagem SRC0001. A cada 15 segundos, ele pega até 25 consultas que aguardam envio. Cada mensagem leva o número de operação da consulta. A API o retorna como
regulatoryOperationNumber.
O Lerian SRC verifica cada mensagem em relação ao schema de mensagens do BACEN antes de enviá-la. Se a mensagem não é válida para o BACEN, o Lerian SRC não a envia. A consulta termina como failed com o código de rejeição SRC-OUTBOUND-INVALID, e o Lerian SRC abre um caso de operador invalid_outbound.
SRC0001R1: a resposta do BACEN
O BACEN responde com uma mensagem SRC0001R1. A resposta leva o código de controle do BACEN e um veredito para cada tipo de proteção. O Lerian SRC associa a resposta à sua consulta e armazena os vereditos. A consulta passa a
completed, e o Lerian SRC publica o evento de conclusão. Um veredito com permitted definido como false significa uma restrição ativa.
Uma resposta que não corresponde a nenhuma consulta do deploy abre um caso de operador orphan_response.
SRC0001E: a rejeição do BACEN
O BACEN pode rejeitar uma consulta com uma mensagem SRC0001E. O Lerian SRC coloca o código de rejeição em uma de três classes:
transient: o código indica um estado temporário do trilho. O Lerian SRC envia a consulta de novo, dentro do orçamento de tentativas. Os códigos transitórios sãoEGEN0021,EGEN0050,EGEN0152,EGEN0300,EGEN0301eEGEN1105.permanent: a consulta termina comofailed. Corrija a causa e envie uma nova requisição.unknown: o Lerian SRC não reconhece o código. A consulta termina comofailed, como para um código permanente.
rejection.code, e a classe dele em rejection.classification. O Lerian SRC publica o evento de falha.
Novas tentativas e indisponibilidade do BACEN
Quando um envio falha, ou o BACEN dá uma rejeição transitória, o Lerian SRC envia a consulta de novo. Se o BACEN não responde a tempo, o Lerian SRC também envia a consulta de novo. Cada envio conta como uma tentativa. Três chaves de configuração em runtime definem o orçamento de tentativas:
A espera dobra depois de cada tentativa, até o teto. O Lerian SRC espera uma resposta por 30 minutos, ou pelo teto quando o teto é mais longo.
Quando uma consulta usa todo o orçamento, o Lerian SRC para de enviá-la e abre um caso de operador
budget_exhausted. A consulta continua pending.
Quando o BACEN ou o canal IBM MQ está indisponível, a API não retorna erro. O Lerian SRC continua aceitando consultas, e elas ficam pending.
Registro da instituição
Depois que uma consulta é concluída com uma restrição ativa, sua instituição envia um registro com
POST /v1/src/consultations/{id}/institution-record. O registro tem um de dois tipos:
Os dois tipos também exigem
registeredBy, que indica quem envia o registro. Um envio bem-sucedido retorna 201. O registro não muda os vereditos.
Uma consulta guarda um registro. Um segundo registro retorna 409 com o código SRC-0101. Uma consulta que não foi concluída com uma restrição ativa retorna 409 com o código SRC-0102.
Trilha de evidências
O Lerian SRC mantém uma trilha de evidências para cada consulta.
Para corrigir um registro, envie
POST /v1/src/evidence/consultations/{id}/corrections. Coloque a posição do registro em correctsSequence, e o motivo em reason. O Lerian SRC adiciona a correção à trilha como um novo registro e retorna 201.
Se uma correção concorrente da mesma trilha ocupa a posição primeiro, a requisição retorna 409 com o código SRC-0104. O Lerian SRC não grava nada. Tente a correção de novo.
Casos de operador
Um caso de operador é um item que o seu back office deve ver. Cada caso indica o seu tipo em
leg. Por exemplo:
Operando o Lerian SRC explica como listar e fechar casos.
O Lerian SRC também publica um evento a cada mudança de status. Integrando com o Lerian SRC lista os eventos.

