Automatizar facturas con IA: registro en Excel o con n8n
Automatizar facturas con IA en México tiene un atajo que mucha gente no aprovecha: los CFDI ya son datos estructurados (XML), así que su registro se automatiza con reglas, sin IA y sin errores de lectura. La inteligencia artificial entra para lo que no es CFDI —facturas en PDF sin XML, tickets, recibos del extranjero, documentos escaneados— y para clasificar gastos. Un flujo típico: llega el correo, se toma el XML, se registran los datos en Excel o tu sistema, se valida contra el SAT y solo las excepciones van a revisión.
La regla de oro: XML primero, IA después
| Documento | Cómo se lee | ¿IA? |
|---|---|---|
| CFDI XML (factura mexicana) | Parser de XML (Python, n8n, Power Query) | No |
| PDF de una factura con su XML | Usa el XML, ignora el PDF | No |
| PDF sin XML, tickets, recibos extranjeros | Extracción de texto + IA, o IA con visión para escaneos | Sí |
| Clasificar el gasto en una cuenta contable | Catálogo por RFC; IA solo para proveedores nuevos | A veces |
Leer un XML con un programa es exacto. Leer un PDF con IA es muy bueno, pero puede equivocarse con un dígito; por eso siempre se valida.
Automatizar el registro de facturas en Excel
Con Python
El post de automatizar procesos con Python trae un script que lee todos los XML de una carpeta y genera un Excel con UUID, fecha, RFC, nombre del emisor y total. Puedes ampliarlo con:
SubTotal,Descuento,Moneda,TipoDeComprobante,MetodoPago,FormaPago(atributos del nodo raíz).Receptor→Rfc,UsoCFDI.- Impuestos trasladados y retenidos (nodo
Impuestos).
Con Power Query (sin programar)
En Excel: Datos → Obtener datos → Desde archivo → Desde carpeta → elige la carpeta de XML → Combinar y transformar. Power Query reconoce la estructura XML; expande las columnas que necesitas (Emisor, Receptor, Complemento → TimbreFiscalDigital → UUID). Se actualiza con Actualizar todo cada vez que agregas XML.
Automatizar facturas con n8n
Flujo recomendado:
- Disparador: Gmail Trigger o IMAP Email para correos con adjuntos (filtra por etiqueta “Facturas” o por palabras clave).
- Separar adjuntos: quédate con los
.xml; si un correo solo trae PDF, mándalo por la rama de IA. - Nodo XML (XML → JSON): convierte el CFDI en datos.
- Nodo Set/Edit Fields: toma
Emisor.Rfc,Total,Fecha,TimbreFiscalDigital.UUID, etc. - Validaciones con un nodo If o Code:
- El RFC receptor es el tuyo.
- El UUID no está ya registrado (evita duplicados).
- Subtotal − descuentos + impuestos trasladados − retenidos = total (con tolerancia de centavos).
- Guardar: Google Sheets → Append, Microsoft Excel 365, o tu base de datos.
- Rama de IA para PDFs: extrae el texto (Extract from File) y pásalo a un nodo de IA pidiendo JSON con campos fijos y
nullsi no aparece. Todo lo que venga de esta rama se marca “revisar”. - Error Workflow que te avise si algo falla.
La guía general para armar flujos está en automatizar procesos con n8n.
Instrucción de ejemplo para la rama de IA
Extrae de este comprobante los campos y responde SOLO con JSON válido:
{"emisor": "", "rfc_emisor": "", "fecha": "AAAA-MM-DD", "moneda": "",
"subtotal": 0, "impuestos": 0, "total": 0, "folio": ""}
Si un campo no aparece, usa null. No calcules ni inventes valores.
Validar contra el SAT
Que un XML se vea bien no significa que esté vigente. El SAT ofrece un servicio de verificación de CFDI donde, con RFC emisor, RFC receptor, total y UUID, consultas si el comprobante está vigente o cancelado. Hay una versión web en el portal del SAT y un servicio que los sistemas pueden consultar automáticamente. Conviene verificar al registrar y otra vez antes de deducir o pagar.
Si en lugar de recibir facturas por correo prefieres bajarlas todas directo del SAT, revisa automatizar la descarga de CFDI del SAT.
Del registro al pago
Una vez registradas, las facturas alimentan tu calendario de pagos. Ese siguiente paso lo explicamos en automatizar cuentas por pagar.
Errores comunes
- Usar IA para leer el PDF cuando venía el XML: más caro y menos exacto.
- No detectar duplicados: el mismo proveedor manda la factura dos veces; usa el UUID como llave única.
- Ignorar los CFDI de pago (complemento de pagos) y las notas de crédito: son tipos de comprobante distintos (
P,E) y se registran diferente. - Montos en otra moneda sin tipo de cambio.
- No guardar el XML original: el registro en Excel no sustituye al archivo; respáldalo.
Dónde guardar los XML y por cuánto tiempo
Automatizar el registro no sirve si después no encuentras el archivo cuando lo pide tu contador o el SAT. Una estructura simple que funciona:
- Una carpeta por año y mes de la fecha del comprobante, no de cuándo llegó el correo.
- El nombre del archivo con el UUID (y si quieres, el RFC del emisor), para buscar rápido y evitar duplicados.
- El XML y su PDF juntos, y una copia de respaldo fuera de tu computadora (nube de la empresa o un segundo disco).
El Código Fiscal de la Federación pide conservar la contabilidad y sus comprobantes durante varios años (como regla general, cinco). El plazo exacto en tu caso lo confirma tu contador.
Antes de dejar la automatización corriendo sola
- Córrela en paralelo un mes: tu equipo sigue registrando a mano y comparas los resultados con lo que hizo el flujo.
- Prueba casos raros: factura en dólares, nota de crédito, complemento de pago, factura cancelada, correo con dos XML.
- Revisa la bandeja de “revisar” al final de cada semana; si ahí se acumulan siempre los mismos proveedores, crea una regla para ellos.
- Asigna un responsable que reciba las alertas de error y sepa reiniciar el flujo.
Con eso el registro deja de depender de que alguien se acuerde de descargar cada factura. Si tu oficina también hace conciliaciones y pólizas, revisa automatizar procesos contables.
Cuándo pedir ayuda
Si recibes decenas o cientos de facturas al mes, automatizar su registro y validación ahorra muchas horas y evita deducir facturas canceladas. Si además hay que conectar con tu sistema contable o ERP, conviene que alguien con experiencia lo diseñe. En Black Engine automatizamos la recepción, validación y registro de facturas con n8n, Python e IA; escríbenos por WhatsApp.
Preguntas frecuentes
¿Necesito IA para registrar facturas CFDI?
No. Los CFDI son XML con estructura fija; un script o automatizador los lee sin IA y sin errores. La IA es útil para facturas en PDF sin XML, tickets, recibos del extranjero o documentos escaneados.
¿Cómo automatizo el registro de facturas en Excel?
Guarda los XML en una carpeta, usa un script de Python, Power Query o un flujo de n8n que extraiga RFC, UUID, fecha, subtotal, impuestos y total, y agregue una fila por factura a tu Excel.
¿Cómo automatizo facturas con n8n?
Con un flujo que se dispare al llegar un correo con adjuntos, lea el XML con el nodo de XML, extraiga los campos y los guarde en Google Sheets, Excel o tu base de datos, mandando a revisión las que no cuadren.
¿Cómo sé que una factura no está cancelada?
Consultando su estatus en el servicio de verificación de CFDI del SAT con el RFC emisor, RFC receptor, total y UUID. Esto también se puede automatizar.