Confirmar Sincronização
Endpoint para confirmar que o ERP processou com sucesso os produtos de um lote.
Informações do Endpoint
| Atributo | Valor |
|---|---|
| Método | POST |
| URL | /fiscal/confirmar-sincronizacao |
| Content-Type | application/json |
| Autenticação | Headers customizados |
| Função | Liberar próximo lote de produtos |
Headers de Autenticação
| Header | Tipo | Obrigatório | Descrição |
|---|---|---|---|
empresa-id | integer | Sim | ID da empresa na plataforma Nacional Tax |
token-api | string | Sim | Token de autenticação do cliente |
cnpj | string | Sim | CNPJ da empresa (apenas números) |
regime-tributario | string | Sim | Regime tributário (SN, LP, LR) |
Request Body
Estrutura
{
"lote_id": "lote-20250112-143022-a1b2c3d4"
}
Campos do Request
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
lote_id | string | Sim | ID do lote recebido no endpoint de produtos revisados |
Dica
O lote_id é retornado no endpoint Produtos Revisados.
Response
Sucesso (200 OK)
{
"status": "confirmado",
"lote_id": "lote-20250112-143022-a1b2c3d4",
"quantidade_confirmada": 100
}
Campos do Response
| Campo | Tipo | Descrição |
|---|---|---|
status | string | Status da confirmação (sempre "confirmado" em caso de sucesso) |
lote_id | string | ID do lote confirmado |
quantidade_confirmada | integer | Quantidade de produtos sincronizados |
Erros Possíveis
400 Bad Request
Causa: Dados inválidos ou campo lote_id ausente
{
"detail": [
{
"loc": ["body", "lote_id"],
"msg": "field required",
"type": "value_error.missing"
}
]
}
401 Unauthorized
Causa: Headers de autenticação inválidos
{
"detail": "Cliente não autorizado"
}
404 Not Found
Causa: Lote não encontrado, já confirmado ou não pertence ao cliente
{
"detail": "Lote não encontrado ou já confirmado"
}
Possíveis motivos:
- Lote já foi confirmado anteriormente
lote_idinválido ou inexistente- Lote pertence a outro cliente
- Lote não está com status EM_LOTE
500 Internal Server Error
Causa: Erro interno do servidor
{
"detail": "Erro ao processar requisição. Contate o suporte."
}
Fluxo de Confirmação
Regras de Negócio
1. Validações
A API valida:
- ✅ Lote existe no sistema
- ✅ Lote pertence ao cliente autenticado
- ✅ Lote está com status EM_LOTE
- ✅ Lote não foi confirmado anteriormente
Importante
Um lote só pode ser confirmado uma única vez. Tentativas subsequentes retornarão erro 404.
2. Transação Atômica
A confirmação é processada em uma transação de banco de dados:
- Sucesso: Todos os produtos do lote passam para SINCRONIZADO
- Erro: Nenhum produto é atualizado (rollback)
3. Liberação de Novo Lote
Após a confirmação bem-sucedida:
- ✅ Produtos confirmados não aparecem mais nas consultas
- ✅ Próximo lote pode ser solicitado imediatamente
- ✅ Novos produtos PENDENTES podem entrar no próximo lote