TF Fiscal

APIs principales

NFC-e

15 endpoints

POST/api/nfce/company/create

Registrar empresa para NFC-e

Registra (o actualiza) una empresa para la emisión de NFC-e. Razón social, IE, dirección y otros datos se extraen automáticamente vía SintegraWS a partir del CNPJ. Si el CNPJ ya existe para el usuario, se actualizan los campos NFC-e y se devuelve la empresa existente.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken del distribuidor (b2b)
signstringFirma MD5
timestampstringUnix timestamp en segundos

Body

CampoTipoDescripción
cnpj *stringCNPJ de la empresa emisora
cert_content *stringContenido del archivo del certificado A1 (.pfx/.p12) en Base64
cert_filestringObsoleto — rechazado a partir del 2026-09-01. URL HTTPS del certificado
cert_pwd *stringContraseña del certificado
csc_id *stringID del CSC (Código de Seguridad del Contribuyente) en la autoridad fiscal
csc *stringToken CSC (secreto compartido con la autoridad fiscal)
serie_nfceintSerie de la NFC-e
number_nfceintNúmero inicial de NFC-e
telefonestringTeléfono de la empresa

* Campo obligatorio. Los demás datos (nombre, IE, dirección, etc.) se extraen automáticamente vía SintegraWS desde el CNPJ.

POST/api/nfce/company/update

Actualizar empresa NFC-e

Actualiza la empresa NFC-e identificada por el header token. Todos los campos del body son opcionales — envíe solo los que desee modificar. Al actualizar cep, el sistema resuelve automáticamente stateCode e ibge. Cuando cert_content y cert_pwd vienen juntos, el certificado se valida antes de guardar.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa NFC-e
signstringFirma MD5
timestampstringUnix timestamp en segundos

Body (todos los campos opcionales — envíe ≥ 1)

CampoTipoDescripción
Identificación
namestringRazón social
aliasstringNombre comercial
iestringInscripción Estatal
invoice_typestringRégimen tributario
emailstringCorreo electrónico
telefonestringTeléfono
Dirección
cepstringCódigo postal (actualiza automáticamente stateCode e ibge)
addressstringDirección
house_numberstringNúmero
complementostringComplemento
townstringBarrio
citystringCiudad
statestringUF
NFC-e
csc_idstringID del CSC
cscstringToken CSC
serie_nfceintSerie
number_nfceintPróximo número
cert_contentstringContenido del archivo del certificado A1 (.pfx/.p12) en Base64
cert_filestringObsoleto — rechazado a partir del 2026-09-01. URL HTTPS del certificado
cert_pwdstringContraseña del certificado

Al menos 1 campo en el body es obligatorio. CNPJ es inmutable.

POST/api/nfce/company/get

Consultar empresa NFC-e

Devuelve los datos de la empresa NFC-e identificada por el header token. Atención: el método es POST pero no hay campos en el body — la empresa se resuelve solo por el token.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa NFC-e
signstringFirma MD5
timestampstringUnix timestamp en segundos

Body

Vacío. Puede enviarse {}.

Gestión de Categorías Fiscales NFC-e

Las categorías fiscales definen las reglas tributarias aplicadas a los productos al emitir NFC-e. A diferencia de la NFe, la NFC-e solo opera con ventas intraestatales, por lo que la estructura es simplificada: un solo objeto por impuesto, sin necesidad de múltiples escenarios.

Nota: Las categorías NFC-e se almacenan por separado de las categorías NFe. Cada categoría incluye configuraciones de ICMS, PIS, COFINS e IBS/CBS. Todos los endpoints de esta sección requieren los headers token, sign y timestamp.
POST/api/nfce/category/create

Crear categoría fiscal NFC-e

Crea una categoría fiscal NFC-e. Cada categoría tiene un único escenario (salida interna) y usa objetos planos para ICMS, PIS, COFINS e IBS/CBS (sin array, ya que NFC-e no permite múltiples escenarios por categoría). No incluye IPI.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa NFC-e
signstringFirma MD5
timestampstringUnix timestamp en segundos

