Extracción de datos de facturas CFDI mexicanas
a Excel: guía práctica (2026)
Una factura CFDI mexicana no es un PDF con un número de IVA. Es un documento XML validado en tiempo real por el SAT, que lleva un UUID de 36 caracteres, RFC emparejados de ambas partes, un código de régimen fiscal y —en el caso de pagos PPD— un Complemento de Pago separado que hace referencia a la factura original. Extraer estos datos a Excel significa manejar una estructura diseñada para el cumplimiento fiscal, no para informes legibles para humanos. El formato que importa legalmente es el XML, incluso si el documento que llega a tu bandeja de entrada es un PDF. ¿Nuevo en CFDI por completo? Empieza con nuestra guía para principiantes: ¿Qué es un CFDI? y luego vuelve aquí para el flujo de trabajo paso a paso de CFDI a Excel. Para una comparación de todos los métodos de extracción y el panorama completo de complementos, consulta la guía completa de extracción de CFDI.

Conclusiones clave
- El PDF de CFDI en tu bandeja de entrada es una impresión decorativa, no el documento legalmente válido. Descartar el XML y conservar solo el PDF conlleva multas de auditoría del 5–10% del valor de la factura por cada ocurrencia.
- Para facturas PPD, las fechas de pago y los montos de liquidación viven en documentos Complemento de Pago separados vinculados solo por UUID, y la mayoría de los equipos de AP nunca los extraen, dejando facturas flotando en el libro mayor sin referencia de pago.
- ImageToTable.ai extrae datos de CFDI del PDF o copia escaneada, incluidos los campos de complemento, usando los mismos nombres de columna en todos los proveedores, independientemente del software de facturación que usen.
Qué es realmente una factura CFDI — y por qué extraer sus datos es diferente

Un CFDI (Comprobante Fiscal Digital por Internet) es el formato de factura electrónica obligatorio en México, aplicado por el SAT (Servicio de Administración Tributaria) desde 2014. No es un documento que puedas tratar como un PDF de un proveedor de EE. UU. o de Europa. Cada CFDI pasa por un modelo de validación de tres partes: el emisor genera el XML, un PAC (Proveedor Autorizado de Certificación) lo valida y lo sella digitalmente —un proceso llamado timbrado— y el SAT recibe una copia en tiempo real. Solo después de que el PAC aplica el sello digital, la factura adquiere validez legal.
La versión actual, CFDI 4.0, se volvió obligatoria para todos los contribuyentes el 1 de abril de 2023 e introdujo una validación más estricta del receptor: el RFC, el nombre legal y el código postal del domicilio fiscal del destinatario deben coincidir exactamente con el registro de contribuyentes del SAT. Las facturas de la versión 3.3 ya no son aceptadas por los sistemas del SAT. Para cualquiera que reciba facturas de proveedores mexicanos, esto significa que cada documento que manejas es la versión 4.0, lo supieras o no.
Un CFDI contiene campos que no tienen equivalente en una factura estándar: Uso CFDI (un código que declara cómo usará el receptor la factura para fines fiscales — G01 para adquisiciones, G03 para gastos, P01 para pagos pendientes), Régimen Fiscal (el código del régimen fiscal del emisor) y el UUID (Folio Fiscal), un identificador único de 36 caracteres asignado por el SAT que se convierte en la referencia permanente de esa transacción en todos los sistemas de la infraestructura fiscal de México. Si estás conciliando pagos, presentando la DIOT (Declaración Informativa de Operaciones con Terceros) o preparándote para una auditoría, el UUID es el campo que lo conecta todo.
Y luego está el XML. Según la ley fiscal mexicana, el archivo XML es el documento legalmente válido — la representación en PDF es secundaria e informativa. Tanto el emisor como el receptor deben conservar el XML durante al menos cinco años según el Artículo 30 del CFF. No archivar los CFDIs correctamente conlleva multas del 5–10% del valor de la factura por cada ocurrencia. Las empresas que tratan el PDF como "la factura" y descartan el XML están asumiendo un riesgo de auditoría que quizá no descubran hasta que el SAT solicite los registros.
A la mayoría de los equipos de AP que trabajan con México no les faltan datos de facturas. Les falta un formato que su sistema contable pueda ingerir. El XML está estructurado pero es jerárquico. El PDF es legible pero no está estructurado. Los datos son los mismos — el paso que rompe el proceso es convertirlos en columnas de Excel.
Los Tres Formatos de CFDI que Realmente Recibirás — y Qué Significa Cada Uno para la Extracción
En la práctica, una factura de proveedor mexicano llega a tu equipo de AP en una de tres formas. Cada una contiene los mismos datos del CFDI, pero requiere un enfoque de extracción fundamentalmente diferente.

