TF Fiscal

Otros documentos fiscales

NFCom

5 endpoints

La API de NFCom (modelo 62, layout 1.00) permite emitir, consultar, cancelar y obtener el PDF (DANFE-COM) de Notas Fiscales Factura de Servicios de Comunicación Electrónica. La NFCom sustituye a los antiguos modelos 21/22 y documenta la factura de servicios de telecomunicación — telefonía, internet, TV por suscripción, datos. La autorización se realiza en el ambiente nacional único (SVRS). Los datos del emisor se rellenan automáticamente a partir del registro de la empresa (CNPJ, IE, razón social y dirección); los campos técnicos de la clave de acceso (cNF, cDV, cUF, dhEmi, mod) son calculados por el servidor. El QR-Code de consulta (qrCodNFCom) también se genera automáticamente.

EndpointMétodoDescripción
/api/nfcom/createPOSTEmitir NFCom
/api/nfcom/consultPOSTConsultar situación de la NFCom
/api/nfcom/cancelPOSTCancelar NFCom autorizada
/api/nfcom/pdfPOSTObtener el DANFE-COM (PDF) de la NFCom
/api/nfcom/get_listGETListar NFCom (paginado)
Acreditación obligatoria: la emisión de NFCom exige que el CNPJ emisor esté acreditado para el modelo 62 ante la autoridad fiscal de su UF (habilitación restringida a prestadores de servicios de telecomunicación). Sin la acreditación, la autoridad fiscal rechaza la emisión con cStat=203 ("Emissor não habilitado para emissão da NFCom"). La acreditación en homologación y en producción son etapas separadas.
POST/api/nfcom/create

Emitir NFCom

Emite una NFCom a partir del cuerpo enviado. El cliente envía únicamente los datos de negocio — el bloque del emisor (emit) se monta automáticamente a partir del registro de la empresa del token, y los campos técnicos de la clave de acceso son calculados por el servidor. El débito de crédito ocurre solo en producción (tpAmb=1) y cuando la NFCom es autorizada. Tras la autorización, el XML (nfcomProc) y el DANFE-COM (PDF) se generan y quedan disponibles por URL.

Headers obligatorios

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

Body — raíz

CampoTipoDescripción
ideobjectIdentificación de la NFCom (ambiente, serie, competencia del hecho generador)
dest *objectDatos del destinatario/tomador
assinante *objectDatos del suscriptor del servicio (obligatorio en el layout de la NFCom)
det *arrayÍtems facturados — mínimo 1
totalobjectTotalizador. Opcional — calculado a partir de los ítems cuando se omite
gFatobjectDatos de la factura (competencia, vencimiento, código de barras)
infAdFiscostringInformación de interés del Fisco
infCplarrayInformación complementaria (lista de textos)
autXMLarrayCNPJ/CPF autorizados a acceder al XML (lista de strings)
Campos obligatorios en la solicitud: dest con xNome, uno de CNPJ/CPF/idOutros y enderDest (xLgr, nro, xBairro, cMun, xMun, CEP con 8 dígitos, UF); assinante.iCodAssinante; y al menos 1 ítem en det con xProd, cClass (7 dígitos de la tabla de clasificación de ítems de la NFCom), vItem y vProd. Todos los demás campos son opcionales.

ide — Identificación

CampoTipoDescripción
tpAmbintAmbiente: 1=producción, 2=homologación. Default: 2
nNFlongNúmero secuencial de la NFCom. Opcional — auto-incrementado por el servidor cuando se omite o es 0
dhEmistringFecha/hora de emisión. Opcional — generada por el servidor cuando se omite
cMunFGlongCódigo IBGE del municipio del hecho generador (7 dígitos). Opcional — default: municipio del registro de la empresa
finNFComintFinalidad: 0=Normal, 3=Sustitución, 4=Ajuste. Default: 0
tpFatintTipo de facturación: 0=Normal, 1=Centralizado, 2=Cofacturación. Default: 0
nSiteAutorizintSitio autorizador (1 dígito de la clave). Default: 0
indPrePagostringIndicador de servicio prepago: "1" cuando aplica

Rellenados automáticamente por el servidor — no es necesario enviarlos: mod (fijo en 62), serie (serie de NFCom registrada en la empresa; configúrela en /api/company/edit vía serie_nfcom), cUF (derivado del registro de la empresa), cNF (código numérico de 7 dígitos), cDV (dígito verificador de la clave), tpEmis (normal) y verProc. El bloque emit completo y el infNFComSupl (QR-Code) también son montados por el servidor.

dest — Destinatario / Tomador

CampoTipoDescripción
xNome *stringNombre o razón social del destinatario
CNPJ ⚠stringCNPJ del destinatario (14 dígitos)
CPF ⚠stringCPF del destinatario (11 dígitos)
idOutros ⚠stringOtro documento de identificación (extranjero, etc.)
indIEDestintIndicador de IE: 1=contribuyente, 2=exento, 9=no contribuyente. Default: 9
IEstringInscripción Estatal del destinatario (cuando es contribuyente)
enderDest *objectDirección del destinatario (ver estructura abajo)

enderDest — Dirección

CampoTipoDescripción
xLgr *stringCalle
nro *stringNúmero
xCplstringComplemento
xBairro *stringBarrio
cMun *longCódigo IBGE del municipio (7 dígitos)
xMun *stringNombre del municipio
CEP *stringCódigo postal (8 dígitos)
UF *stringSigla de la UF (2 letras)
fonestringTeléfono
emailstringCorreo electrónico