Body (raíz)

CampoTipoDescripción
descricao *stringDescripción de la categoría
codigo_cfop *stringCódigo CFOP (ej.: 5102, 5405)
icms *objectConfiguración de ICMS (objeto plano)
pis *objectConfiguración de PIS (objeto plano)
cofins *objectConfiguración de COFINS (objeto plano)
ibs_cbsobjectConfiguración de IBS/CBS (Reforma Tributaria, opcional)
desconta_icms_pis_cofinsbooleanDescuenta el ICMS antes de calcular PIS/COFINS — tributa (importe − ICMS), estándar actual en Brasil; por defecto false (sin descuento, impuesto mayor)

icms

CampoTipoDescripción
situacao_tributaria *stringCST/CSOSN (ej.: 102, 500)
aliquota_reducaodecimalPorcentaje de reducción de base
aliquota_reducao_stdecimalPorcentaje de reducción de la base del ICMS-ST
aliquota_creditodecimalAlícuota de crédito del Simples Nacional en % (CSOSN 101, 201, 900)
aliquota_diferimentodecimalPorcentaje de diferimiento del ICMS (CST 51)
motivo_desoneracaostringCódigo del motivo de exoneración
ad_rem_icmsdecimalICMS monofásico — alícuota ad rem en R$/unidad (CST 02, 15, 53)
ad_rem_icms_retdecimalICMS monofásico — ad rem retenido en R$/unidad (CST 15, 61)
p_dif_monodecimalICMS monofásico — porcentaje de diferimiento (CST 53)
q_bc_monodecimalICMS monofásico — cantidad tributada (litros/kg); 0 usa la cantidad del ítem (CST 02, 15, 53)
valor_desoneracaodecimalValor del ICMS exonerado en BRL — emite vICMSDeson (CST 40, 41, 50, 90)
v_bc_st_retdecimalBase de cálculo del ICMS-ST retenido en la operación anterior (informado, no calculado — CST 60, CSOSN 500)
p_stdecimalAlícuota soportada por el consumidor final en % (informado, no calculado — CST 60, CSOSN 500)
v_icms_st_retdecimalValor del ICMS-ST retenido en la operación anterior (informado, no calculado — CST 60, CSOSN 500)
v_icms_substitutodecimalValor del ICMS propio del sustituto (informado, no calculado — CST 60, CSOSN 500)
v_bc_fcp_st_retdecimalBase de cálculo del FCP retenido por ST (informado, no calculado — CST 60, CSOSN 500)
p_fcp_st_retdecimalAlícuota del FCP retenido por ST en % (informado, no calculado — CST 60, CSOSN 500)
v_fcp_st_retdecimalValor del FCP retenido por ST (informado, no calculado — CST 60, CSOSN 500)
aliquota_icmsarrayAlícuotas por estado: [{ "estado": "SP", "aliquota": 18.00 }]
aliquota_icms_starrayAlícuota ICMS-ST por estado: [{ "estado": "SP", "aliquota": 18.00 }]
aliquota_mvaarrayMVA/IVA-ST por estado: [{ "estado": "SP", "aliquota": 40.00 }]
aliquota_fcparrayFCP por estado: [{ "estado": "SP", "aliquota": 0.00 }]
aliquota_fcp_starrayFCP-ST por estado: [{ "estado": "SP", "aliquota": 0.00 }]
beneficio_fiscalarrayBeneficio fiscal por estado: [{ "estado": "SP", "codigo": "SP800001" }]

pis / cofins

CampoTipoDescripción
situacao_tributaria *stringCST PIS/COFINS
aliquota *stringAlícuota porcentual (ej.: "0.00", "1.65", "7.60")
valor_unidadestringPIS/COFINS por cantidad — valor en R$/unidad; v = cantidad × valor (CST 03 y demás formas por cantidad)

