NFC-e
Issue NFC-e
Issues an electronic consumer receipt (model 65) for an in-state sale to the final consumer; asynchronous by default, or synchronous to print at the till.
/openapi/v2/empresas/{empresaId}/nfcetoken, timestamp and sign signature headers, see Authentication.The company must be approved, have a valid certificate and have NFC-e enabled through the emissaoNFeConsumidor block of the registration. The body uses the same field names as NF-e issuance, with the NFC-e restrictions and additions. ambienteEmissao must match the company current environment.
Path parameters
empresaId* | string | Issuing company identifier |
* Required field
Request body
id* | string | Request identifier |
ambienteEmissao* | string | Issuing environment |
modoResposta | string | Response mode |
consumidorFinal | bool | Final consumer |
informacoesAdicionais | string | Additional information |
| array | Taxpayer observations |
| array | Observations for the tax authority |
| array | Authorized to download the XML |
* | object | Order and payment |
*required for delivery, above the state identification threshold, or when the consumer asks for CPF on the receipt | object | Consumer |
*required for delivery sales | object | Transport |
* | array | Items |
* Required field
Autorizada, Negada or ContingenciaPendente (example below).AguardandoAutorizacao. The final result arrives by webhook; query with the same id.| Mode | Use | Response |
|---|---|---|
Assincrono (default) | Batches, delivery orders | HTTP 200 with no body; the result arrives by webhook or through the query |
Sincrono | A till that prints the receipt on the spot | HTTP 200 with the same body as the query. No result within 10 seconds: HTTP 202 with AguardandoAutorizacao; the final result arrives by webhook |
When SEFAZ is down and the state allows contingency, sync mode returns 200 with ContingenciaPendente: the offline receipt can be printed and handed over right away, and the platform sends it to SEFAZ once it is back.
The webhook is sent in both modes.
Idempotency. id is the key: sending the same id again returns the same invoice without issuing another. After a network timeout, retry with the same id. If the previous attempt ended Negada, the same id with corrected fields issues again. Suggested format: terminal + local sequence, such as PDV01-000123.
Each mode end to end: what to send, what the call returns and how the final result arrives. In both modes the webhook is only delivered if the nfce.* events are subscribed in Webhook.
Async 1/3: request
A restaurant order posted by the management system, with no wait at the till. modoResposta omitted means Assincrono.
{"id": "LOJA01-PED-98765","ambienteEmissao": "Homologacao","pedido": {"presencaConsumidor": "OperacaoPresencial","pagamento": { "formas": [ { "tipo": "PagamentoInstantaneoPix", "valor": 42.50 } ] }},"itens": [{"cfop": "5102", "codigo": "PF-FRANGO", "descricao": "PRATO FEITO FRANGO", "ncm": "21069090","quantidade": 1, "unidadeMedida": "UN", "valorUnitario": 32.50,"impostos": { "icms": { "situacaoTributaria": "102" }, "pis": { "situacaoTributaria": "49" }, "cofins": { "situacaoTributaria": "49" } }},{"cfop": "5405", "codigo": "7894900011517", "descricao": "REFRIGERANTE LATA 350ML", "ncm": "22021000", "cest": "0300700","quantidade": 2, "unidadeMedida": "UN", "valorUnitario": 5.00,"impostos": { "icms": { "situacaoTributaria": "500" }, "pis": { "situacaoTributaria": "49" }, "cofins": { "situacaoTributaria": "49" } }}]}
Async 2/3: HTTP 200 with no body
The call ends immediately with HTTP 200 and an empty body: it only means the request was accepted, not yet that the invoice was authorized. Validation errors return 400 right away, as in sync mode. Keep the id you sent; it identifies the invoice in the webhook (nfeId) and in the query.
Async 3/3: webhook with the result
Usually within a few seconds nfce.authorized arrives, as below. If SEFAZ refuses, nfce.rejected arrives with nfeStatus = Negada and the reason in nfeMotivoStatus; links and protocol are null. Without a webhook, query with the same id.
{"tipo": "NFC-e","empresaId": "1934811222334455","nfeId": "LOJA01-PED-98765","nfeStatus": "Autorizada","nfeMotivoStatus": null,"nfeLinkDanfe": "https://api.v2.tffiscal.com/openapi/files/danfce/35261111222333000181650010000001251123456784?token=MXw3fDEwMXwxNzU4...","nfeLinkXml": "https://api.v2.tffiscal.com/openapi/files/xml/9903?token=MXw3fDEwMXwxNzU4...","nfeNumero": "125","nfeSerie": "1","nfeChaveAcesso": "35261111222333000181650010000001251123456784","nfeDataEmissao": "2026-11-04T18:05:11Z","nfeDataAutorizacao": "2026-11-04T18:05:12Z","nfeNumeroProtocolo": "135261234567892","nfeQrCode": "https://www.homologacao.nfce.fazenda.sp.gov.br/qrcode?p=35261111222333000181650010000001251123456784|3|2"}
Async: rejection webhook
{"tipo": "NFC-e","empresaId": "1934811222334455","nfeId": "LOJA01-PED-98765","nfeStatus": "Negada","nfeMotivoStatus": "778 - Rejeicao: Informado NCM inexistente","nfeLinkDanfe": null,"nfeLinkXml": null,"nfeNumero": "125","nfeSerie": "1","nfeChaveAcesso": "35261111222333000181650010000001251123456784","nfeDataEmissao": "2026-11-04T18:05:11Z","nfeDataAutorizacao": null,"nfeNumeroProtocolo": null,"nfeQrCode": null}
Sync 1/3: request
The till sends "modoResposta": "Sincrono" and waits for the response to print the receipt. The full body is the request example at the top of the page; set your HTTP client timeout to at least 15 seconds.
Sync 2/3: HTTP 200 authorized
The common case: SEFAZ answers within 10 seconds and the call returns HTTP 200 with Autorizada (example in the Responses section). Print from linkDanfe, or lay out the receipt with qrCode, urlConsulta and chaveAcesso. The nfce.authorized webhook also arrives.
Sync 3/3: HTTP 202 waiting
SEFAZ did not answer within 10 seconds. The invoice already has a number and key but no protocol or receipt link yet; do not print yet. The final result arrives by nfce.authorized or nfce.rejected; you can also query with the same id. Resending with the same id does not issue another invoice. If the invoice was still queued, numero, serie and chaveAcesso are null too.
{"id": "PDV01-000123","tipo": "NFC-e","status": "AguardandoAutorizacao","motivoStatus": null,"ambienteEmissao": "Homologacao","dataCriacao": "2026-11-04T15:20:01Z","dataUltimaAlteracao": "2026-11-04T15:20:01Z","numero": "123","serie": "1","dataEmissao": "2026-11-04T15:20:01Z","chaveAcesso": "35261111222333000181650010000001231123456780","dataAutorizacao": null,"protocolo": null,"qrCode": "https://www.homologacao.nfce.fazenda.sp.gov.br/qrcode?p=35261111222333000181650010000001231123456780|3|2","urlConsulta": "https://www.homologacao.nfce.fazenda.sp.gov.br/consulta","linkDanfe": null,"linkDownloadXml": null,"emitidaEmContingencia": false,"alertas": [],"valorTotal": 60.30}
Sync: HTTP 200 in contingency
SEFAZ is down and the state allows contingency: HTTP 200 with ContingenciaPendente and emitidaEmContingencia = true. It already has linkDanfe; print and hand over the receipt, which carries the contingency mark. The platform sends it to SEFAZ once it is back and then sends nfce.authorized; if it is refused on transmission, it sends nfce.rejected.
{"id": "PDV01-000124","tipo": "NFC-e","status": "ContingenciaPendente","motivoStatus": null,"ambienteEmissao": "Homologacao","dataCriacao": "2026-11-04T15:31:40Z","dataUltimaAlteracao": "2026-11-04T15:31:42Z","numero": "124","serie": "1","dataEmissao": "2026-11-04T15:31:41Z","chaveAcesso": "35261111222333000181650010000001249123456782","dataAutorizacao": null,"protocolo": null,"qrCode": "https://www.homologacao.nfce.fazenda.sp.gov.br/qrcode?p=35261111222333000181650010000001249123456782|3|2|...","urlConsulta": "https://www.homologacao.nfce.fazenda.sp.gov.br/consulta","linkDanfe": "https://api.v2.tffiscal.com/openapi/files/danfce/35261111222333000181650010000001249123456782?token=MXw3fDEwMXwxNzU4...","linkDownloadXml": null,"emitidaEmContingencia": true,"alertas": [],"valorTotal": 60.30}
The platform checks these rules before numbering; a violation returns 10022004 and mensagem names it.
| Rule | Detail |
|---|---|
| In-state delivery and pickup | transporte.enderecoEntrega and transporte.enderecoRetirada in the same state as the issuer |
| Final consumer only | consumidorFinal only true; the buyer cannot have a state registration |
| Presence | Only OperacaoPresencial, EntregaEmDomicilio, OperacaoPresencialForaDoEstabelecimento |
| Delivery | Consumer identified with document and address, plus a carrier |
| Maximum amount | The invoice cannot exceed R$ 200,000; some states set a lower cap |
| Identification | Above R$ 10,000 the consumer must be identified; several states set a lower threshold |
| Payment | Sum minus change equals the total; SemPagamento is not accepted |
| Normal invoice only | No return, complementary, adjustment or referenced invoice |
| Real-time issuance | SEFAZ rejects an invoice issued more than 5 minutes before it receives it (code 704) |
Fields NFC-e does not accept. If sent, they are rejected all together in a single 10022004: finalidade other than Normal, naturezaOperacao, notaReferenciada, cobranca, exportacao, cliente.inscricaoEstadual, transporte.veiculo, transporte.reboques, transporte.retencaoIcms, and on items pedido, notaReferenciada, valorFrete, valorSeguro, impostos.ipi, impostos.icms.substituicaoTributaria, impostos.icms.difal.
Accepted CFOPs.
| CFOP | Use | ICMS codes |
|---|---|---|
| 5101, 5102 | Sale of own production / of purchased goods | CST 00, 20, 40, 41, 90; CSOSN 102, 103, 300, 400, 900 |
| 5103, 5104 | Sale outside the producing establishment | Same as above |
| 5115 | Sale of consigned goods | Same as above |
| 5405 | Sale of goods with ICMS-ST already withheld | CST 60; CSOSN 500 |
| 5910 | Gift, bonus or free sample | CST 00, 20, 40, 41, 60, 90; CSOSN 102, 103, 300, 400, 500, 900 |
CST 00, 20, 40, 41, 90 and CSOSN 102, 103, 300, 400, 900 only combine with 5101 to 5104, 5115 and 5910 (apart from the state exceptions below). The ICMS-ST already withheld codes, CST 60 and CSOSN 500, only combine with 5405, 5656, 5667 and 5910.
5656 and 5667 (fuel, CST 60 / 61 or CSOSN 500) require the combustivel group on the line. 5933 is a service line together with goods: it carries impostos.issqn instead of icms, the invoice needs at least one goods line with ICMS, and the issuer needs its municipal registration on the company profile. The service amount is added to the invoice total.
State exceptions: RS and ES accept 5949 with CST 90 / CSOSN 900; SP accepts 5949 with CST 40 / CSOSN 900, for recording tips; CE accepts 5403 and 5405 with CST 90 / CSOSN 900. MEI only uses CSOSN 102 or 300 with CFOP 5102; service lines follow the same rule, so an MEI cannot issue a service line.
Accepted ICMS codes.
| Regime | Codes |
|---|---|
| Normal regime (CST) | 00, 20, 40, 41, 60, 61; 90 depending on the state |
| Simples Nacional (CSOSN) | 102, 103, 300, 400, 500; 900 depending on the state |
| MEI | 102, 300 |
SEFAZ-side rules. Some states ban CSOSN 103 and 400; the platform does not check this at acceptance, and SEFAZ rejects it at authorization, leaving the invoice Negada.
pedido.presencaConsumidor | What changes in the body |
|---|---|
OperacaoPresencial | Only pedido and itens; cliente is optional; no transporte |
EntregaEmDomicilio | cliente with document and address, transporte.transportadora; pedido.intermediadorTransacao if the order came through an app |
OperacaoPresencialForaDoEstabelecimento | Like the in-store sale, plus pedido.municipioOcorrencia when the sale happens in another city; no transporte |
Some states ban delivery on NFC-e or limit it to the same city; see NFC-e.
In store, consumer not identified
The most common case at the till. No cliente; the receipt shows CONSUMIDOR NÃO IDENTIFICADO. Paid in cash with change: the sum of the payment forms minus troco equals the total.
{"id": "PDV01-000130","ambienteEmissao": "Homologacao","modoResposta": "Sincrono","pedido": {"presencaConsumidor": "OperacaoPresencial","pagamento": { "formas": [ { "tipo": "Dinheiro", "valor": 50.00 } ], "troco": 7.50 }},"itens": [{"cfop": "5102", "codigo": "PF-FRANGO", "descricao": "PRATO FEITO FRANGO", "ncm": "21069090","quantidade": 1, "unidadeMedida": "UN", "valorUnitario": 32.50,"impostos": { "icms": { "situacaoTributaria": "102" }, "pis": { "situacaoTributaria": "49" }, "cofins": { "situacaoTributaria": "49" } }},{"cfop": "5405", "codigo": "7894900011517", "descricao": "REFRIGERANTE LATA 350ML", "ncm": "22021000", "cest": "0300700","quantidade": 2, "unidadeMedida": "UN", "valorUnitario": 5.00,"impostos": { "icms": { "situacaoTributaria": "500" }, "pis": { "situacaoTributaria": "49" }, "cofins": { "situacaoTributaria": "49" } }}]}
In store, CPF on the receipt
The consumer asks for the CPF on the receipt: send cliente with only tipoPessoa and cpfCnpj. Name and address are optional, except above the state identification limit.
{"id": "PDV01-000131","ambienteEmissao": "Homologacao","modoResposta": "Sincrono","pedido": {"presencaConsumidor": "OperacaoPresencial","pagamento": { "formas": [ { "tipo": "PagamentoInstantaneoPix", "valor": 42.50 } ] }},"cliente": { "tipoPessoa": "F", "cpfCnpj": "52998224725" },"itens": [{"cfop": "5102", "codigo": "PF-FRANGO", "descricao": "PRATO FEITO FRANGO", "ncm": "21069090","quantidade": 1, "unidadeMedida": "UN", "valorUnitario": 32.50,"impostos": { "icms": { "situacaoTributaria": "102" }, "pis": { "situacaoTributaria": "49" }, "cofins": { "situacaoTributaria": "49" } }},{"cfop": "5405", "codigo": "7894900011517", "descricao": "REFRIGERANTE LATA 350ML", "ncm": "22021000", "cest": "0300700","quantidade": 2, "unidadeMedida": "UN", "valorUnitario": 5.00,"impostos": { "icms": { "situacaoTributaria": "500" }, "pis": { "situacaoTributaria": "49" }, "cofins": { "situacaoTributaria": "49" } }}]}
Own delivery
Order by phone or own website, delivered by the shop or a hired courier. cliente with document and delivery address, and transporte.transportadora.
{"id": "APP-DELIVERY-98765","ambienteEmissao": "Homologacao","pedido": {"presencaConsumidor": "EntregaEmDomicilio","pagamento": { "formas": [ { "tipo": "PagamentoInstantaneoPix", "valor": 89.90 } ] }},"cliente": {"tipoPessoa": "F","nome": "Maria da Silva","cpfCnpj": "52998224725","endereco": { "uf": "SP", "cidade": "3550308", "logradouro": "Rua Augusta", "numero": "1500", "bairro": "Consolacao", "cep": "01304001" }},"transporte": {"frete": { "modalidade": "PorContaDoEmitente" },"transportadora": { "cpfCnpj": "11222333000181", "nome": "Entregas Rapidas LTDA", "uf": "SP" }},"itens": [{"cfop": "5102", "codigo": "PIZ-GG-01", "descricao": "PIZZA GRANDE MUSSARELA", "ncm": "19059090","quantidade": 1, "unidadeMedida": "UN", "valorUnitario": 89.90,"impostos": { "icms": { "situacaoTributaria": "102" }, "pis": { "situacaoTributaria": "49" }, "cofins": { "situacaoTributaria": "49" } }}]}
Delivery through a delivery app
Same as own delivery, plus pedido.intermediadorTransacao with the platform CNPJ and the shop identifier on the platform.
{"id": "APP-DELIVERY-98766","ambienteEmissao": "Homologacao","pedido": {"presencaConsumidor": "EntregaEmDomicilio","pagamento": { "formas": [ { "tipo": "PagamentoInstantaneoPix", "valor": 89.90 } ] },"intermediadorTransacao": { "cnpj": "33444555000181", "identificadorCadastro": "loja-centro-123" }},"cliente": {"tipoPessoa": "F","nome": "Maria da Silva","cpfCnpj": "52998224725","endereco": { "uf": "SP", "cidade": "3550308", "logradouro": "Rua Augusta", "numero": "1500", "bairro": "Consolacao", "cep": "01304001" }},"transporte": {"frete": { "modalidade": "PorContaDoEmitente" },"transportadora": { "cpfCnpj": "11222333000181", "nome": "Entregas Rapidas LTDA", "uf": "SP" }},"itens": [{"cfop": "5102", "codigo": "PIZ-GG-01", "descricao": "PIZZA GRANDE MUSSARELA", "ncm": "19059090","quantidade": 1, "unidadeMedida": "UN", "valorUnitario": 89.90,"impostos": { "icms": { "situacaoTributaria": "102" }, "pis": { "situacaoTributaria": "49" }, "cofins": { "situacaoTributaria": "49" } }}]}
Outside the shop: fair in another city
Presential sale at a fair, event or street stall. The fair is in Campinas and the issuer is in São Paulo, so pedido.municipioOcorrencia = 3509502; if the sale is in the issuer city, omit the field. The city must be in the issuer state.
{"id": "FEIRA-CAMPINAS-0007","ambienteEmissao": "Homologacao","modoResposta": "Sincrono","pedido": {"presencaConsumidor": "OperacaoPresencialForaDoEstabelecimento","municipioOcorrencia": "3509502","pagamento": { "formas": [ { "tipo": "CartaoDeDebito", "valor": 36.00 } ] }},"itens": [{"cfop": "5102", "codigo": "DOCE-LEITE-500", "descricao": "DOCE DE LEITE POTE 500G", "ncm": "19019020","quantidade": 2, "unidadeMedida": "UN", "valorUnitario": 18.00,"impostos": { "icms": { "situacaoTributaria": "102" }, "pis": { "situacaoTributaria": "49" }, "cofins": { "situacaoTributaria": "49" } }}]}
modoRespostaResponse mode
Omitted means Assincrono.
| Values | Meaning |
|---|---|
| Assincrono | Accepts and returns HTTP 200 with no body; the result arrives by webhook |
| Sincrono | Waits up to 10 seconds for the SEFAZ result; without a result returns HTTP 202 |
pedido.presencaConsumidorConsumer presence
| Values | Meaning |
|---|---|
| OperacaoPresencial | In-store sale; do not send a carrier |
| EntregaEmDomicilio | Non-presential sale with delivery; requires cliente with document and address, and transporte.transportadora; delivery and pickup places must be in the issuer state |
| OperacaoPresencialForaDoEstabelecimento | Presential sale outside the shop, such as a fair or street stall; do not send a carrier |
pedido.pagamento.formas[].tipoPayment type
The same names as NF-e, except SemPagamento, which NFC-e does not accept. credenciadoraCartao is only accepted on the types marked below, and descricao only on Outros; on any other type they return 10022004.
| Values | Meaning |
|---|---|
| Dinheiro | Cash; may produce change |
| Cheque | Cheque |
| CartaoDeCredito | Credit card; many states require credenciadoraCartao |
| CartaoDeDebito | Debit card; many states require credenciadoraCartao |
| CreditoLoja | Store credit, sale on credit |
| ValeAlimentacao | Food voucher; accepts credenciadoraCartao |
| ValeRefeicao | Meal voucher; accepts credenciadoraCartao |
| ValePresente | Gift voucher; accepts credenciadoraCartao |
| ValeCombustivel | Fuel voucher; accepts credenciadoraCartao |
| BoletoBancario | Bank slip; accepts credenciadoraCartao |
| DepositoBancario | Bank deposit |
| PagamentoInstantaneoPix | Dynamic Pix; many states require credenciadoraCartao |
| TransferenciaBancaria | Bank transfer; accepts credenciadoraCartao |
| ProgramaDeFidelidade | Loyalty programme or cashback |
| PagamentoInstantaneoPixEstatico | Static Pix: static QR code, Pix key or account details |
| CreditoEmLoja | In-store balance from an earlier payment or a return |
| PagamentoEletronicoNaoInformado | Electronic payment not reported; only when a hardware failure prevents integrating the payment and offline issuance |
| PagamentoInstantaneoPixAutomatico | Automatic Pix, recurring charge |
| TransferenciaTefBookTransfer | TEF transfer between accounts at the same bank |
| PagamentoPosterior | Deferred payment; value 0, the sum may fall below the total and there is no change |
| Outros | Other; requires descricao |
pedido.pagamento.formas[].credenciadoraCartao.bandeiraCard brand
Case-insensitive; the platform converts it to the official code.
| Values | Meaning |
|---|---|
| Visa | Visa |
| Mastercard | Mastercard |
| AmericanExpress | AmericanExpress |
| Sorocred | Sorocred |
| DinersClub | DinersClub |
| Elo | Elo |
| Hipercard | Hipercard |
| Aura | Aura |
| Cabal | Cabal |
| Alelo | Alelo |
| BanesCard | BanesCard |
| CalCard | CalCard |
| Credz | Credz |
| Discover | Discover |
| GoodCard | GoodCard |
| GreenCard | GreenCard |
| Hiper | Hiper |
| JcB | JcB |
| Mais | Mais |
| MaxVan | MaxVan |
| Policard | Policard |
| RedeCompras | RedeCompras |
| Sodexo | Sodexo |
| ValeCard | ValeCard |
| Verocheque | Verocheque |
| VR | VR |
| Ticket | Ticket |
| Outros | Other brand |
itens[].impostos.issqn.exigibilidadeISS enforceability
| Values | Meaning |
|---|---|
| 1 | Enforceable |
| 2 | Non-incidence |
| 3 | Exemption |
| 4 | Export |
| 5 | Immunity |
| 6 | Suspended by court decision; send processo |
| 7 | Suspended by administrative proceeding; send processo |
transporte.frete.modalidadeFreight modality
Outside delivery only SemFrete, the default.
| Values | Meaning |
|---|---|
| SemFrete | No freight |
| PorContaDoEmitente | Freight paid by the seller |
| PorContaDoDestinatario | Freight paid by the buyer |
| PorContaDeTerceiros | Freight paid by a third party |
| TransporteProprioPorContaDoRemetente | Seller own transport |
| TransporteProprioPorContaDoDestinatario | Buyer own transport |
itens[].origemProduct origin
| Values | Meaning |
|---|---|
| 0 | Domestic |
| 1 | Directly imported |
| 2 | Imported, bought domestically |
| 3 | Domestic with over 40 % imported content |
| 4 | Domestic by basic production process |
| 5 | Domestic with up to 40 % imported content |
| 6 | Directly imported, no domestic equivalent |
| 7 | Imported from the domestic market, no domestic equivalent |
| 8 | Domestic with over 70 % imported content |
itens[].impostos.pis.situacaoTributariaPIS CST
| Values | Meaning |
|---|---|
| 01 | Taxable at the basic rate |
| 02 | Taxable at a differentiated rate |
| 03 | Taxable by quantity |
| 04 | Single-phase, resale at zero rate |
| 05 | Tax substitution |
| 06 | Zero rate |
| 07 | Exempt |
| 08 | Not levied (export) |
| 09 | Suspended |
| 49 | Other outbound operations |
| 50–56 | Inbound with credit right, by revenue type (returns only) |
| 60–66 | Inbound with presumed credit, by revenue type (returns only) |
| 67 | Presumed credit, other operations (returns only) |
| 70 | Inbound without credit right |
| 71 | Inbound exempt |
| 72 | Inbound suspended |
| 73 | Inbound at zero rate |
| 74 | Inbound not levied |
| 75 | Inbound under tax substitution |
| 98 | Other inbound operations |
| 99 | Other operations |
itens[].impostos.cofins.situacaoTributariaCOFINS CST
Same table as PIS.
| Values | Meaning |
|---|---|
| 01 | Taxable at the basic rate |
| 02 | Taxable at a differentiated rate |
| 03 | Taxable by quantity |
| 04 | Single-phase, resale at zero rate |
| 05 | Tax substitution |
| 06 | Zero rate |
| 07 | Exempt |
| 08 | Not levied (export) |
| 09 | Suspended |
| 49 | Other outbound operations |
| 50–56 | Inbound with credit right, by revenue type (returns only) |
| 60–66 | Inbound with presumed credit, by revenue type (returns only) |
| 67 | Presumed credit, other operations (returns only) |
| 70 | Inbound without credit right |
| 71 | Inbound exempt |
| 72 | Inbound suspended |
| 73 | Inbound at zero rate |
| 74 | Inbound not levied |
| 75 | Inbound under tax substitution |
| 98 | Other inbound operations |
| 99 | Other operations |
| Code | HTTP | |
|---|---|---|
| 10003000 | 404 | empresaId not found. |
| 10022001 | 400 | NFC-e not enabled for the current environment. Send emissaoNFeConsumidor in the registration. |
| 10022002 | 400 | The company cannot issue: not approved or certificate unavailable. |
| 10022003 | 400 | ambienteEmissao differs from the company current environment. |
| 10022004 | 400 | Violates an NFC-e rule; mensagem names it. Fix it or issue an NF-e. |
| 10022009 | 400 | The state requires QR Code v2 and the company has no usable CSC. QR Code v2 is switched on by the platform for the company and the CSC only takes effect in production; contact the platform. |
| 10001001 | 400 | Field validation; mensagem points to the field. |
| 10005000 | 400 | The tax engine rejected the taxes; mensagem gives the reason. |