| Formato | Cómo llega | Desafío de extracción | Validez legal |
|---|---|---|---|
| XML | Adjunto de correo, descarga del portal del SAT, descarga del PAC | Esquema jerárquico (Anexo 20); los complementos anidados requieren XPath o análisis consciente del esquema | Legalmente definitivo |
| Adjunto de correo, portal del proveedor | Solo diseño visual; sin datos estructurados incrustados; el código QR contiene el UUID pero requiere consulta externa | Representación informativa del XML | |
| Escaneado / foto | Proveedores físicos, recibos de campo, WhatsApp | Sin datos digitales; depende por completo del reconocimiento visual del diseño impreso del CFDI | Ninguna — debe vincularse al registro XML |
Extracción de XML suena sencilla — es un formato estructurado con un esquema publicado (Anexo 20 versión 4.0 del SAT, definido en XSD). Pero el XML del CFDI es profundamente jerárquico: el nodo raíz contiene los datos del emisor y receptor, cada partida (Concepto) anida cantidad, código de unidad, código de producto/servicio (del catálogo c_ClaveProdServ del SAT), precio unitario y desglose de impuestos. Un Complemento de Pago — requerido cuando la factura original se emitió bajo PPD (Pago en Parcialidades o Diferido) — es un documento XML separado que referencia el UUID del CFDI original y detalla qué pagos liquidaron qué facturas, cuándo y por qué montos. Extraer esto en filas planas de Excel significa recorrer una estructura de árbol y resolver referencias entre documentos.
Extracción de PDF es el escenario más común en el mundo real porque los proveedores mexicanos suelen enviar por correo la representación en PDF, no el XML crudo. El PDF es una representación legible para humanos — los mismos datos, pero sin etiquetas estructuradas. Cada campo debe identificarse por su posición visual o mediante la comprensión semántica del texto. Aquí es donde las herramientas de OCR basadas en plantillas fallan: un CFDI en PDF de Grupo Bimbo no se parece en nada al de un pequeño proveedor de servicios que usa CONTPAQi Factura Electrónica.
Los CFDI escaneados o fotografiados añaden degradación de calidad de imagen: ángulos sesgados, sombras, cámaras de teléfono de baja resolución. Estos llegan de proveedores más pequeños que imprimen facturas y las entregan a los conductores de reparto, o de personal de campo que fotografía recibos con WhatsApp. Los datos siguen siendo datos CFDI — UUID, RFC, desglose de IVA — pero extraerlos significa trabajar con píxeles que ningún analizador XML verá jamás.
Entender la variedad de formatos es el primer paso. El segundo es saber exactamente qué campos importan para tu contabilidad — y a qué códigos de catálogo del SAT corresponden.
Los campos CFDI que necesitas en tu salida de Excel — y por qué cada uno importa

