---
title: "Solução de erros 400 na emissão de NFS-e"
description: "Como diagnosticar e resolver os erros HTTP 400 (BadRequest) mais comuns ao emitir ou operar uma NFS-e, organizados por sintoma."
source_url: https://nfe.io/docs/documentacao/nota-fiscal-servico-eletronica/duvidas/erros-e-status/solucao-de-erros-400-na-emissao
last_updated: 2026-07-03
---

# Solução de erros 400 na emissão de NFS-e

Este guia diagnostica os erros **HTTP 400 (BadRequest)** mais comuns ao emitir uma NFS-e ou operar sobre ela. Cada seção parte do sintoma e indica causa e ação. Para o catálogo completo com as mensagens literais, consulte [Cenários de erro 400 (BadRequest) na emissão de NFS-e](./cenarios-de-badrequest-na-emissao.md).

## Erros de validação do payload

### Mensagens sobre o tomador (`borrower`)

O tomador está ausente ou com dados inválidos — por exemplo `borrower can not be null` ou `borrower.federalTaxNumber borrower federal tax number is not valid`.

1. Garanta que o objeto `borrower` está presente no corpo.
2. Para tomador no Brasil, informe CPF ou CNPJ válido em `federalTaxNumber`.
3. Confira a coerência entre `type` (`NaturalPerson`/`LegalEntity`) e o documento.
4. Para tomador estrangeiro, use `borrower.address.country` diferente de `BRA` — a validação de CPF/CNPJ é dispensada.

### Mensagens sobre endereço ou cidade

Um campo de endereço foi informado de forma incompleta ou incoerente — por exemplo `borrower.address.city.code must be a valid IBGE city code`.

1. Use o código IBGE de 7 dígitos para a cidade.
2. Garanta que a UF (`state`) corresponde ao prefixo do código IBGE.
3. Ao preencher qualquer campo de endereço, preencha também CEP, logradouro, cidade e UF.

Para prevenir, valide CPF/CNPJ e mantenha uma base de cidades e UFs consistente com a tabela do IBGE.

## Erros de regra de emissão

### Empresa não habilitada

A mensagem `Municipal tax is not allowed to issue invoice` ou `company is not active` indica que a empresa não está apta a emitir.

1. Verifique se a empresa está ativa e habilitada na prefeitura.
2. Conclua o credenciamento municipal, se pendente.
3. Confirme que o ambiente da requisição corresponde à habilitação.

### RPS ou `externalId` duplicado

Já existe uma nota com o mesmo número de RPS ou `externalId`. Esse cenário pode retornar **400** (não apenas 409).

1. Consulte a nota existente antes de emitir novamente.
2. Use um novo número de RPS sequencial ou um `externalId` único por nota.

Para prevenir, controle o contador de RPS internamente e gere `externalId` idempotente por documento.

## Erros no cancelamento

O cancelamento (`DELETE /{id}`) pode retornar 400 quando a empresa não está habilitada a operar no município (mesma causa de `Municipal tax is not allowed to issue invoice`).

1. Verifique se a empresa está ativa e habilitada na prefeitura.
2. Conclua o credenciamento municipal, se ainda pendente.

## Veja também

- [Cenários de erro 400 (BadRequest) na emissão de NFS-e](./cenarios-de-badrequest-na-emissao.md)
- [Tipos de retorno de status das requisições HTTPS](./tipos-de-retorno-de-status-das-requisicoes-https.md)
