---
title: "Solução de erros 400 — Empresas e inscrições"
description: "Como diagnosticar e resolver os erros HTTP 400 ao criar empresa, inscrição municipal/estadual e certificado, por sintoma."
source_url: https://nfe.io/docs/documentacao/gerenciamento-empresas/duvidas/erros-e-status/solucao-de-erros-400-empresas
last_updated: 2026-09-25
---

# Solução de erros 400 — Empresas e inscrições

Guia por sintoma para os erros **HTTP 400** ao criar/atualizar empresa, inscrição municipal/estadual e certificado. Para o catálogo completo com os códigos e corpos reais, veja [Cenários de erro 400 — Empresas](./cenarios-de-badrequest-empresas.md).

## Identifique o formato do erro

A resposta de 400 vem em um de três formatos — identifique antes de tratar:

1. **Texto simples** (ex.: `"Company is null"`, `"company_id is null or empty"`) → faltou um **parâmetro/campo de presença**. Envie o campo indicado.
2. **`{ "errors": [ { "code", "message" } ] }`** → **regra de negócio**. Trate pela `message`; o `code` é `40001` na maioria, específico em alguns (ex.: `40032` CNPJ inválido). **Apenas o primeiro erro aparece por vez** — corrija e reenvie.
3. **ProblemDetails** (`type`/`title`/`errors`/`traceId`, com chaves tipo `company.Name`) → **formato/desserialização**: campo obrigatório ausente, tipo ou enum inválido. Corrija o JSON/valores.

## Empresa e inscrições (validações comuns)

1. **`The Name/Address/Street/Number field is required`** (ProblemDetails) → preencha os campos obrigatórios da empresa e do endereço.
2. **`could not be converted` em `taxRegime`/`environment`/`type`/`code`** (ProblemDetails) → use um valor do enum (veja o catálogo).
3. **`federal tax number is not valid`** (`40032`) → CNPJ com dígito verificador inválido; valide antes de enviar.
4. **`state is null or empty`** (`40001`, inscrição municipal) → informe `state` dentro de `city`.
5. **`state code is not valid` / `tax number is not valid`** (`40001`/`40003`, inscrição estadual) → confira a UF (`code`) e o número da inscrição estadual.

:::warning
**Inscrição municipal sem `city`** retorna **404 (Not Found)**, não 400. Envie sempre `city` com `code`, `name`, `state` e `country`.
:::

## Certificado digital

1. **`The Password field is required`** → envie a senha do certificado.
2. **`The File field is required` / `File extension is not valid (.pfx or .p12)`** → envie um arquivo `.pfx` ou `.p12`.
3. **`Certificate expired` / `Certificate password is invalid` / `company is not active`** → confira validade, senha e se a empresa está ativa.

Para prevenir: valide o certificado (tipo e-CNPJ, dentro da validade) e a senha antes do upload.

## Veja também

- [Cenários de erro 400 — Empresas](./cenarios-de-badrequest-empresas.md)
- [API de certificados](../../gerenciamento-certificado.md)