No todos los campos de un CFDI pertenecen a tu Excel. Un XML completo compatible con el Anexo 20 puede contener más de 60 puntos de datos distintos. Para conciliación de cuentas por pagar, asientos contables y presentación de impuestos, estos son los campos que justifican el espacio en la columna:
| Campo | Nombre en español | Qué es | Por qué lo necesitas |
|---|---|---|---|
| UUID | Folio Fiscal | Identificador único de 36 caracteres asignado por el SAT al timbrar | Referencia definitiva para auditorías, declaración DIOT, conciliación de pagos y seguimiento de cancelaciones |
| Issuer RFC | RFC Emisor | RFC de 13 caracteres del proveedor (4 letras + 6 dígitos + 3 alfanuméricos para personas morales) | Identificación del proveedor en tu ERP; requerido para reportar IVA en compras en la DIOT |
| Receiver RFC | RFC Receptor | RFC de tu empresa registrado ante el SAT | En CFDI 4.0, debe coincidir exactamente con el registro del SAT; una discrepancia invalida el CFDI para deducción |
| Issue Date | Fecha | Marca de tiempo ISO 8601 de emisión y certificación del PAC | Determina el período fiscal del IVA; define el momento del devengo contable |
| CFDI Use Code | Uso CFDI | Código del catálogo SAT: G01 (adquisiciones), G02 (devoluciones), G03 (gastos), P01 (pago pendiente) y otros | Determina la categoría de deducibilidad; el SAT cruza el código de uso con el régimen fiscal del receptor |
| Payment Method | Método de Pago | PUE (Pago en una sola Exhibición) o PPD (Pago en Parcialidades o Diferido) | PPD requiere el Complemento de Pago; determina si debes cotejar con un XML de pago por separado |
| Payment Form | Forma de Pago | Catálogo SAT 01–99: 01 (efectivo), 02 (cheque), 03 (transferencia bancaria), 04 (tarjeta de crédito), etc. | Requerido para conciliación bancaria y rastreo de pagos ante el SAT |
| Fiscal Regime | Régimen Fiscal | Código SAT del régimen fiscal del emisor (601: general de ley personas morales, 612: persona física con actividad empresarial, 626: régimen simplificado de confianza, etc.) | Determina las obligaciones de retención; el SAT valida el régimen contra el tipo de actividad |
| Subtotal | Subtotal | Monto antes de IVA | Base contable; debe coincidir con la suma de partidas |
| IVA / Impuesto | Impuestos / IVA | Monto de IVA (generalmente 16%) desglosado por tasa (16%, 8% frontera, 0% exportaciones/bienes básicos) | IVA acreditable en declaración mensual; seguimiento separado por tasa |
| Total | Total | Subtotal + IVA + retenciones (ISR, IVA retenido) | Monto a pagar; cifra que va a tu antigüedad de CxP |
| Código de Producto/Servicio | ClaveProdServ | Código del catálogo SAT que clasifica cada partida (ej. 84111506 para servicios contables) | Requerido para el detalle de DIOT; SAT concilia códigos contra actividad declarada |
Estos doce campos forman el conjunto de datos mínimo viable para cualquier flujo de cuentas por pagar que involucre facturas mexicanas. Sin el UUID no puedes verificar la factura en el portal del SAT ni rastrear su estado de cancelación. Sin el Uso CFDI podrías registrar un gasto en la categoría de deducibilidad incorrecta. Sin el Régimen Fiscal no puedes determinar si el IVA del proveedor está sujeto a retención (retención de IVA, dos tercios del monto del IVA, o 10.6667% del subtotal, según el Artículo 1-A de la LIVA cuando una persona moral paga a una persona física por servicios, arrendamiento o comisiones).
Más allá de los campos a nivel de encabezado, las partidas llevan sus propios datos estructurados: cantidad, unidad de medida (del catálogo c_ClaveUnidad del SAT), descripción, precio unitario y desglose de impuestos por artículo. Para empresas que realizan conciliación de tres vías (OC → recepción de mercancía → CFDI), la extracción de partidas es lo que hace que el CFDI sea comparable con la orden de compra línea por línea.
Los campos están bien definidos. El desafío es sacarlos del documento y llevarlos a tu hoja de cálculo — y ese proceso depende en gran medida del formato con el que empieces.
Cómo extraer datos de CFDI a Excel: flujo de trabajo paso a paso
Existen cuatro rutas para obtener datos de CFDI en Excel, ordenadas de la más a la menos común en operaciones reales de cuentas por pagar. La ruta que elijas depende de si tienes el XML, el PDF o solo una imagen, y si procesas una factura o cien.
Ruta 1: Análisis de XML (cuando tienes el archivo CFDI original)
Si tu proveedor proporciona el XML, o lo descargas del portal del SAT, puedes extraer datos estructurados mediante programación. Herramientas como Python con lxml o bibliotecas CFDI especializadas (cfdipython, PyCFDI) pueden recorrer el esquema del Anexo 20 y obtener campos por XPath. El inconveniente: esta ruta asume que sabes programar, manejas XML con espacios de nombres (cada elemento CFDI está en un espacio de nombres definido por el SAT) y mantienes la lógica de análisis ante actualizaciones de catálogos. El SAT actualiza sus catálogos periódicamente; los códigos c_RegimenFiscal y c_UsoCFDI cambian, y un mapeo fijo quedará obsoleto.
Para la conciliación de Complemento de Pago —emparejar pagos con facturas originales— el análisis de XML se vuelve mucho más complejo porque trabajas con dos documentos XML vinculados solo por referencia UUID. Una sola factura PPD puede liquidarse con múltiples pagos a lo largo de meses, cada uno generando su propio Complemento de Pago. La lógica de conciliación (qué pago cubrió qué factura, cuál era el saldo pendiente en cada momento) no es una simple extracción de campos, sino un cálculo financiero entre documentos relacionados.
Ruta 2: Extracción de PDF con herramientas basadas en plantillas
Las herramientas OCR basadas en plantillas —donde dibujas rectángulos alrededor de cada campo en un documento de muestra y la herramienta reaplica esas coordenadas a facturas futuras— fallan con los PDF de CFDI por una razón simple: cada proveedor usa un software de facturación diferente. Un CFDI generado por CONTPAQi Factura Electrónica se ve distinto a uno generado por Aspel FACTURAe, Alegra o una integración ERP personalizada. El UUID, los RFC y el desglose del IVA aparecen en posiciones distintas, con diferentes tamaños de fuente y textos circundantes. Una plantilla creada para un CFDI con addenda de Walmart fallará con el CFDI de un proveedor pequeño, y viceversa.
Esta es una limitación fundamental de la extracción basada en coordenadas aplicada a un tipo de documento donde la estructura de datos está estandarizada (Anexo 20), pero el diseño visual no.
Ruta 3: Extracción semántica impulsada por IA (funciona con cualquier formato)
La extracción semántica — el enfoque que usa ImageToTable.ai — no se fija en coordenadas. Lee el documento como lo haría una persona: entendiendo qué significa cada fragmento de texto, no dónde se encuentra en la página. Le indicas a la herramienta qué campos quieres — "UUID," "RFC Emisor," "SubTotal," "IVA 16%" — y la IA localiza cada valor en cualquier parte del documento reconociendo el concepto que representa, sin importar el diseño.
Este mecanismo se llama Extracción de Columnas Personalizadas: escribes los nombres de las columnas que quieres en tu hoja de cálculo de salida, y la IA utiliza la comprensión del lenguaje visual para encontrar los datos correspondientes en cada página. No dibujas rectángulos, no creas plantillas y no necesitas saber en qué parte de la página aparece un campo. El mismo conjunto de nombres de columnas funciona en PDF de CFDI de diferentes proveedores y copias escaneadas, porque la IA reconoce "el IVA 16% es el monto de impuesto a la tasa del 16%" en lugar de "el número en el recuadro en las coordenadas (430, 210)".
Este es el flujo de trabajo paso a paso:
Sube tus archivos CFDI
Arrastra y suelta PDFs CFDI o archivos de imagen, una factura individual o un lote. La herramienta lee el documento visual, por lo que maneja ambos sin que tengas que preclasificarlos por tipo. (Un archivo XML crudo es datos estructurados, no un documento visual; analízalo directamente, como en la Ruta 1.) Para procesamiento por lotes, sube todos los CFDI de proveedores a la vez; la IA procesará cada archivo de forma independiente y fusionará los resultados en un solo Excel.
Define los nombres de tus columnas
Ingresa los campos que necesitas como nombres de columna — "UUID," "RFC Emisor," "RFC Receptor," "Fecha," "Uso CFDI," "Método de Pago," "Régimen Fiscal," "SubTotal," "IVA," "Total." Los nombres de columna que escribes se convierten en los encabezados exactos de tu hoja de cálculo de salida. Para extracción de partidas, especifica "Cantidad," "ClaveProdServ," "Descripción," "Precio Unitario," "Importe."
Agrega columnas calculadas e inferidas (opcional)
¿Necesitas el IVA al 8% (tasa de zona fronteriza) separado de la tasa del 16%? Define una columna calculada — la IA realiza el cálculo durante la extracción y genera el resultado directamente. ¿Quieres que la IA clasifique cada CFDI por categoría según el Régimen Fiscal del proveedor? Usa una columna inferida — especifica "Tipo Proveedor (opciones: Gran Contribuyente/ PYME / Persona Física)" y la IA lee los datos del CFDI y asigna la categoría correcta, aunque el documento en sí no tenga un campo "Tipo Proveedor". Esto te permite completar la extracción y clasificación en una sola pasada.
Descarga el archivo Excel de facturas CFDI
Exporta como XLSX, CSV o JSON. Las fechas se normalizan a un formato consistente, los montos son numéricos (sin cadenas de símbolos de moneda) y los UUID se conservan sin que el autoformato de Excel elimine caracteres. La salida está lista para importar en CONTPAQi Contabilidad, Aspel COI, Alegra, SAP o cualquier ERP que acepte datos estructurados.
Los archivos se procesan de forma segura y no se almacenan.
Para equipos que procesan facturas CFDI en volumen, el procesamiento por lotes cambia las reglas del juego. Sube todos los CFDI recibidos de una vez — ya sean 20 o 200 — y la herramienta los procesa en paralelo, fusionando todos los datos extraídos en un solo archivo de Excel con una fila por factura. La diferencia de velocidad de 18× entre la captura manual (aproximadamente 3 minutos por factura) y la extracción con IA (5–10 segundos por página) se multiplica con el volumen: 100 CFDI que tomarían 5 horas de captura manual se completan en menos de 10 minutos. Para un ciclo mensual de cierre de cuentas por pagar, esa brecha es la diferencia entre terminar la conciliación a tiempo o arrastrarla al siguiente período. Para un flujo de trabajo completo de fin de mes que maneja más de 50 facturas de múltiples proveedores — incluyendo clasificación PUE/PPD, deduplicación de UUID y preparación de DIOT — consulta nuestra guía sobre procesamiento por lotes de facturas CFDI mexicanas en cuentas por pagar.
Una vez que las columnas están pobladas, la siguiente pregunta es si los valores son correctos. El Modo de Revisión lo responde sin necesidad de una lectura comparativa: pasa el cursor o haz clic en cualquier celda extraída y la herramienta resalta la región exacta del CFDI original de donde proviene el valor, y al hacer clic en una región del documento saltas de vuelta a su celda. Si editaste un campo, un clic muestra el valor original de la IA para que puedas revertirlo. Activa el auto-anotado y el mapa de localización se genera cuando termina el procesamiento, así la primera factura que abras ya estará lista para revisar. En un documento donde un RFC incorrecto o una tasa de IVA mal leída tiene consecuencias de deducibilidad, esa verificación toma segundos en lugar de una relectura completa de la factura.
Los campos a nivel de encabezado son la base. Pero un porcentaje significativo de facturas CFDI — particularmente las emitidas bajo PPD — conlleva una capa de complejidad que la mayoría de las guías de extracción ignoran por completo.
Gestión de Complementos: Pagos, Nómina y Comercio Exterior
Un complemento es un anexo XML estructurado integrado o vinculado a un CFDI. Contiene datos requeridos para tipos de transacción específicos que el esquema base del CFDI no cubre. Para los equipos de AP, tres complementos son particularmente importantes:
Complemento de Pago
Cuando un CFDI se emite bajo el método de pago PPD (Pago en Parcialidades o Diferido), la factura en sí reconoce que el pago ocurrirá después — en parcialidades o como un pago único tras la entrega. El Complemento de Pago es un CFDI separado (TipoDeComprobante = "P") que documenta el evento de pago real. Hace referencia al UUID de la factura original y especifica: la fecha de pago, el monto pagado, el tipo de cambio si el pago fue en una moneda diferente, y qué facturas originales (potencialmente varias) liquidó este pago.
Para la extracción a Excel, esto crea una relación de uno a muchos: una factura PPD → múltiples complementos de pago a lo largo del tiempo. Conciliar esto manualmente significa abrir cada XML de complemento de pago, leer qué UUIDs referencia y actualizar una hoja de cálculo de seguimiento. La herramienta de extracción tiene que leer la fecha de pago, el monto pagado y el UUID relacionado de la representación PDF del complemento, y luego emparejar esa fila con la factura original por UUID en tu hoja de cálculo.
Complemento de Nómina
Los CFDIs de nómina contienen detalle a nivel de empleado: el RFC del trabajador, CURP (Clave Única de Registro de Población), número de seguridad social (NSS), categoría de riesgo laboral, días trabajados y desglose detallado de percepciones (salario, bonos) y deducciones (ISR, IMSS, INFONAVIT). Las empresas con empleados mexicanos los reciben como parte de relaciones de outsourcing o PEO (Professional Employer Organization). Extraer datos del complemento de nómina a Excel permite la consolidación de costos a nivel de empleado entre periodos para el registro contable y el análisis de costos laborales.
Complemento Carta Porte
Desde enero de 2024, la versión 2.0 del Complemento Carta Porte volvió obligatorios campos que antes eran opcionales: código de pedimento, datos del exportador e información de origen/destino. Para los equipos de logística y cadena de suministro que reciben CFDI relacionados con fletes, la extracción debe capturar los campos específicos del transporte — placa del vehículo, tipo de transporte, origen y destino de la ruta — junto con los datos estándar de la factura. Estos campos son necesarios para la validación del SAT y el despacho aduanero.
La brecha más común que vemos en la extracción de CFDI es que los datos del complemento se quedan fuera. Los equipos de AP extraen los campos del encabezado — UUID, RFC, Total — pero nunca obtienen los datos del complemento de pago, lo que significa que las facturas PPD flotan en la hoja de conciliación sin fecha de pago ni referencia de liquidación. Los datos existen en el XML del complemento. Simplemente nunca llegaron al Excel.
CFDI Transfronterizo: Cuando el Comprador No Está en México
Las empresas extranjeras que compran a proveedores mexicanos enfrentan una capa adicional de complejidad. Bajo CFDI 4.0, el RFC del receptor y el código postal de su domicilio fiscal deben coincidir con el registro del SAT. Un comprador estadounidense o europeo sin registro fiscal en México no puede proporcionar un RFC, pero el sistema CFDI sigue exigiéndolo.
En la práctica, esto se resuelve usando el RFC genérico para extranjeros (XEXX010101000 para personas morales, XAXX010101000 para personas físicas) y especificando el ID fiscal del receptor en el país de destino en un campo separado. El CFDI se emitirá con el Uso CFDI código S01 (Sin efectos fiscales), lo que significa que la factura existe para fines de registro comercial, pero no genera crédito de IVA ni deducibilidad para el comprador.
Para los equipos de AP extranjeros, el objetivo de la extracción cambia: no se extraen datos para declarar ante el SAT, sino para contabilidad interna, aprobación de pagos y seguimiento de costos. Los campos que importan son los comerciales — nombre del proveedor, monto de la factura, partidas, método de pago — en lugar de los códigos fiscales específicos. Una extracción bien estructurada debe capturar el UUID; incluso si no declaras ante el SAT, el UUID es el único identificador global que prueba de manera definitiva que esta factura existe y fue validada.
Las operaciones de exportación añaden otra dimensión. Un CFDI con el campo Exportacion configurado como "01" o "02" (temporal) lleva un Complemento de Comercio Exterior con datos aduaneros: número de pedimento, RFC del exportador e INCOTERM. Para los equipos de logística transfronteriza que concilian facturas de flete con declaraciones aduaneras, la extracción debe capturar tanto los datos del CFDI como los campos del complemento de comercio exterior en una sola salida.
Cómo se comparan los métodos de extracción: captura manual, análisis de XML, plantillas e IA
Diferentes equipos eligen diferentes caminos según el volumen, los recursos técnicos y los formatos que reciben. Así se comparan las principales opciones en las dimensiones que importan para la extracción de datos de CFDI:
| Método | Maneja XML | Maneja PDF | Maneja escaneos | Maneja complementos | Velocidad (100 facturas) |
|---|---|---|---|---|---|
| Captura manual | ✓ (leyendo valores) | ✓ (leyendo valores) | ✓ (leyendo valores) | ✓ (referencia cruzada manual) | ~5 horas |
| Análisis de XML (Python) | ✓ (nativo) | ✗ | ✗ | Parcial (requiere lógica personalizada) | ~segundos (solo XML) |
| OCR basado en plantillas | ✗ | Parcial (un diseño por plantilla) | ✗ | ✗ | Varía (configuración de plantilla por proveedor) |
| Extracción semántica con IA | ✗ (solo documentos visuales) | ✓ | ✓ | ✓ (lee el PDF del complemento) | ~10 minutos |
El análisis de XML es la opción correcta para equipos que reciben exclusivamente XML y tienen capacidad de desarrollo interna para mantener el código de análisis a través de las actualizaciones de catálogo. Pero un equipo típico de AP en México recibe una mezcla: algunos proveedores envían XML, otros envían PDF, y algunos — generalmente proveedores más pequeños o personal de campo — envían fotos. Depender únicamente del análisis de XML significa capturar manualmente los datos de cada CFDI que no sea XML, o mantener una segunda ruta de extracción para esos formatos.
El OCR basado en plantillas crea una carga de mantenimiento proporcional al número de proveedores. Cada nuevo proveedor con un diseño de CFDI diferente requiere una nueva plantilla. El CFDI 4.0 estandarizó los campos de datos pero no la representación visual, y el costo de la gestión de plantillas crece linealmente con el número de proveedores.
La extracción semántica con IA elimina el problema del formato porque lee lo que significa un valor, no dónde está ubicado. Una columna llamada "RFC Emisor" devuelve el RFC del emisor sin importar si el diseño proviene de CONTPAQi, Aspel FACTURAe o una exportación personalizada de tu ERP, y las mismas definiciones de columna (UUID, RFC Emisor, IVA, Total) funcionan con cualquier CFDI, de cualquier proveedor, en cualquier formato. Esto es especialmente valioso para la conciliación de lotes de CFDI durante el cierre de fin de mes, cuando los equipos de AP necesitan procesar facturas entrantes de 50 a 200 proveedores, cada uno con su propio sistema de facturación, antes de que cierre el periodo contable.
FAQ: Extracción de Datos de CFDI a Excel
¿Puedo extraer datos de CFDI si solo tengo el PDF, sin el XML?
Sí. La extracción impulsada por IA lee el contenido visual del PDF de la misma manera que lo haría una persona: reconociendo el texto y entendiendo su significado. No necesita la estructura del XML. Si solo tienes el XML crudo, analízalo directamente como en la Ruta 1 anterior; la herramienta trabaja desde el documento visual, por lo que necesita el PDF o un escaneo. Los campos extraídos (UUID, RFC, IVA, etc.) son idénticos a los que obtendrías del análisis del XML. La limitación práctica es que no puedes verificar de forma independiente la firma digital (sello) desde un PDF — solo el XML contiene el sello criptográfico — pero para la conciliación de cuentas por pagar y el registro contable, los datos comerciales extraídos son suficientes.
¿Qué sucede si el CFDI usa PPD (Pago en Parcialidades o Diferido)?
Un CFDI con PPD significa que el pago ocurre después, documentado por un Complemento de Pago separado. El campo Método de Pago de la factura original dirá "PPD" y el Total es el monto total de la factura. Para conciliar, necesitas procesar el/los complemento(s) de pago — que hacen referencia al UUID de la factura original — y extraer la fecha de pago, el monto pagado y la moneda. El pago puede liquidar múltiples facturas originales, y una factura original puede ser liquidada por múltiples pagos. Esta conciliación requiere emparejar datos entre documentos vinculados por UUID. La extracción con IA puede leer la representación en PDF del complemento de pago y extraer la fecha de pago, el monto pagado, la moneda y el UUID relacionado a tu hoja de cálculo, donde lo emparejas con la factura original por UUID. Para un flujo de trabajo por lotes paso a paso que maneja la conciliación PPD en docenas de facturas, consulta nuestra guía sobre procesamiento por lotes de facturas CFDI mexicanas en cuentas por pagar.
¿La extracción maneja el IVA a diferentes tasas (16%, 8%, 0%)?
Sí. Un CFDI puede contener múltiples tasas de IVA en diferentes partidas: 16% para la mayoría de bienes y servicios, 8% para operaciones en zona fronteriza (franja fronteriza) y 0% para exportaciones y alimentos básicos. El desglose de impuestos en el CFDI separa cada tasa con su base y monto de impuesto correspondiente. Cuando defines columnas para cada tasa ("IVA 16%", "IVA 8%", "IVA 0%"), la herramienta de extracción lee el desglose de impuestos y llena cada columna con el monto correcto. Las columna calculada también pueden automatizar la verificación: define "Diferencia IVA (Total - SubTotal + IVA 16% + IVA 8%)" para señalar discrepancias durante la extracción.
Mi empresa es extranjera y no está registrada ante el SAT. ¿Puedo extraer datos de CFDI a Excel de todos modos?
Sí. El proceso de extracción es idéntico sin importar si tu empresa tiene RFC. La herramienta lee los campos de datos tal como aparecen — nombre del proveedor, RFC Emisor, UUID, montos, partidas — y genera Excel estructurado. La única diferencia es que tu CFDI llevará un RFC genérico de extranjero (XEXX010101000 o XAXX010101000) y Uso CFDI S01 (sin efectos fiscales). Para tu contabilidad interna, esto no tiene impacto: los datos comerciales son los mismos. Simplemente no usarás el CFDI para acreditamiento de IVA ni para declaraciones ante el SAT.
¿La herramienta puede extraer partidas, o solo campos a nivel de encabezado?
Ambos. Cuando especificas campos de partida (Cantidad, ClaveProdServ, Descripción, Precio Unitario, Importe), la herramienta extrae cada partida del CFDI y genera una fila por partida en el Excel. Cada fila también incluye los campos de encabezado (UUID, RFC Emisor, Fecha) para que cada línea sea rastreable hasta su factura original. Para la conciliación de tres vías (OC vs. recepción de mercancía vs. CFDI), esto te da un detalle a nivel de línea comparable al de la orden de compra.
¿Qué pasa con la cancelación de CFDI? ¿Cómo sé si una factura que extraje sigue siendo válida?
La cancelación de CFDI usa un modelo de consentimiento del receptor: el emisor envía una solicitud de cancelación con un código de motivo (Motivo de Cancelación), y el receptor tiene 72 horas para aceptarla o rechazarla a través del Buzón Tributario (el buzón fiscal electrónico del SAT). Si el receptor no toma acción, la cancelación se aprueba automáticamente después de 72 horas. Los CFDI de menos de MXN 1,000 pueden cancelarse sin aprobación del receptor. La herramienta de extracción no verifica el estado de cancelación — eso requiere consultar el portal del SAT por UUID — pero al tener el UUID en tu Excel, puedes verificar la validez por lotes cuando lo necesites. A partir de 2026, con la nueva reforma fiscal, el plazo de cancelación se extiende hasta el mes de la declaración anual de ISR, siempre que el receptor lo apruebe.
¿Puedo usar esto para la DIOT (Declaración Informativa de Operaciones con Terceros)?
Sí. La DIOT es el reporte mensual del SAT de operaciones con terceros, que se presenta a más tardar el día 17 del mes siguiente. Requiere: RFC del proveedor, UUID de la factura, fecha de la factura, monto del IVA y tasa del IVA. Todos son campos estándar del CFDI que la herramienta de extracción captura. Con todos los CFDI extraídos a un solo archivo de Excel, generar el reporte de la DIOT se convierte en cuestión de formatear las columnas para que coincidan con la plantilla de presentación del SAT, en lugar de volver a capturar los datos de cada factura.
¿Todavía necesito conservar el XML si ya extraje los datos a Excel?
Sí. Según el Artículo 30 del CFF, tanto emisores como receptores deben conservar los archivos XML de los CFDI durante al menos cinco años. El Excel extraído es tu información de trabajo — no sustituye la obligación legal de archivo. El XML es lo que el SAT solicitará durante una auditoría. El Excel es lo que hace que la preparación para esa auditoría sea más rápida, porque puedes buscar, filtrar y conciliar sin abrir cada archivo XML.
Por Qué la Extracción Es Solo la Mitad del Problema
El cuello de botella más citado en el procesamiento de CFDI es la captura de datos. Pero la captura es el cuello de botella visible. El oculto — el que consume más horas a lo largo del mes — es la conciliación que viene después: emparejar pagos PPD con las facturas originales, verificar que el IVA del CFDI coincida con el monto en tu sistema contable, identificar qué CFDIs han sido cancelados desde la última vez que revisaste, y confirmar que cada RFC en tu catálogo de proveedores coincida con lo que SAT tiene registrado.
La extracción saca los datos del documento y los coloca en una estructura con la que puedes trabajar. El valor se multiplica cuando esos datos estructurados alimentan directamente tus procesos posteriores — preparación de DIOT, importación a CONTPAQi, conciliación de proveedores, acumulaciones de fin de mes — sin un paso de captura manual entre la extracción y la acción.
Un CFDI contiene más datos que una factura estándar y cumple un propósito de cumplimiento más allá del registro comercial. Un código de Uso CFDI mal leído registra un gasto en la categoría de deducibilidad incorrecta, y un UUID omitido hace que la factura sea imposible de verificar en el portal de SAT. Llevar los datos a Excel es el primer paso. Mantener tu AP, tu declaración de DIOT y tu pista de auditoría consistentes con esos datos es el resultado continuo.