Skip to main content
Uma consulta tem um de três status: 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ão EGEN0021, EGEN0050, EGEN0152, EGEN0300, EGEN0301 e EGEN1105.
  • permanent: a consulta termina como failed. Corrija a causa e envie uma nova requisição.
  • unknown: o Lerian SRC não reconhece o código. A consulta termina como failed, como para um código permanente.
Uma consulta com falha leva o código como o BACEN o enviou, em 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.