Getting Started
Autenticação
Como autenticar suas chamadas à API com a Chave de Acesso e o token do cliente.
Toda chamada à API pública (emissão, consulta, gestão de clientes) é autenticada por duas credenciais em conjunto:
- Chave de Acesso — identifica a sua conta. Enviada no header
X-Access-Key. - Chave de API (token do cliente) — identifica a empresa/tenant e o ambiente (homologação ou produção) usados na chamada. Enviada no header
Authorization, como Bearer token.
X-Access-Key: nfe_access_SUA_CHAVE_DE_ACESSO_AQUIAuthorization: Bearer nfe_test_SUA_CHAVE_AQUIA rota só autentica com as duas presentes — uma sem a outra resulta em 401 Unauthorized.
Uma terceira credencial, a Chave Restrita, é exigida além dessas duas só em um endpoint específico, de altíssimo privilégio — veja O que é a Chave Restrita.
Chave de Acesso
Seção intitulada “Chave de Acesso”Sua Chave de Acesso identifica a sua conta em toda chamada à API pública. Ela é diferente do token de cada cliente (nfe_test_/nfe_live_): a rota só autentica com as duas juntas — a Chave de Acesso (sua conta) e o token do tenant (qual cliente usar).
Gerencie suas Chaves de Acesso em Suas Chaves de Acesso, no Painel do Desenvolvedor: crie uma nova, veja o valor de uma existente ou regenere-a se ela vazar. Regenerar invalida imediatamente a chave anterior — qualquer integração que ainda a use passa a receber 401 Unauthorized.
No testador de integração do painel
No testador de integração de cada cliente, o header X-Access-Key já é preenchido automaticamente por você — não é preciso informá-lo lá. Isso só se aplica ao testador; chamadas feitas pela sua aplicação (REST puro ou SDKs) sempre precisam enviar os dois headers explicitamente.
Chave de API (token do cliente)
Seção intitulada “Chave de API (token do cliente)”Authorization: Bearer nfe_test_xxxxxxxxxxxxxxxxxxxxxxxxObtendo uma chave
Seção intitulada “Obtendo uma chave”- Faça login no Painel do Desenvolvedor.
- Cadastre uma empresa (é nela que ficam o certificado digital e a configuração fiscal — UF, ambiente, CSC/CSC ID quando aplicável).
- Gere uma chave de API para essa empresa.
Ambientes
Seção intitulada “Ambientes”O prefixo da própria chave já define o ambiente da SEFAZ usado nas emissões feitas com ela — não existe um parâmetro separado de ambiente na requisição:
| Prefixo | Ambiente |
|---|---|
nfe_test_... |
Homologação |
nfe_live_... |
Produção |
O que a chave representa
Seção intitulada “O que a chave representa”Uma chave de API está sempre associada a uma única empresa. Diferente de outras APIs, você não precisa (nem deve) enviar nenhum identificador de tenant/empresa nas requisições — isso é resolvido automaticamente a partir da combinação da Chave de Acesso (sua conta) com a chave de API usada (qual empresa, dentro da sua conta).
Pelo mesmo motivo, o certificado digital nunca é enviado nas chamadas de emissão — ele fica armazenado de forma criptografada e associado à empresa no momento do cadastro, não ao payload de cada requisição.
Erros de autenticação
Seção intitulada “Erros de autenticação”Chave de Acesso ausente ou inválida:
{ "statusCode": 401, "message": "Chave de Acesso (X-Access-Key) ausente ou inválida.", "error": "Unauthorized"}Chave de API (Bearer token) ausente, inválida ou revogada:
{ "statusCode": 401, "message": "Chave de API (Bearer Token) ausente ou inválida.", "error": "Unauthorized"}