Skip to main content
Todas as requisições usam HTTP Basic Authentication: a api_key da conta é o usuário e a api_secret é a senha. As mesmas credenciais valem para as APIs de NF-e e de NFS-e.
curl https://invo.work/api/nfe/v1/notas \
  -u "$INVO_API_KEY:$INVO_API_SECRET"
Requisições sem credenciais válidas retornam 401 com { "error": "HTTP Basic: Access denied." }. Nunca exponha a api_secret no cliente (navegador/app) — chame a API a partir do seu backend.

Selecionar a empresa

Uma conta pode operar várias empresas. O cabeçalho X-Empresa-CNPJ define qual empresa emite a nota.
CabeçalhoComportamento
Presente e pareadoUsa a empresa correspondente.
AusenteUsa a primeira empresa da conta.
Presente, mas não pareadoRetorna 404.
curl https://invo.work/api/nfe/v1/notas \
  -u "$INVO_API_KEY:$INVO_API_SECRET" \
  -H "X-Empresa-CNPJ: 12345678000190"

Empresa apta a emitir NF-e

Antes de emitir, a empresa precisa estar apta: inscrição estadual, regime tributário (do qual deriva o CRT) e um certificado digital ativo. Uma emissão para empresa inapta é barrada com 422 (Empresa não está apta a emitir NF-e) — sem queimar numeração.
Todas as respostas e corpos são application/json (exceto os downloads de XML e DANFE). Requisições com Accept não-JSON recebem 406 Not Acceptable.