Índice
- Objetivo
- Histórico de versão
- Pré-requisitos
- Processamento assíncrono e fluxo da solicitação
- Status de processamento e comportamento do webhook
- Endpoint da api
- Restrições
Regras Comuns de Solicitação e Retorno das APIs assíncronas
1. Objetivo
Descreve o fluxo comum de integração para apis assíncronas da apuração de CBS.
2. Histórico de versão
| Data | Versão | Descrição |
|---|---|---|
| 03/09/2026 | 1.0 | Versão inicial. |
3. Pré-requisitos
Para consumir as API assincronas é necessário:
- Credenciais válidas para o estabelecimento matriz;
- Token obtido por meio da API de autenticação;
- Webhook válido e acessível publicamente para receber o retorno da API.
O manual com orientações para geração de credenciais e obtenção do token de acesso pode ser obtido em:
https://arquivos.receitafederal.gov.br → Documentos > Técnicos > Receita Integra.
4. Processamento assíncrono e fluxo da solicitação
Como as apis deste conjunto operam em modo assíncrono, a chamada não retorna o arquivo final na mesma requisição.
Como funciona
- O cliente envia o
POSTda api específica informando aurlRetorno(do webhook). - A api valida a
urlRetornodo webhook com métodoHEAD. Se o webhook não responder, a solicitação é cancelada com erro. - Em caso de sucesso (Código http
201), a api retorna o payload comtiqueteSolicitacao. - A api processa a solicitação de forma assíncrona.
- Ao concluir o processamento, a api chama a
urlRetorno(do webhook). - O payload que é enviado para
urlRetornodo webhook:- Sucesso: retorna
tiqueteSolicitacao,urlAssinadaeurlAssinadaExpiraEm. - Erro: retorna
codigoErroemensagemErro.
- Sucesso: retorna
- A situação da solicitação pode ser consultada no endpoint a seguir, informando o
tiqueteSolicitacao: Consultar a situação da solicitação
5. Status de processamento e comportamento do webhook
Enquanto estiver em processamento:
- o arquivo final ainda não estará disponível para download;
- o cliente deve aguardar o aviso no webhook (
urlRetorno) ou consultar o endpoint de status.
Tempo esperado de processamento
- Tempo limite de processamento: até
240 minutos (4 horas).
Se esse limite for excedido, a solicitação passará para o status de erro.
Comportamento do webhook (urlRetorno)
- O webhook é acionado quando o processamento for concluído (sucesso ou erro).
- Em caso de sucesso, o payload inclui
tiqueteSolicitacao,urlAssinadaeurlAssinadaExpiraEm. - Em caso de erro, o payload inclui
codigoErroemensagemErro.
5.1 Recomendações de segurança para webhook
Para reduzir o risco de interceptação, falsificação e processamento indevido das notificações, o cliente deve:
- Usar HTTPS: disponibilizar a
urlRetornoexclusivamente com HTTPS. Não desabilitar a validação do certificado TLS. - Restringir o endpoint: utilizar uma rota dedicada ao recebimento das notificações, sem expor outras funções administrativas no mesmo endereço.
- Proteger a
urlAssinada: tratar a URL Assinada como um segredo temporário, pois ela autoriza o download durante o período de validade de 48 horas. Não gravá-la em logs, mensagens de erro, métricas, histórico do navegador ou ferramentas de rastreamento; transmiti-la e armazená-la somente em canais protegidos. - Validar a expiração: conferir
urlAssinadaExpiraEm, quando presente, antes do download. Baixar o arquivo somente quando a notificação indicar sucesso e descartar a URL após o uso ou a expiração. - Controlar disponibilidade e abuso: aplicar limite de requisições, proteção contra repetição e monitoramento de falhas. A resposta deve ser um status HTTP
2xxsomente depois que o recebimento tiver sido aceito; nos demais casos, usar um status não2xxpara permitir nova tentativa conforme o mecanismo de notificações. - Manter auditoria sem dados sensíveis: registrar, no mínimo, o
tiqueteSolicitacao, o horário, o resultado do processamento e um identificador de correlação. Mascarar tokens, URLs pré-assinadas, credenciais e dados pessoais nos logs.
O cliente também deve manter o endpoint disponível durante o período esperado de processamento e tratar a consulta ao endpoint de status como mecanismo de recuperação caso a notificação não seja recebida. A validação do HEAD realizada na abertura da solicitação confirma apenas que o endereço está acessível; ela não substitui a autenticação nem a validação do conteúdo do POST.
6. Endpoint da API
6.1 Obter token OAuth2
Esta api utiliza protocolo de segurança TLS, OAuth 2.0 no fluxo Client Credentials.
Como funciona:
- A aplicação cliente envia
Client IdeClient Secretno endpoint de token. - O serviço retorna um
access_token. - O token é enviado nas chamadas da api no header
Authorization.
O manual com orientações para geração de credenciais e obtenção do token de acesso pode ser obtido em:
https://arquivos.receitafederal.gov.br → Documentos > Técnicos > Receita Integra.
6.2 Extrair, preparar o token para uso e acionar o endpoint da api
Após obter o token no passo anterior:
- Substitua
$TOKENpelo valor deaccess_token. Este valor deve ser utilizado no cabeçalho das requisições para autenticação. - Substitua
{cnpj}pelo CNPJ base com 8 dígitos. - Informe no corpo uma
urlRetornoHTTPS válida para receber o payload com o link do arquivo de retorno.
6.3 Receber retorno assíncrono e baixar arquivo
Após receber a urlAssinada no webhook (urlRetorno), o arquivo pode ser baixado quantas vezes for necessário dentro do prazo de disponibilidade de 48 horas. Após esse prazo, a URL expira e deixa de permitir download.
7. Restrições
- Limite de consumo do endpoint de abertura: 4 chamadas por dia.
- O arquivo de retorno fica disponível por 48 horas após o aviso de pronto.