NF-e — modelo 55
A NF-e modelo 55 é a nota fiscal eletrônica de mercadorias usada em operações B2B, vendas interestaduais, transporte de mercadoria, marketplace, devolução. Mais complexa que NFC-e — destinatário é PJ com IE, tem ICMS interestadual + ST + DIFAL, cobrança em duplicatas, transportador real.
Diferença crítica vs NFC-e: NF-e é assíncrona (indSinc=0). Você envia o lote, recebe recibo, e
depois consulta retAutorizacao. O gateway esconde esse fluxo — você só vê status: 'processing' → 'authorized'.
Anatomia do payload
{
"issuer_id": "iss_industria_sp",
"external_ref": "venda-2026-0042",
"destinatario": {
"cnpj": "00000000000191",
"razao_social": "Cliente Atacado LTDA",
"ie": "111222333444",
"endereco": {
"logradouro": "Av Brasil",
"numero": "1000",
"bairro": "Centro",
"municipio": "Rio de Janeiro",
"uf": "RJ",
"cep": "20040020"
}
},
"items": [
{
"description": "Produto A — caixa c/ 24un",
"quantity": 10,
"unit_price": 150.00,
"ncm": "22021000",
"cfop": "6101",
"unit": "CX",
"cst_icms": "00",
"vBC": 1500.00,
"pICMS": 12.0,
"icms_st": {
"modBCST": "4",
"pMVAST": 38.24,
"pICMSST": 18.0
}
}
],
"transport": {
"modFrete": "1",
"transportador": {
"cnpj": "11111111000111",
"razao_social": "Transporte XYZ"
},
"veiculo": {
"placa": "ABC1D23",
"uf": "SP"
},
"volumes": [
{ "qVol": 10, "esp": "CAIXA", "pesoB": 24.0, "pesoL": 22.5 }
]
},
"cobranca": {
"fatura": { "nFat": "FAT-001", "vOrig": 1771.81, "vLiq": 1771.81 },
"duplicatas": [
{ "nDup": "001", "dVenc": "2026-06-10", "vDup": 590.60 },
{ "nDup": "002", "dVenc": "2026-07-10", "vDup": 590.60 },
{ "nDup": "003", "dVenc": "2026-08-10", "vDup": 590.61 }
]
}
}ICMS, ST e DIFAL — o que o gateway calcula
Pra cada item, o gateway aceita os campos diretos (vBC, pICMS, etc) OU calcula automaticamente quando você
manda só unit_price + ncm + cfop. A matriz interestadual 27×27 alíquotas + ST + DIFAL vem das tabelas IBPT/CONFAZ
embarcadas e atualizadas mensalmente.
| Campo | Vem de |
|---|---|
pICMS (alíquota interna) | Tabela UF emissor |
| Alíquota interestadual (4%/7%/12%) | Matriz origem×destino |
pMVAST (markup ST) | Tabela CONFAZ por NCM + UF |
pFCP (Fundo de Combate à Pobreza) | Tabela UF destino |
| DIFAL (EC 87/2015) | Calculado quando destinatário é não-contribuinte |
Eventos
NF-e tem mais eventos que NFC-e:
Carta de Correção (CCe)
Corrige erros não fiscais (descrição, transportador, etc) — até 20 CCes por nota.
curl -X POST https://api.zfiscoo.zek.app.br/v1/nfe/nfe_.../cce \
-H "Authorization: Bearer fk_live_..." \
-d '{
"correction_text": "Onde se lê: Av Brazil, leia-se: Av Brasil. Onde se lê: 1000-A, leia-se: 1000."
}'Manifestação do Destinatário
Quem recebe a nota usa pra confirmar/recusar:
| Código | Evento | Quando usar |
|---|---|---|
| 210200 | Ciência da Operação | Avisa SEFAZ que viu a nota |
| 210210 | Confirmação da Operação | Confirma recebimento da mercadoria |
| 210220 | Desconhecimento da Operação | ”Não foi pra mim” |
| 210240 | Operação Não Realizada | Recusou a mercadoria |
curl -X POST https://api.zfiscoo.zek.app.br/v1/nfe/nfe_.../manifestation \
-d '{ "event_code": "210210", "justification": "Mercadoria recebida em conformidade" }'Cancelamento
Janela: 24h após autorização (regra geral; varia por UF).
curl -X POST https://api.zfiscoo.zek.app.br/v1/nfe/nfe_.../cancel \
-d '{ "reason": "Operação cancelada por divergência de preço acordado" }'Diferenças NFC-e vs NF-e (cheat sheet)
| NFC-e (mod 65) | NF-e (mod 55) | |
|---|---|---|
| Destinatário | Consumidor final (CPF opcional) | PJ obrigatória (CNPJ + IE) |
| Síncrono? | indSinc=1 (autoriza na hora) | indSinc=0 (lote + recibo) |
| QR-code | Obrigatório | Não |
| ICMS interestadual | N/A (sempre intra) | Matriz 27×27 |
| ICMS ST | Raro | Comum |
| Transporte | Sem campo transp | Modal + veículo + condutor + volumes |
| Cobrança | Pagamento simples | Duplicatas |
| Layout XSD | ~30KB | ~90KB |
| Cancelamento | 30min | 24h |