Docs/NF-e
NF-e — Nota Fiscal Eletrônica (produtos)
Endpoints para emissão, consulta e cancelamento de NF-e de produtos. A emissão é sempre em produção (SEFAZ tpAmb=1).
Headers
X-Api-Key
stringobrigatórioChave de API da conta (id do usuário).
X-Api-Secret
stringobrigatórioSegredo da chave de API.
Content-Type
stringobrigatórioapplication/json
Parâmetros do body
nature
stringopcionalNatureza da operação.
cfop
stringopcionalCFOP padrão dos itens.
items
arrayobrigatórioItens da nota. Aceita DNA fiscal completo (espelha a UI Novo produto). A emissão usa o DNA do item — sem herdar defaults da empresa.
description
stringobrigatórioTexto curto do item (máx. 120). Compat legado.
name
stringopcionalNome no catálogo (3–64). Default: slice de fiscalDescription/description.
fiscalDescription
stringopcionalDescrição na NF-e (xProd). Default: description.
category
stringopcionalCategoria (ex.: digital_book, software, other_product). Default: other_product.
sku
stringopcionalSKU do item.
ncm
stringopcionalNCM (8 dígitos).
commercialUnit
stringopcionalUnidade comercial (ex.: UN). Alias legado: unit.
cfopInternal
stringopcionalCFOP vendas dentro do estado. Alias legado: cfop.
cfopExternal
stringopcionalCFOP vendas fora do estado.
icmsCst
stringopcionalCST/CSOSN ICMS.
icmsTaxRate
numberopcionalAlíquota ICMS (%).
pisCst
stringopcionalCST PIS.
cofinsCst
stringopcionalCST COFINS.
taxClassification
stringopcionalClassificação tributária IBS/CBS.
quantity
numberobrigatórioQuantidade.
unitValue
numberobrigatórioValor unitário em reais.
recipient
objectobrigatórioDados do destinatário.
taxId
stringobrigatórioCPF ou CNPJ do destinatário.
name
stringobrigatórioNome do destinatário.
E-mail do destinatário.
externalId
stringopcionalIdentificador externo para idempotência.
transport
objectopcionalDados de transporte inline. Não há cadastro de transportadora: os dados vão no payload e ficam congelados no snapshot da nota. freightModality é obrigatório quando carrier é enviado; noShipping com carrier retorna 400.
freightModality
stringopcionalModalidade do frete: bySender, byRecipient, byThirdParties, ownBySender, ownByRecipient ou noShipping. Também aceita os códigos SEFAZ 0/1/2/3/4/9. Obrigatório quando carrier é enviado.
value
numberopcionalValor do frete (≥ 0). Compõe o total da nota quando o frete é por conta do emitente.
carrier
objectopcionalTransportadora (inline).
name
stringobrigatórioRazão social ou nome da transportadora.
taxId
stringobrigatórioCNPJ ou CPF válido da transportadora.
stateRegistration
stringopcionalInscrição estadual.
address
objectopcionalEndereço da transportadora.
street
stringopcionalLogradouro.
city
stringopcionalCidade.
state
stringopcionalUF (ex.: SP).
vehicle
objectopcionalVeículo do transporte.
plate
stringobrigatórioPlaca do veículo.
state
stringopcionalUF de registro do veículo.
rntc
stringopcionalRegistro nacional de transportador de carga (ANTT).
curl -X POST "https://api.emitfy.com/v1/companies/ID_DA_EMPRESA/nfe" \
-H "X-Api-Key: SUA_API_KEY" \
-H "X-Api-Secret: SUA_API_SECRET" \
-H "Idempotency-Key: pedido-100" \
-H "Content-Type: application/json" \
-d '{
"nature": "Venda de mercadoria",
"items": [
{
"description": "Notebook modelo XYZ",
"ncm": "84713012",
"cfop": "5102",
"quantity": 2,
"unitValue": 3500.00
}
],
"recipient": {
"taxId": "123.456.789-00",
"name": "João Silva",
"email": "[email protected]"
},
"transport": {
"freightModality": "bySender",
"value": 45.90,
"carrier": {
"name": "Transportes Rápido LTDA",
"taxId": "12.345.678/0001-90",
"stateRegistration": "123456789",
"address": {
"street": "Rua das Cargas, 100",
"city": "São Paulo",
"state": "SP"
},
"vehicle": {
"plate": "ABC1D23",
"state": "SP",
"rntc": "12345678"
}
}
}
}'{
"success": true,
"data": {
"id": "018f6e3b-0000-0000-0000-000000000000",
"status": "processing",
"type": "nfe",
"externalId": "pedido-100",
"amount": 7000.00,
"createdAt": "2026-07-06T10:28:00.000Z"
}
}{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Um ou mais campos contém erros de validação. Por favor, revise os dados informados.",
"details": {
"fields": [{ "field": "items.0.ncm", "error": "..." }]
}
}
}Headers
X-Api-Key
stringobrigatórioChave de API da conta (id do usuário).
X-Api-Secret
stringobrigatórioSegredo da chave de API.
Content-Type
stringobrigatórioapplication/json
Query params
status
stringopcionalFiltra por status (processing, authorized, rejected, canceled).
page
numberopcionalPágina atual. Padrão: 1.
pageSize
numberopcionalItens por página. Padrão: 20.
curl -X GET "https://api.emitfy.com/v1/companies/ID_DA_EMPRESA/nfe?status=authorized" \
-H "X-Api-Key: SUA_API_KEY" \
-H "X-Api-Secret: SUA_API_SECRET" \
{
"success": true,
"data": [
{
"id": "018f6e3b-0000-0000-0000-000000000000",
"status": "authorized",
"type": "nfe",
"amount": 7000.00,
"createdAt": "2026-07-06T10:28:00.000Z"
}
],
"pageInfo": {
"page": 1,
"pageSize": 20,
"total": 1
}
}{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Um ou mais campos contém erros de validação. Por favor, revise os dados informados.",
"details": {
"fields": [{ "field": "items.0.ncm", "error": "..." }]
}
}
}Headers
X-Api-Key
stringobrigatórioChave de API da conta (id do usuário).
X-Api-Secret
stringobrigatórioSegredo da chave de API.
Content-Type
stringobrigatórioapplication/json
Parâmetros de rota
id
string (UUID)obrigatórioIdentificador único da NF-e.
curl -X GET "https://api.emitfy.com/v1/companies/ID_DA_EMPRESA/nfe/018f6e3b-0000-0000-0000-000000000000" \
-H "X-Api-Key: SUA_API_KEY" \
-H "X-Api-Secret: SUA_API_SECRET" \
{
"success": true,
"data": {
"id": "018f6e3b-0000-0000-0000-000000000000",
"status": "processing",
"type": "nfe",
"externalId": "pedido-100",
"amount": 7000.00,
"createdAt": "2026-07-06T10:28:00.000Z"
}
}{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Um ou mais campos contém erros de validação. Por favor, revise os dados informados.",
"details": {
"fields": [{ "field": "items.0.ncm", "error": "..." }]
}
}
}Headers
X-Api-Key
stringobrigatórioChave de API da conta (id do usuário).
X-Api-Secret
stringobrigatórioSegredo da chave de API.
Content-Type
stringobrigatórioapplication/json
Parâmetros de rota
id
string (UUID)obrigatórioIdentificador único da NF-e.
curl -X DELETE "https://api.emitfy.com/v1/companies/ID_DA_EMPRESA/nfe/018f6e3b-0000-0000-0000-000000000000" \
-H "X-Api-Key: SUA_API_KEY" \
-H "X-Api-Secret: SUA_API_SECRET" \
{
"success": true,
"data": {
"id": "018f6e3b-0000-0000-0000-000000000000",
"status": "canceled",
"type": "nfe"
}
}{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Um ou mais campos contém erros de validação. Por favor, revise os dados informados.",
"details": {
"fields": [{ "field": "items.0.ncm", "error": "..." }]
}
}
}Tabelas de referência NF-e
GET /v1/utils/ncm?search=...— consulta de NCMGET /v1/utils/cfop?search=...— consulta de CFOPGET /v1/utils/cest?search=...— consulta de CEST