ibs_cbs (opcional)

CampoTipoDescripción
situacao_tributaria *stringCST IBS/CBS
classificacao_tributaria *stringCódigo de clasificación tributaria
p_ibs_ufstringAlícuota del IBS estatal en % (opcional; vacío usa el valor por defecto de transición, 0,10 en 2026). Acepta punto o coma
p_ibs_munstringAlícuota del IBS municipal en % (opcional; por defecto 0 en 2026)
p_cbsstringAlícuota de la CBS en % (opcional; por defecto 0,90 en 2026)
p_red_aliqstringPorcentaje de reducción de alícuota (CST 011, 200, 515)
p_difstringPorcentaje de diferimiento (CST 510, 515)
p_red_bcstringPorcentaje de reducción de la base de cálculo (CST 222)
proporcaostringProporción de la operación en % (CST 221)
aliquota_cbs_monostringCBS monofásica — alícuota en % sobre la base; prevalece sobre valor_unidade_cbs (CST 620)
aliquota_ibs_monostringIBS monofásico — alícuota en % sobre la base; prevalece sobre valor_unidade_ibs (CST 620)
valor_unidade_cbsstringCBS monofásica — ad rem en R$/unidad; solo se usa cuando no hay alícuota porcentual (CST 620)
valor_unidade_ibsstringIBS monofásico — ad rem en R$/unidad; solo se usa cuando no hay alícuota porcentual (CST 620)
valor_deducao_legalstringValor de la deducción legal de la base en R$ (CST 830)

* Campo obligatorio.

GET/api/nfce/category/get_detail

Obtener categoría fiscal NFC-e

Devuelve los datos completos de una categoría fiscal NFC-e (descripción, CFOP, ICMS, PIS, COFINS y IBS/CBS).

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa NFC-e
signstringFirma MD5
timestampstringUnix timestamp en segundos

Query string

CampoTipoDescripción
category_id *stringID de la categoría NFC-e

* Campo obligatorio.

GET/api/nfce/category/get_list

Listar categorías fiscales NFC-e

Devuelve una lista paginada de categorías fiscales NFC-e registradas para la empresa autenticada.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa NFC-e
signstringFirma MD5
timestampstringUnix timestamp en segundos

Query string

CampoTipoDescripción
page *intNúmero de página (mínimo 1)
page_size *intÍtems por página (1 a 50)

* Campo obligatorio.

POST/api/nfce/category/edit

Editar categoría fiscal NFC-e

Nota: Misma estructura que el endpoint /api/nfce/category/create, con el campo adicional obligatorio category_id. Los campos icms, pis, cofins y ibs_cbs se reemplazan íntegramente (no se fusionan).

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa NFC-e
signstringFirma MD5
timestampstringUnix timestamp en segundos

Campo adicional

CampoTipoDescripción
category_id *stringID de la categoría a editar

* Campo obligatorio.

POST/api/nfce/category/delete

Eliminar categoría fiscal NFC-e

Elimina una categoría fiscal NFC-e. Operación irreversible. Los productos vinculados a esta categoría seguirán referenciando el category_id eliminado — actualícelos primero.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa NFC-e
signstringFirma MD5
timestampstringUnix timestamp en segundos

Body

CampoTipoDescripción
category_id *stringID de la categoría NFC-e a eliminar

* Campo obligatorio.

POST/api/nfce/create

Emitir NFC-e

Emite una NFC-e (modelo 65, siempre salida interna al estado, sin flete). Diferencias clave respecto al endpoint de NFe: el objeto del consumidor se llama client (no cliente); el número del domicilio es client.number; el consumidor es opcional; no existen impostos.ipi, shipping_address, delivery_address ni transportation. El campo de valor en pag_info se llama amount.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa NFC-e
signstringFirma MD5: MD5(token + path + body + timestamp)
timestampstringUnix timestamp en segundos (ventana de 5 minutos)

