1. Guias
  2. Emissão de NF-e

POST /nfe emite uma NF-e modelo 55 para a empresa dona da x-api-key.

​
Com ou sem cálculo de tributos

  • Com cálculo (padrão)

  • Sem cálculo (calculateTaxes: false)

A Treeunfe calcula os tributos de cada item e os totalizadores — ICMS, ST, DIFAL, FCP, IPI, PIS, COFINS, IBS e CBS — pelas regras de emissão configuradas no emissor.

Use quando o seu sistema não tem motor fiscal próprio.

​
Estrutura do body

{
  "calculateTaxes": true,
  "NFe": {
    "infNFe": {
      "ide": { },
      "emit": { },
      "dest": { },
      "autXML": [ ],
      "det": [ ],
      "total": { },
      "transp": { },
      "pag": { },
      "infRespTec": { }
    }
  }
}
CampoDescrição
calculateTaxestrue (padrão) para a Treeunfe calcular os tributos; false para enviar os tributos prontos.
externalIdOpcional. Identificador da nota no seu sistema.
NFe.infNFeOs grupos da nota, com as mesmas tags do leiaute oficial da NF-e (MOC).

Os nomes das tags seguem o leiaute da SEFAZ. A única diferença é CNPJCPF: informe CNPJ ou CPF no mesmo campo, só com números.

​
Grupos principais

GrupoConteúdo
ideIdentificação: UF, série, número, datas, tipo de operação, finalidade.
emitEmitente: CNPJ, razão social, endereço (enderEmit), IE e CRT.
destDestinatário: CNPJ/CPF, nome, endereço (enderDest), indIEDest, e-mail.
autXMLCNPJs/CPFs autorizados a baixar o XML.
detItens: prod (produto) e imposto (tributos).
totalTotais: ICMSTot e IBSCBSTot.
transpTransporte. modFrete: 9 = sem frete.
pagPagamento (detPag).
infRespTecResponsável técnico.

O ambiente da nota (homologação ou produção) vem da API Key. Não informe o ambiente no payload.

ide.serie e ide.nNF são opcionais. Sem eles, a Treeunfe usa a série e a numeração das configurações de NF-e da empresa no emissor.

​
Payload enxuto (com cálculo)

Com calculateTaxes: true, envie só os dados comerciais. Cada item leva apenas prod (NCM, CFOP, quantidade e valor), sem o grupo imposto. Também não é preciso enviar IBSCBSTot, autXML nem infRespTec.

A Treeunfe aplica a regra fiscal que cobre o NCM do item e preenche os tributos e os totais.

{
  "calculateTaxes": true,
  "externalId": "pedido-1234",
  "NFe": {
    "infNFe": {
      "ide": {
        "cUF": 41,
        "natOp": "Venda",
        "dhEmi": "2026-11-10T10:00:00-03:00",
        "dhSaiEnt": "2026-11-10T10:00:00-03:00",
        "tpNF": 1,
        "idDest": 2,
        "cMunFG": 4115200,
        "tpImp": 1,
        "tpEmis": 1,
        "finNFe": 1,
        "indFinal": 0,
        "indPres": 1,
        "indIntermed": 0
      },
      "emit": {
        "CNPJCPF": "12345678000195",
        "xNome": "EMPRESA EXEMPLO LTDA",
        "xFant": "EMPRESA EXEMPLO",
        "enderEmit": {
          "xLgr": "Avenida Exemplo", "nro": "5145", "xBairro": "Zona 07",
          "cMun": 4115200, "xMun": "MARINGA", "UF": "PR", "CEP": "87020035",
          "cPais": 1058, "xPais": "Brasil", "fone": "44999990000"
        },
        "IE": "9071311225",
        "CRT": 3
      },
      "dest": {
        "CNPJCPF": "11222333000181",
        "xNome": "CLIENTE EXEMPLO LTDA",
        "enderDest": {
          "xLgr": "Rua 115", "nro": "942", "xBairro": "Setor Sul",
          "cMun": 5208707, "xMun": "Goiania", "UF": "GO", "CEP": "74085325",
          "cPais": 1058, "xPais": "BRASIL"
        },
        "indIEDest": 1,
        "IE": "107753936"
      },
      "det": [
        {
          "prod": {
            "cProd": "PROD-001",
            "cEAN": "SEM GTIN",
            "xProd": "PRODUTO EXEMPLO",
            "NCM": "85176241",
            "CFOP": 6102,
            "uCom": "UNID",
            "qCom": 1,
            "vUnCom": "1000.00",
            "vProd": "1000.00",
            "cEANTrib": "SEM GTIN",
            "uTrib": "UNID",
            "qTrib": 1,
            "vUnTrib": "1000.00",
            "indTot": 1
          }
        }
      ],
      "total": {
        "ICMSTot": {
          "vBC": "0.00", "vICMS": "0.00", "vICMSDeson": "0.00", "vFCP": "0.00",
          "vBCST": "0.00", "vST": "0.00", "vFCPST": "0.00", "vFCPSTRet": "0.00",
          "vProd": "1000.00", "vFrete": "0.00", "vSeg": "0.00", "vDesc": "0.00",
          "vII": "0.00", "vIPI": "0.00", "vIPIDevol": "0.00", "vPIS": "0.00",
          "vCOFINS": "0.00", "vOutro": "0.00", "vNF": "1000.00"
        }
      },
      "transp": { "modFrete": 9 },
      "pag": { "detPag": { "indPag": "0", "tPag": "90", "vPag": "0.00" } }
    }
  }
}

Antes da primeira emissão, consulte o checklist de NF-e para confirmar que a empresa tem certificado, configurações e regras fiscais prontas.

​
Payload com os tributos preenchidos

Se o seu sistema já calcula os tributos, envie o grupo imposto em cada item e os totais completos.

​
Regime tributário

O exemplo abaixo é de regime normal (emit.CRT: 3, ICMS CST 00). Para Simples Nacional, use emit.CRT: 1 e os grupos ICMSSN com CSOSN (por exemplo, ICMSSN102).

​
Resposta

Quando a SEFAZ autoriza a nota:

{
  "outcome": "SUCCESS",
  "chaveAcesso": "41261012345678000195554650000000101585524161",
  "protocolo": "141260000000000"
}

​
Status de resposta

StatusSignificado
200Nota processada. Confira outcome.
400Body inválido.
401x-api-key ausente ou inválida.
402Emissão bloqueada por plano ou saldo da conta.
403Empresa inativa (Organization is inactive).
422Nota rejeitada na validação ou pela SEFAZ.
503SEFAZ indisponível. Tente de novo mais tarde.

Veja também Erros.