Issues an NF3e from the submitted body. The client sends only the business data — the issuer block (emit) is built automatically from the registration of the token's company, and the technical access-key fields are calculated by the server. Credit is debited only in production (tpAmb=1) and when the NF3e is authorized. After authorization, the XML (nf3eProc) and the DANF3E (PDF) are generated and made available by URL.
Required headers
| Header | Type | Description |
| token | string | Token of the issuing company |
| sign | string | MD5 signature: MD5(token + path + body + timestamp) |
| timestamp | string | Unix timestamp in seconds (5-minute window) |
Body — root
| Field | Type | Description |
| ide | object | NF3e identification (environment, taxable event period) |
| dest * | object | Recipient / consumer data |
| acessante * | object | Consumer unit data (required in the NF3e layout) |
| det * | array | Billed items — at least 1 |
| total | object | Totals. Optional — calculated from the items when omitted |
| gFat | object | Invoice data (billing period, due date, next reading, barcode) |
| gANEEL | array | Billing history (13 periods per quantity). Optional — generated automatically when omitted |
| infAdFisco | string | Information of interest to the tax authority |
| infCpl | array | Complementary information (list of texts) |
| autXML | array | CNPJs/CPFs authorized to access the XML (list of strings) |
Required fields in the request: dest with xNome, one of CNPJ/CPF/idOutros and enderDest (xLgr, nro, xBairro, cMun, xMun, CEP with 8 digits, UF); acessante.idAcesso; and at least 1 item in det with xProd, cClass (7 digits from the NF3e item classification table), vItem and vProd. All other fields are optional.
ide — Identification
| Field | Type | Description |
| tpAmb | int | Environment: 1=production, 2=staging. Default: 2 |
| nNF | long | Sequential NF3e number. Optional — auto-incremented by the server when omitted or 0 |
| dhEmi | string | Issuance date/time. Optional — generated by the server when omitted |
| cMunFG | long | IBGE code of the taxable event municipality (7 digits). Optional — default: the municipality from the company registration |
| finNF3e | int | Purpose: 1=Normal, 2=Replacement, 3=Normal with adjustment. Default: 1 |
| nSiteAutoriz | int | Authorizing site (1 digit of the access key). Default: 0 |
Filled in automatically by the server — you do not need to send them: mod (fixed at 66), serie (the NF3e series registered for the company; set it in /api/company/edit via serie_nf3e), cUF (derived from the company registration), cNF (7-digit numeric code), cDV (access key check digit), tpEmis (normal) and verProc. The complete emit block and the infNF3eSupl (QR code) are also built by the server.
dest — Recipient / Consumer
| Field | Type | Description |
| xNome * | string | Consumer name or corporate name |
| CNPJ ⚠ | string | Consumer CNPJ (14 digits) |
| CPF ⚠ | string | Consumer CPF (11 digits) |
| idOutros ⚠ | string | Other identification document |
| indIEDest | int | IE indicator: 1=taxpayer, 2=exempt, 9=non-taxpayer. Default: 9 |
| IE | string | Consumer state registration (when a taxpayer) |
| enderDest * | object | Consumer address (see structure below) |
enderDest — Address
| Field | Type | Description |
| xLgr * | string | Street |
| nro * | string | Number |
| xCpl | string | Complement |
| xBairro * | string | Neighborhood |
| cMun * | long | IBGE municipality code (7 digits) |
| xMun * | string | Municipality name |
| CEP * | string | Postal code (8 digits) |
| UF * | string | State abbreviation (2 letters) |
| fone | string | Phone |
| email | string | E-mail |
acessante — Consumer unit
| Field | Type | Description |
| idAcesso * | string | Consumer unit / access point identification code (up to 15 characters) |
| tpAcesso | int | Access type: 0=Generator, 1=Captive, 2=Free, 3=Partially free, 4=Special consumer, 5=Partially special, 6=Communion, 7=Supply, 8=Distributor. Default: 1 |
| xNomeUC | string | Consumer unit name |
| tpClasse | string | Consumption class: 01=Commercial, 02=Own consumption, 03=Public lighting, 04=Industrial, 05=Public authority, 06=Residential, 07=Rural, 08=Public service. Default: 06 |
| tpSubClasse | string | Consumption subclass (01–29, 99) |
| tpFase | int | Connection type: 1=Single-phase, 2=Two-phase, 3=Three-phase. Default: 3 |
| tpGrpTensao | string | Voltage group (01–14: A1..B4b). Default: 12 |
| tpModTar | string | Tariff modality (01–10: Conventional/Time-of-use Blue/Green/White...). Default: 01 |
| latGPS | string | Latitude of the capture point. Exactly 6 decimal places (e.g.: "-23.550500"). Default: standard coordinate |
| longGPS | string | Longitude of the capture point. Exactly 6 decimal places (e.g.: "-46.633300"). Default: standard coordinate |
det[] — Billed items
| Field | Type | Description |
| cProd | string | Item code. Optional — default: sequential number |
| xProd * | string | Description of the billed item (e.g.: "Consumo de energia elétrica") |
| cClass * | string | Item classification code (7 digits — NF3e item classification table) |
| CFOP | string | CFOP of the operation (required when the item has ICMS) |
| uMed | string | Unit of measure: 1=kW, 2=kWh, 3=kVAr, 4=kVArh, 5=UN. Default: 2 |
| qFaturada | string | Billed quantity. Default: "1" |
| vItem * | string | Unit value (tariff) of the item |
| vProd * | string | Total value of the item |
| indOrigemQtd | string | Quantity origin: 1=Average, 2=Measured, 3=Contracted, 4=Calculated, 5=Available cost, 6=No quantity. Default: 2 |
| infAdProd | string | Additional item information |
| icms | object | ICMS taxation of the item (see below) |
| pis | object | Item PIS (see below) |
| cofins | object | Item COFINS (same structure as PIS) |
| ibscbs | object | IBS/CBS — Tax Reform (see below) |
det[].icms — Item ICMS
| Field | Type | Description |
| cst | string | ICMS CST. Default: "00" (full taxation) |
| vBC | string | ICMS calculation base |
| pICMS | string | ICMS rate (%) |
| vICMS | string | ICMS value |
| isento | bool | true = exempt/non-taxed item (ICMS40 group) |
| semCST | bool | true = item not related to ICMS (indSemCST; do not send CFOP in this case) |
det[].pis / det[].cofins
| Field | Type | Description |
| cst | string | PIS/COFINS CST. Default: "01" |
| vBC | string | Calculation base |
| pAliq | string | Rate (%) |
| valor | string | Tax value |
det[].ibscbs — IBS/CBS (Tax Reform)
| Field | Type | Description |
| cst | string | IBS/CBS CST (3 digits) |
| cClassTrib | string | Tax classification code |
| vBC | string | Calculation base |
| pIBSUF / vIBSUF | string | Rate and value of the state IBS |
| pIBSMun / vIBSMun | string | Rate and value of the municipal IBS |
| vIBS | string | Total IBS value |
| pCBS / vCBS | string | Rate and value of the CBS |
gFat — Invoice data
| Field | Type | Description |
| CompetFat | string | Invoice billing period in AAAAMM format |
| dVencFat | string | Due date in AAAA-MM-DD format |
| dProxLeitura | string | Expected date of the next reading (AAAA-MM-DD). Optional — default: +30 days |
| codBarras | string | Barcode digitable line (digits only, 1–48) |
| codDebAuto | string | Automatic account debit authorization code (alternative to codBanco+codAgencia) |
| codBanco / codAgencia | string | Bank and branch for direct debit. One of the two groups (codDebAuto OR codBanco+codAgencia) is required by the schema — default: bank 001, branch 0001 |
* Required field. ⚠ In the recipient, at least one of CNPJ, CPF or idOutros is required. Monetary values and rates are sent as strings with a decimal point (e.g.: "75.00").