Body (raíz)

CampoTipoDescripción
nature_of_operation *stringNaturaleza de la operación (ej.: "Venta de mercadería")
issuance_type *stringTipo de emisión: "1" (normal), "9" (contingencia off-line NFC-e)
ambiente *string"1" producción, "2" homologación
products *arrayLista de productos (ver detalles abajo)
idstringIdentificador externo
ind_presstringPresencia del comprador: "1" presencial (default), "4" entrega a domicilio, "5" presencial fuera del establecimiento, "9" no aplica
ind_intermedstring"0" sin intermediario, "1" marketplace. Obligatorio cuando ind_pres = 2, 3 o 4
total_discount_amountdecimalDescuento total de la factura
trocodecimalValor del vuelto
segurodecimalValor del seguro
outras_despesasdecimalOtros gastos accesorios
informacoes_complementaresstringInformación complementaria al consumidor
informacoes_fiscostringInformación de interés fiscal
clientobjectDatos del consumidor (opcional — ver tabla)
pag_infoarrayPagos (default: dinero al contado — ver tabla)

client (opcional)

Complete solo si el consumidor está identificado. CPF o CNPJ deben enviarse solo con dígitos.

CampoTipoDescripción
cpfstringCPF (define persona física)
cnpjstringCNPJ (persona jurídica)
iestringInscripción estatal
namestringNombre / razón social
enderecostringDirección
numberstringNúmero del domicilio (atención: distinto de la NFe, que usa numero)
complementostringComplemento
bairrostringBarrio
citystringCiudad
ufstringUF (validada por el CEP, si se informa)
cepstringCódigo postal (solo dígitos)
telefonestringTeléfono
emailstringE-mail

products[] (cada ítem)

CampoTipoDescripción
name *stringNombre del producto (caracteres CJK se eliminan)
ncm *stringNCM (8 dígitos)
count *decimalCantidad
unit *stringUnidad comercial (ej.: "UN", "KG")
unit_price *decimalPrecio unitario
total_price *decimalValor total del ítem
origem *intOrigen de la mercadería (0..8)
indicador_total *int1 = compone el total de la factura; 0 = no compone
category_id ⚠stringID de categoría fiscal NFC-e (obligatorio si no envía impostos)
impostos ⚠objectImpuestos manuales (alternativa a category_id; sin IPI)
codigostringCódigo interno del producto
ceststringCEST
gtinstringGTIN/EAN comercial
gtin_tributavelstringGTIN tributable
discount_pricedecimalDescuento del ítem
nItemPedintÍtem del Pedido de Compra (I61). Número secuencial del ítem dentro del pedido referenciado en xPed (viene de id de raíz). Valores válidos: 1–999999. Default: omitido.

pag_info[] (cada ítem)

CampoTipoDescripción
payment_indicator *string"0" contado, "1" a crédito
payment_method *stringForma de pago (01=efectivo, 03=tarjeta crédito, 04=tarjeta débito, 17=PIX, 99=otros, etc.)
amountdecimalMonto pagado en esta forma
card_info.integration_typestring"1" integrado, "2" no integrado (obligatorio para tarjeta 03/04)
card_info.brand_codestringMarca de la tarjeta (obligatorio para tarjeta 03/04)
card_info.acquirer_cnpjstringCNPJ del adquirente
card_info.authorization_codestringCódigo de autorización

* Campo obligatorio. ⚠ category_id o impostos, uno de los dos es obligatorio.

Campos de la respuesta (data)