assinante — Suscriptor del servicio

CampoTipoDescripción
iCodAssinante *stringCódigo único de identificación del suscriptor (1–30 caracteres)
tpAssinanteintTipo de suscriptor: 1=Comercial, 2=Industrial, 3=Residencial, 4=Productor rural, 5=Órgano público, 6=Prestador de servicio de telecom, 7=Misiones diplomáticas, 8=Iglesias y templos, 99=Otros. Default: 1
tpServUtilintTipo de servicio utilizado: 1=Telefonía, 2=Comunicación de datos, 3=TV por suscripción, 4=Acceso a Internet, 5=Multimedia, 6=Otros, 7=Varios. Default: 1
nContratostringNúmero del contrato del suscriptor

det[] — Ítems facturados

CampoTipoDescripción
cProdstringCódigo del ítem. Opcional — default: número secuencial
xProd *stringDescripción del servicio/ítem facturado
cClass *stringCódigo de clasificación del ítem (7 dígitos — tabla de clasificación de ítems de la NFCom)
CFOPstringCFOP de la prestación (obligatorio cuando el ítem tiene ICMS)
uMedstringUnidad de medida: 1=Minuto, 2=MB, 3=GB, 4=UN. Default: 4
qFaturadastringCantidad facturada. Default: "1"
vItem *stringValor unitario del ítem
vProd *stringValor total del ítem
vDescstringValor del descuento
infAdProdstringInformación adicional del ítem
icmsobjectTributación de ICMS del ítem (ver abajo)
pisobjectPIS del ítem (ver abajo)
cofinsobjectCOFINS del ítem (misma estructura del PIS)
ibscbsobjectIBS/CBS — Reforma Tributaria (ver abajo)

det[].icms — ICMS del ítem

CampoTipoDescripción
cststringCST del ICMS. Default: "00" (tributación integral)
vBCstringBase de cálculo del ICMS
pICMSstringAlícuota del ICMS (%)
vICMSstringValor del ICMS
simplesNacionalbooltrue = emisor del Simples Nacional (grupo ICMSSN)
semCSTbooltrue = ítem sin relación con el ICMS (indSemCST; no informe CFOP en ese caso)

det[].pis / det[].cofins

CampoTipoDescripción
cststringCST del PIS/COFINS (01, 02, 06, 07, 08, 09, 49). Default: "01"
vBCstringBase de cálculo
pAliqstringAlícuota (%)
valorstringValor del tributo

det[].ibscbs — IBS/CBS (Reforma Tributaria)

CampoTipoDescripción
cststringCST del IBS/CBS (3 dígitos)
cClassTribstringCódigo de clasificación tributaria
vBCstringBase de cálculo
pIBSUF / vIBSUFstringAlícuota y valor del IBS estadual
pIBSMun / vIBSMunstringAlícuota y valor del IBS municipal
vIBSstringValor total del IBS
pCBS / vCBSstringAlícuota y valor de la CBS

total — Totalizador (opcional)

CampoTipoDescripción
vProdstringSumatoria de los ítems. Calculado cuando se omite
vBCstringBase de cálculo total del ICMS
vICMSstringValor total del ICMS
vDescstringTotal de descuentos
vNFstringValor total de la NFCom. Default: igual a vProd

gFat — Datos de la factura

CampoTipoDescripción
CompetFatstringCompetencia de la factura en formato AAAAMM
dVencFatstringFecha de vencimiento en formato AAAA-MM-DD
codBarrasstringCódigo de barras de la factura (solo dígitos, 1–48)

* Campo obligatorio. ⚠ En el destinatario, al menos uno de CNPJ, CPF o idOutros es obligatorio. Los valores monetarios y alícuotas se envían como string con punto decimal (ej.: "99.90").

POST/api/nfcom/consult

Consultar situación de la NFCom

Consulta la situación actual de la NFCom en el ambiente nacional (SVRS) a partir de la clave de acceso.

Headers obligatorios

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

Body

CampoTipoDescripción
chNFCom *stringClave de acceso de la NFCom (44 dígitos)

* Campo obligatorio.

POST/api/nfcom/cancel

Cancelar NFCom

Cancela una NFCom autorizada (evento 110111). Requiere que la NFCom haya sido autorizada (posea protocolo) y aún no esté cancelada.

Headers obligatorios

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

Body

CampoTipoDescripción
chNFCom *stringClave de acceso de la NFCom (44 dígitos)
xJust *stringJustificación de la cancelación (mínimo 15 caracteres por exigencia de la autoridad fiscal)
nProt *stringProtocolo de autorización de la NFCom (16 dígitos)

* Campo obligatorio.

POST/api/nfcom/pdf

Obtener PDF de la NFCom

Retorna la URL del DANFE-COM — la representación en PDF de la NFCom (cuenta del suscriptor), conforme al MOC Anexo II. El PDF se genera automáticamente en la autorización; cuando aún no existe en el almacenamiento, se genera bajo demanda a partir del XML.

Headers obligatorios

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

Body

CampoTipoDescripción
chNFCom *stringClave de acceso de la NFCom (44 dígitos)

* Campo obligatorio.

GET/api/nfcom/get_list

Listar NFCom (paginado)

Lista las NFCom de la empresa con paginación. Los parámetros se pasan por query string (no en el body).

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)

* Campo obligatorio.