Tema
NF-e simples (venda de produto)
Exemplo mínimo funcional para emitir uma NF-e de venda.
Request completo
bash
curl -X POST https://api.nferapido.com.br/api/v1/nfe \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @nfe.jsonnfe.json
json
{
"ide": {
"natOp": "Venda de mercadoria",
"serie": 1,
"nNF": 1
},
"dest": {
"cnpj": "33000167000101",
"xNome": "Cliente Teste LTDA",
"email": "cliente@exemplo.com",
"enderDest": {
"xLgr": "Av. República do Chile",
"nro": "65", "xBairro": "Centro",
"cMun": "3304557", "xMun": "Rio de Janeiro", "UF": "RJ",
"CEP": "20031170", "cPais": "1058", "xPais": "Brasil"
},
"indIEDest": "9"
},
"det": [{
"prod": {
"cProd": "PROD001", "cEAN": "SEM GTIN",
"xProd": "Camiseta tamanho M", "NCM": "61091000",
"CFOP": "6102", "uCom": "UN",
"qCom": "2", "vUnCom": "49.90", "vProd": "99.80",
"cEANTrib": "SEM GTIN", "uTrib": "UN",
"qTrib": "2", "vUnTrib": "49.90", "indTot": "1"
},
"imposto": {
"ICMS": { "ICMSSN102": { "orig": "0", "CSOSN": "102" } },
"PIS": { "PISNT": { "CST": "07" } },
"COFINS": { "COFINSNT": { "CST": "07" } }
}
}],
"total": {
"vProd": "99.80",
"vNF": "99.80",
"vDesc": "0.00",
"vFrete": "0.00"
},
"transp": { "modFrete": "9" },
"pag": [{ "tPag": "01", "vPag": "99.80" }],
"infAdic": { "infCpl": "Pedido Web #12345" }
}Fluxo completo
- POST → retorna
idimediatamente com statuspendente - Background job monta XML, assina, envia para SEFAZ (~3-8s)
- Webhook notifica sua URL quando autorizada
- GET
/api/v1/nfe/{id}→ status final com chave + protocolo - GET
/api/v1/nfe/{id}/danfe→ PDF da DANFE para download
Variações comuns
Venda para consumidor final (CPF)
Troque dest.cnpj por dest.cpf:
json
{
"dest": {
"cpf": "12345678909",
"xNome": "João da Silva",
"indIEDest": "9"
}
}Com frete e desconto
json
{
"total": {
"vProd": "100.00",
"vFrete": "15.00",
"vDesc": "10.00",
"vNF": "105.00"
}
}Com referência a pedido
json
{
"infAdic": {
"infCpl": "Pedido #PED-001234 Shopify",
"obsCont": [{ "xCampo": "ml_order", "xTexto": "2000012345" }]
}
}