CampoTipoDescripción
uuidstringIdentificador interno de la NFC-e. Úselo en las consultas siguientes (/api/nfce/get_detail, /api/nfce/get_danfe)
statusstringSituación: "Success" (autorizada), "Failed" (rechazada/fallo), "Contingencia" (emitida en contingencia offline, pendiente de transmisión)
motivostringMensaje oficial de la autoridad fiscal según el cStat (formato bilingüe PT / 中文)
nfceintNúmero de la NFC-e emitida (atención: el campo se llama nfce, no nfe)
serieintSerie de la NFC-e
chavestringClave de acceso de 44 dígitos (vacía cuando la nota no fue autorizada)
modelostringModelo del documento: "nfce"
xmlstringURL del XML autorizado
danfestringURL del DANFE NFC-e — vacío en la emisión; genérelo bajo demanda con /api/nfce/get_danfe
En la contingencia offline (issuance_type = "9" o autoridad fiscal indisponible), la respuesta viene con status: "Contingencia" y los campos extra contingencia: true y tpEmis: 9; la nota debe transmitirse a la autoridad fiscal después.

Respuesta — rechazo / error

Cuando la autoridad fiscal rechaza la nota, success es false y data.motivo indica el motivo; la chave vuelve vacía. Los errores de validación de campos (antes de llegar a la autoridad fiscal) devuelven success: false con el mensaje en message, sin el objeto data.
        {
          "success": false,
          "data": {
            "uuid": "65f8b9a1c2d3e4f5a6b7c8d9",
            "status": "Failed",
            "motivo": "Rejeição 226: Código da UF do Emitente diverge da UF autorizadora / 拒绝 226: 发件人所在州代码与授权州不一致",
            "nfce": 5,
            "serie": 1,
            "chave": "",
            "modelo": "nfce",
            "xml": "",
            "danfe": ""
          }
        }
POST/api/nfce/cancel

Cancelar NFC-e

Cancela una NFC-e ya autorizada. A diferencia de la NFe, aquí el motivo de la cancelación lo proporciona el cliente y se envía a la autoridad fiscal. La ventana de cancelación en la autoridad fiscal es corta (normalmente 15-30 minutos tras la autorización).

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa emisora
signstringFirma MD5
timestampstringUnix timestamp en segundos

Body

CampoTipoDescripción
chave *stringClave de 44 dígitos de la NFC-e (atención: aquí es chave, no uuid como en otros endpoints)
motivo *stringJustificación de la cancelación (mínimo 15 caracteres por exigencia autoridad fiscal)

* Campo obligatorio.

Campos de la respuesta (data)

CampoTipoDescripción
motivostringMensaje oficial de la autoridad fiscal para el evento de cancelación
statusstringSituación: "Canceled" (cancelada)
nfceintNúmero de la NFC-e cancelada
serieintSerie de la NFC-e
chavestringClave de acceso de 44 dígitos
modelostringModelo del documento: "nfce"
cStatintCódigo del evento en la autoridad fiscal: 135 o 155 = cancelación homologada. Si la NFC-e ya estaba cancelada, la respuesta de éxito viene sin cStat

Respuesta — error

Cuando la autoridad fiscal rechaza el evento (p. ej. plazo de cancelación excedido), success es false y data viene con status: "Failed" y el cStat del rechazo. Los errores de validación (chave/motivo ausentes, motivo con menos de 15 caracteres, NFC-e no encontrada, contingencia aún no transmitida) devuelven success: false con el mensaje en message, sin el objeto data.
        {
          "success": false,
          "data": {
            "motivo": "Rejeição: Pedido de Cancelamento intempestivo",
            "status": "Failed",
            "nfce": 5,
            "serie": 1,
            "chave": "35210112345678901234650010000000051234567890",
            "modelo": "nfce",
            "cStat": 501
          }
        }
POST/api/nfce/return

Devolver NFC-e

Emite la devolución de una NFC-e autorizada. La devolución es una NF-e de entrada (modelo 55) que referencia en su XML la clave de acceso de la NFC-e original; la NFC-e no cuenta con un documento de devolución propio. El documento original se localiza entre los registros de NFC-e por uuid o chave, y los artículos y campos tributarios se toman de él. /api/invoice/return solo busca entre las NF-e y responde "la factura no existe" para cualquier NFC-e; utilice esta ruta.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa emisora
signstringFirma MD5
timestampstringUnix timestamp en segundos

