> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Como o Lerian CCS funciona

> Como o Lerian CCS cria o lote diário ACCS001, o envia por meio do Lerian STA, registra transferências, e concilia a posição aceita.

O Lerian CCS executa um ciclo regulatório por **data de movimento** e por **configuração**. Todo arquivo que sai ou chega ao Lerian CCS passa pelo [Lerian STA](https://docs.lerian.studio/pt/rails/sta/what-is-lerian-sta.md).

## De onde vêm os dados do cliente

***

O Lerian CCS não mantém cópia da sua base de clientes. O **Lerian Reporter** renderiza o arquivo ACCS001 diário a partir dos seus dados de clientes, usando um template registrado. O Lerian CCS lê os bytes renderizados e cria um item de linha de lote para cada operação do arquivo.

O Reporter é um upstream obrigatório. O Lerian CCS se recusa a começar sem o endereço do Reporter, e um Reporter inacessível tira o Lerian CCS do estado pronto. Sem o identificador do template ACCS001 e sem o seu nome, a aprovação falha com `MYS-0008`.

## Reporte (ACCS001)

***

Um lote pertence a uma data de movimento. Uma regra determina qual data de movimento a instituição pode transmitir agora, e se uma data informada é aceitável. Uma data fora da regra falha com `CCS-0012`.

Em seguida, o lote percorre uma máquina de estados:

| Estado | O que significa |
| - | - |
| `GENERATING` → `GENERATED` | O Lerian CCS cria o lote e o valida. |
| `PENDING_REVIEW` | O lote aguarda uma decisão do operador. |
| `AWAITING_RENDER` | Um operador aprovou o lote, e a renderização está em andamento. |
| `SUBMITTED` | O arquivo renderizado está na fila para o Lerian STA. |
| `ACCEPTED` | O BACEN aceitou a remessa. |
| `PARTIALLY_REJECTED` | O BACEN recebeu o arquivo e recusou alguns registros. |
| `FORMAT_REJECTED` | O BACEN recusou o arquivo. |
| `REJECTED` | Um operador rejeitou o lote. |
| `GENERATION_FAILED`, `RENDER_FAILED`, `SUBMIT_FAILED` | A criação, a renderização ou o repasse ao Lerian STA falhou. Uma transferência que o Lerian STA cancela também termina em `GENERATION_FAILED`. |

Todo estado de `ACCEPTED` para baixo é terminal. Aprovar e rejeitar são as decisões do operador sobre um lote em revisão. Uma requisição de criação também pode aprovar o lote de uma vez, com uma justificativa escrita. Aprovar dispara a renderização e estaciona o lote, de modo que nenhum caminho síncrono chega ao repasse. Uma renderização que desiste termina em `RENDER_FAILED`, e a recuperação é um novo lote.

O BACEN responde no canal de arquivos de entrada. Um ACCS002 traz o veredito no nível do arquivo. Um ACCS003 traz um veredito por registro, e o Lerian CCS associa cada veredito ao seu item de linha pela tupla regulatória. Um veredito que não corresponde a nenhum item de linha falha negando por padrão, em vez de ser descartado silenciosamente. Um registro aceito promove seu relacionamento para a posição aceita. Um registro recusado deixa uma linha de erro que seus operadores podem ler.

Depois de `FORMAT_REJECTED` ou `PARTIALLY_REJECTED`, um operador pode criar um lote de reenvio a partir desse lote.

Um monitor em segundo plano verifica, por configuração e data de movimento, se o BACEN confirmou o recebimento de uma remessa com aquela data. Ele responde `PRESENT`, `MISSING` ou `UNDETERMINED`. A obrigação vale mesmo sem movimento, então `MISSING` é uma omissão regulatória. `UNDETERMINED` indica que o controle não conseguiu responder.

## Requisições pendentes e relatórios de penalidade (CCS0009 e ACCS009)

***

Um operador pode perguntar ao BACEN quais requisições a instituição ainda não respondeu (CCS0009). O Lerian CCS lista cada lacuna que o BACEN informa.

O BACEN envia relatórios de penalidade como ACCS009. Esse documento é um relatório de texto em colunas, sem layout XML. O Lerian CCS o analisa e armazena a ocorrência.

## Transferências (ACCS010 e CCS0010)

***

Um operador registra uma transferência de saída como rascunho, com a raiz do CNPJ da instituição receptora e as pernas que ela cobre. Seus operadores listam as transferências das mais recentes para as mais antigas, até 200 por página, e leem qualquer transferência com suas pernas.

Outra instituição também pode transferir relacionamentos para a sua. O Lerian CCS lê a cópia do ACCS010 do remetente e registra a transferência como `RECEIVED`. Um operador a confirma, e o Lerian CCS envia um CCS0010. A resposta do BACEN move a transferência para `ACKNOWLEDGED` ou `REFUSED`.

## Conformidade e medidas judiciais (ACCS004)

***

O BACEN publica a posição que mantém para a instituição como um ACCS004. O Lerian CCS analisa esse relatório e executa uma conciliação em relação à posição aceita que mantém. Apenas uma execução por configuração pode estar em andamento. Uma execução termina como `COMPLETED`, com suas contagens de correspondências e divergências, ou como `FAILED`, com um diagnóstico. Seus operadores listam as divergências de uma execução, com cada documento mascarado até os últimos quatro caracteres.

A comparação usa como chave um hash com chave do documento.

Uma medida judicial registra um `BLOCK` ou `UNBLOCK` judicial contra um documento, para uma configuração, com base na LC 105/2001. Um bloqueio mantém essa identidade fora da remessa. Um operador pode revogar uma medida judicial ativa, e a revogação é reversível.

## Trilha de auditoria e eventos

***

Cada entrada carrega o SHA-256 da entrada anterior combinado com a forma canônica do registro, de modo que as entradas formam uma cadeia por instituição. Um operador pode pedir ao serviço para verificar uma cadeia de ponta a ponta.

O Lerian CCS também publica um evento de negócio quando o lote ACCS001 vai para o Lerian STA. Ele grava o evento por meio de um outbox transacional, para que o evento e a mudança de estado que ele reporta façam commit juntos. A publicação de eventos no tópico de streaming permanece desativada até que um operador a habilite.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.