Body

CampoTipoObligatorioDescripción
uuidstringNouuid de la NFC-e original. Indique este campo o chave
chavestringNoClave de acceso de 44 dígitos de la NFC-e original. Indique este campo o uuid
cfopstringSíCFOP de la devolución; habitualmente 1202 dentro del estado y 2202 entre estados
natureza_operacaostringNoNaturaleza de la operación. Valor predeterminado Devolução de Mercadoria
clienteobjectNoDestinatario, es decir, el comprador del documento original. Campos: cpf, cnpj, name, endereco, numero, complemento, bairro, city, uf, cep, email, telefone. Los campos enviados sustituyen a los del original; los omitidos se conservan

La devolución es una NF-e y la dirección del destinatario es obligatoria, mientras que la NFC-e normalmente no registra la dirección del comprador. Cuando el XML original no contiene dirección, cliente debe incluir endereco, bairro, city, uf y cep; la ruta indica cuáles faltan.

Solo puede devolverse una NFC-e autorizada. El entorno (producción o pruebas) sigue al del documento original y no se envía como parámetro.

Las llamadas repetidas no emiten dos veces: si ya existe una devolución para el mismo original en el mismo entorno, se devuelve ese documento.

La devolución es total. Los artículos, cantidades y campos tributarios provienen del original; los tributos se resuelven primero por la categoría fiscal y, a falta de ella, se copian del CST y las alícuotas del XML original.

Campos de la respuesta (data)

CampoTipoDescripción
uuidstringIdentificador del documento de devolución
statusstringSuccess autorizado, Failed rechazado
motivostringMensaje devuelto por la autoridad fiscal
nfeintNúmero del documento de devolución
serieintSerie del documento de devolución
chavestringClave de acceso de 44 dígitos del documento de devolución
modelostringSiempre nfe: la devolución es una NF-e
epecbooleanSi la emisión se realizó en contingencia
xmlstringURL del XML del documento de devolución

Respuesta — error

Ante problemas de parámetros o del documento original, success es false, el motivo viene en message y no hay data. Cuando la autoridad fiscal rechaza el documento, success también es false, pero data está presente con status igual a Failed y el motivo en motivo.
        {
          "success": false,
          "message": "A devolução é uma NF-e e exige o endereço do comprador; a NFC-e original não o traz. Informe em cliente: endereco, bairro, city, uf, cep / 退货票是 NF-e,必须有买方地址,原 NFC-e 没有。请在 cliente 里传:endereco、bairro、city、uf、cep"
        }
GET/api/nfce/get_detail

Consultar detalles de la NFC-e

Devuelve los detalles de una NFC-e específica por UUID. Incluye URLs del XML y del DANFE (cupón térmico), además de los datos del cliente cuando se proporcionan.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa emisora
signstringFirma MD5 (path incluye la query string)
timestampstringUnix timestamp en segundos

Query string

ParámetroTipoDescripción
uuid *stringUUID de la NFC-e

* Campo obligatorio.

POST/api/nfce/get_danfe

Obtener DANFE de la NFC-e

Devuelve la URL del DANFE NFC-e (cupón fiscal electrónico) en PDF, con código QR para consulta en la autoridad fiscal. Generación bajo demanda con caché por hash (clave + estado); las llamadas repetidas devuelven la URL existente.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa emisora
signstringFirma MD5
timestampstringUnix timestamp en segundos

Body

CampoTipoDescripción
uuid *stringUUID de la NFC-e (atención: aquí es uuid, a diferencia de cancel que usa chave)

* Campo obligatorio.

GET/api/nfce/get_list

Listar NFC-e (paginado)

Lista las NFC-e de la empresa con paginación. Los parámetros se pasan por query string (no en el body). El filtro de tiempo es opcional, pero si se envía requiere tanto start_create_time como end_create_time.

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa emisora
signstringFirma MD5 (path incluye la query string)
timestampstringUnix timestamp en segundos

Query string

ParámetroTipoDescripción
page *intNúmero de página (≥ 1)
page_size *intTamaño de página (1–50)
start_create_timelongUnix timestamp en milisegundos — inicio (requiere end_create_time)
end_create_timelongUnix timestamp en milisegundos — fin
statusstringFiltrar por estado. Valores: "Success" (autorizada), "Canceled" (cancelada), "Processing" (en proceso), "Failed" (falló), "Unknown" (desconocida)

* Campo obligatorio.

POST/api/nfce/export

Exportar NFC-e en lote

Exporta en lote las NFC-e de producción de la empresa por período (las notas de homologación no entran). La generación es asíncrona: la primera llamada dispara la exportación y responde "status": "Processing"; repita la misma llamada (mismo body) hasta recibir "status": "Success" con la url de descarga. XML y PDF salen en .zip (un archivo por nota); la planilla sale en .xlsx o .csv. El resultado vale por 10 días: en ese plazo, los mismos parámetros devuelven el mismo archivo (las notas emitidas después de la generación no entran — use otro período para generar un archivo nuevo).

Headers obligatorios

HeaderTipoDescripción
tokenstringToken de la empresa emisora
signstringFirma MD5
timestampstringUnix timestamp en segundos

Body

CampoTipoDescripción
type *string"xml" (ZIP de XMLs), "pdf" (ZIP de DANFEs) o "sheet" (planilla)
start_create_timestringFecha inicial dd/MM/yyyy, hora de Brasilia — el período comienza a las 00:00:00 de ese día
end_create_timestringFecha final dd/MM/yyyy — el día final entra completo (hasta las 23:59:59)
monthintAlternativa al período: mes completo (1–12, hora de Brasilia); mes mayor que el actual = año pasado
statusstring"all" (predeterminado), "emitida", "cancelada" o "contingencia"
patternstringPara sheet: "xlsx" (predeterminado) o "csv". Para pdf: ancho del cupón en mm — "80" (predeterminado), "72" o "50"

* Campo obligatorio. Informe el período con start_create_time + end_create_time o con month.

Ejemplo 1 — Venta Presencial (sin destinatario)

        {
          "nature_of_operation": "Venda de mercadoria",
          "ambiente": "2",
          "ind_pres": "1",
          "products": [
            {
              "codigo": "001",
              "name": "Refrigerante 350ml",
              "ncm": "22021000",
              "count": 3,
              "unit": "matriz",
              "unit_price": 5.50,
              "total_price": 16.50,
              "category_id": "BEBIDAS_PADRAO",
              "origem": "0",
              "indicador_total": "1",
              "cfop": "5102"
            }
          ],
          "pag_info": [
            { "payment_indicator": "0", "payment_method": "17" }
          ]
        }

Ejemplo 2 — Entrega a Domicilio (con destinatario)

        {
          "nature_of_operation": "Venda de mercadoria",
          "ambiente": "2",
          "ind_pres": "4",
          "client": {
            "cpf": "12345678900",
            "name": "Maria Silva",
            "endereco": "Rua das Flores",
            "number": "456",
            "bairro": "Jardim Primavera",
            "city": "São Paulo",
            "uf": "SP",
            "cep": "04567000"
          },
          "products": [
            {
              "codigo": "PIZZA01",
              "name": "Pizza Grande Marguerita",
              "ncm": "19059090",
              "count": 1,
              "unit": "matriz",
              "unit_price": 45.90,
              "total_price": 45.90,
              "category_id": "ALIMENTOS",
              "origem": "0",
              "indicador_total": "1",
              "cfop": "5102"
            }
          ],
          "pag_info": [
            { "payment_indicator": "0", "payment_method": "03" }
          ],
          "frete": 8.00,
          "informacoes_complementares": "Entrega em até 40 minutos"
        }