Automatizar facturas con IA: Claude Code o n8n paso a paso
Automatizar facturas con IA: saca las facturas de Gmail, extrae proveedor, fecha y totales a Google Sheets y revisa las cuentas. Lo probamos con 8 facturas.
Por Yotam DahanActualizado 17 min de lecturaAutomatización y agentes
Para automatizar facturas con IA, recoges los PDF de las facturas de tu bandeja de entrada, dejas que un modelo de IA como Claude saque los campos que necesita tu contador, compruebas las cifras con un script y entregas el resultado a una hoja de cálculo o a tu contador. Claude Code lo hace como un lote mensual que revisas en tu propia computadora, mientras que n8n lo ejecuta como un flujo siempre activo que procesa cada email de factura en cuanto llega. Abajo tienes las dos rutas, con costos reales, los controles que detectan totales mal leídos y los puntos de privacidad que debes resolver antes.
Cómo funciona el procesamiento de facturas con IA
El procesamiento de facturas con IA significa que un modelo de IA lee cada factura como lo haría una persona y devuelve siempre la misma lista fija de campos, lista para una hoja de cálculo. Las herramientas OCR clásicas suelen necesitar una plantilla por cada diseño de proveedor; un modelo de lenguaje entiende un diseño nuevo al primer intento, pero aun así puede leer mal una cifra, y por eso existe la etapa de comprobación.
Recoger
Los PDF de facturas llegan por email o caen en una carpeta
Extraer
Un modelo de IA lee cada una y saca los campos
Comprobar
Un script confirma que los totales cuadran y que nada se repite
Entregar
Las filas van a una hoja y los archivos a tu contador
Claude Code o n8n: elige tu ruta
Las dos rutas usan las mismas cuatro etapas. La diferencia está en cuándo se ejecutan y en cuánto ves.
| Claude Code | n8n | |
|---|---|---|
| Cuándo se ejecuta | Cuando lo pides, o según un horario desde la app de escritorio de Claude | En cada consulta que encuentra un email de factura nuevo, por ejemplo cada hora |
| Ideal para | Un lote mensual que revisas de una vez | Facturas procesadas a medida que llegan |
| Configuración | Una carpeta, un prompt y un conector de Gmail opcional | Cinco nodos conectados, un modelo de IA y credenciales de Google |
| Costo principal | Tu plan de Claude | Un plan de n8n o tu propio servidor, más el uso del modelo de IA |
| Hace falta programar | No | No, pero configuras cada nodo |
¿Eres nuevo en n8n? Empieza con el tutorial de n8n para principiantes.
Cuánto cuesta automatizar facturas con IA
al mes por Claude Pro, que incluye Claude Code
al mes por n8n Cloud Starter, con facturación anual
ejecuciones de flujo al mes en n8n Starter
por millón de tokens de entrada en Claude Haiku 5.5
Según claude.com/pricing, n8n.io/pricing y la página de precios de la API de Anthropic, octubre de 2026.
Ruta de Claude Code: el trabajo se descuenta del uso incluido en tu plan de Claude, así que no hay un cobro por factura. Pro cuesta $20 al mes (página de precios de Claude).
Ruta de n8n: una consulta que encuentra facturas nuevas cuenta como una ejecución, y la documentación sobre ejecuciones de n8n dice que una consulta que no encuentra nada no cuenta, así que incluso revisando cada hora te quedas muy por debajo de las 2,500 de Starter. La facturación mensual cuesta más; la guía de precios de n8n tiene todos los planes.
El paso de IA: la documentación sobre PDF de Anthropic calcula entre 1,500 y 3,000 tokens de texto por página. En el extremo alto, 100 facturas de una página son unos 300,000 tokens de entrada: 3 centavos con Haiku 5.5 o 60 centavos con Sonnet 5.5, más un poco por las respuestas cortas.
¿Cuál es el mejor modelo de IA para procesar facturas?
Empieza con el modelo más barato que ofrezca tu herramienta, como Claude Haiku 5.5. En nuestra prueba de abajo no cometió más errores que Sonnet 5.5, y el informe de costos de Claude Code puso cada ejecución de Haiku entre 1 y 2 centavos frente a unos 25 centavos con Sonnet (precios de lista de la API). Sube de modelo solo si tus controles siguen marcando cifras mal leídas en PDF limpios.
Extracción de datos de facturas: decide primero los campos
Acuerda los campos con tu contador antes de construir nada. Cambiarlos después significa corregir todas las filas que ya tienes.
| Campo | Ejemplo | Por qué importa |
|---|---|---|
| Tipo de documento | invoice | Evita que las notas de crédito cuenten como gastos |
| Nombre del proveedor | Northwind Supplies | Agrupa los gastos por proveedor |
| Número de factura | INV-2041 | Detecta duplicados |
| Fecha de factura | 2026-10-03 | Pone el gasto en el período correcto |
| Moneda | EUR | Evita mezclar importes |
| Subtotal | 400.00 | El importe antes de impuestos |
| Otros cargos | 0.00 | Envío, comisiones y descuentos, para que las cuentas sigan cuadrando |
| Impuesto | 80.00 | Necesario para las declaraciones |
| Total | 480.00 | Debe ser igual al subtotal más otros cargos más el impuesto |
| Nombre de archivo | 2026-10_northwind_INV-2041.pdf | Vincula cada fila con su original |
Los valores de ejemplo son inventados para mostrar el formato.
¿Qué tan precisa es la extracción de facturas con IA? Probamos 8 facturas
La pantalla del inicio de esta guía es una de esas ejecuciones, en una sesión interactiva con el CLAUDE.md definitivo: las ocho filas guardadas, el escaneo leído desde la imagen y la fecha ambigua 10/09/2026 dejada vacía y en la lista de revisión en lugar de adivinada.
Creamos ocho facturas falsas que parecen la bandeja de entrada de un mes real: una limpia, etiquetas raras ("Bill #", "Amount due"), una fecha estadounidense que se lee de dos formas (10/09/2026), formato numérico alemán (1.234,50 €), una línea de envío, un descuento, un escaneo con ruido y una nota de crédito. Pasamos el prompt de extracción de la Ruta A por Claude Code diez veces, siete con Haiku 5.5 y tres con Sonnet 5.5, y fuimos añadiendo Otros cargos, Tipo de documento y luego la regla de fechas del CLAUDE.md de abajo.
| Factura | Qué pasó |
|---|---|
| Limpia, etiquetas raras, formato alemán | Todos los valores bien en las 10 ejecuciones, 1.234,50 € incluido |
| Escaneo con ruido | Leído bien en las 10 ejecuciones; un extractor de texto de PDF simple (pdftotext) no sacó nada |
| 10/09/2026 de un estudio de Brooklyn | Dejada vacía para revisión en 9 ejecuciones; una ejecución de Haiku eligió el 9 de octubre por su cuenta, antes de que añadiéramos la regla de fechas |
| Línea de envío y descuento | Leídos bien, pero con los campos originales el control de subtotal más impuesto marcó las dos facturas correctas en todas las ejecuciones |
| Nota de crédito | Campos originales: omitida en 3 ejecuciones y añadida una vez sin moneda. Con Tipo de documento: una fila negativa cada vez |
- Ningún valor equivocado. Cada valor que rellenó el modelo coincidía con la factura. Los huecos fueron campos vacíos, que es justo lo que pide la regla de "nunca adivines".
- No confíes en el control de cuentas del propio modelo. Una ejecución de Haiku informó que subtotal, impuesto y total "cuadran en todos los casos" cuando dos filas no lo hacían. Por eso el paso 4 usa un script.
- Dos campos más acabaron con las falsas alarmas. Con Otros cargos y Tipo de documento en la lista de campos, el control aprobó todas las facturas correctas en las seis ejecuciones posteriores.
Ruta A: Claude Code, paso a paso
Esta ruta te da un lote revisado, normalmente una vez al mes. Encaja con dueños que quieren ver cada factura antes de que vaya a cualquier sitio; para otros trabajos que Claude Code puede asumir en un negocio, mira Claude Code para pequeñas empresas.
Paso 1: prepara la carpeta y las reglas
invoices/
CLAUDE.md
inbox/ aquí van los PDF de facturas nuevas
processed/ copias renombradas después de la extracción
reports/ la hoja mensual y el resumenPon las reglas en el CLAUDE.md de la carpeta, el archivo que Claude Code lee al inicio de cada sesión:
# Facturas
- Extrae solo estos campos: document_type, vendor_name, invoice_number, invoice_date, currency, subtotal, other_charges, tax, total, file_name.
- document_type es invoice o credit_note. Las notas de crédito llevan importes negativos.
- other_charges es el envío, las comisiones y los descuentos como un solo número (descuentos en negativo, 0 si no hay).
- Si una fecha se puede leer de dos formas, como 10/09/2026, déjala vacía.
- Nunca adivines un valor. Déjalo vacío y anota el archivo en "revisar".
- Nunca borres ni edites archivos en inbox/. Guarda copias renombradas en processed/.
- Nunca envíes emails. Crea solo borradores.Paso 2: mete las facturas en la carpeta
Lo más simple para empezar es guardar tú mismo en inbox/ los PDF adjuntos de cada mes. Para asegurarte de que no falta ninguno, conecta el conector de Gmail de Google en claude.ai/customize/connectors; Claude Code lo detecta automáticamente cuando inicias sesión con tu plan de Claude. El conector puede buscar en tu correo, pero la página de conectores de Google Workspace de Anthropic dice que solo ve los metadatos de los adjuntos, no los archivos. Así que deja que Claude arme la lista de control, usando los operadores de búsqueda de Gmail:
Busca en mi Gmail: has:attachment filename:pdf {subject:invoice subject:receipt subject:factura} newer_than:1m
Haz una tabla con cada resultado: fecha, remitente, asunto y nombres de los adjuntos.
Después compara los remitentes con los proveedores del mes pasado en @reports/ y haz una lista de quienes todavía no enviaron factura.
No reenvíes, etiquetes ni borres nada.Descarga en inbox/ los adjuntos de esa tabla y reclama a los proveedores de la lista de faltantes. Para lo básico de seguridad al conectar herramientas, mira qué es un servidor MCP.
Paso 3: extrae datos de facturas de PDF a Excel o Google Sheets
Claude Code lee archivos PDF directamente, así que la extracción es un solo prompt. El CSV que escribe se abre en Excel o en Google Sheets.
Lee cada PDF de @inbox/. Por cada factura, añade una fila a reports/invoices-[MES].csv con los campos de CLAUDE.md.
Escribe las fechas como YYYY-MM-DD y los importes como números simples sin símbolos de moneda.
Copia cada archivo a processed/ con el nombre YYYY-MM_proveedor_numero-de-factura.pdf y pon ese nombre en file_name.
Si un valor no está claro, déjalo vacío y añade el archivo a una lista "revisar" al final.Paso 4: comprueba las cifras
Escribe un script pequeño que compruebe reports/invoices-[MES].csv y ejecútalo:
1. subtotal + other_charges + tax = total en cada fila (permite una diferencia de 0.01 por redondeo)
2. ningún par de proveedor y número de factura aparece dos veces
3. cada fecha de factura cae en [MES]
4. cada fila tiene moneda
Muestra el total de todas las facturas por moneda y haz una lista de cada fila que falle una comprobación, con el motivo.Así se ve una ejecución sobre un archivo de ejemplo con cuatro problemas sembrados, entre ellos dos dígitos intercambiados (1404 en lugar de 1440):

Paso 5: prepara el paquete para tu contador
Comprime los archivos de processed/ de [MES] en reports/invoices-[MES].zip.
Escribe un resumen breve: número de facturas, totales por moneda y la lista "revisar".
Crea un borrador de Gmail para [EMAIL DEL CONTADOR] con ese resumen como mensaje. No lo envíes.Abre el borrador en Gmail, adjunta tú el zip y el CSV, léelo una vez y envíalo.
Paso 6: hazlo mensual
Cuando los pasos funcionen sin errores, pide a Claude Code que guarde los pasos 3 a 5 como una skill llamada month-end-invoices, un procedimiento guardado que inicias con un solo comando; cómo crear una skill de Claude muestra el formato. Después, en cualquier sesión de la app de escritorio de Claude, pídele que programe esa skill para el día 1 de cada mes.
Según la documentación de tareas programadas de escritorio de Anthropic, estas tareas locales solo se ejecutan mientras la app está abierta y la computadora despierta; si duerme durante el día 1, se lanza una ejecución de recuperación cuando se despierta.
Ruta B: automatización de facturas con n8n, paso a paso
n8n es una plataforma de automatización donde cada paso es un nodo, una caja en un lienzo que hace un trabajo, y los datos pasan de nodo en nodo. Este flujo procesa cada email de factura en cuanto llega:
Gmail Trigger
Detecta un email de factura nuevo y descarga el PDF
Gmail
Envía el PDF a tu contador
Extract From File
Saca el texto del PDF
Information Extractor
Un modelo de IA convierte el texto en campos
Google Sheets
Añade o actualiza una fila por factura
El paso de envío de Gmail cuelga del disparador en su propia rama. Los pasos de extracción no pasan el archivo PDF hacia adelante, así que el paso de envío toma el adjunto directamente del disparador.
- Gmail Trigger. Elige el evento Message Received y ajusta Poll Times, por ejemplo cada hora. En Filters > Search, escribe
has:attachment filename:pdf {subject:invoice subject:receipt subject:factura}. Desactiva Simplify, y luego en Options añade Download Attachments y actívalo. El primer adjunto llega como un campo de archivo llamadoattachment_0. - Gmail, rama de envío. Conecta un nodo de Gmail al disparador y elige la operación Send para un mensaje. Pon en To la dirección de tu contador, como asunto algo como
Factura: {{ $json.subject }}y un mensaje de una línea, y en Options > Attachments escribeattachment_0como nombre del campo. - Extract From File. Conéctalo al disparador como segunda rama. Elige Extract From PDF y pon
attachment_0en Input Binary Field. El texto del PDF sale en un campo llamadotext. - Information Extractor. Pon
{{ $json.text }}en Text y From Attribute Descriptions en Schema Type, y añade un atributo por cada campo de la tabla de arriba, cada uno con una descripción de una línea, y pon Type en Number para los cuatro importes. Conecta un modelo de chat, como el nodo Anthropic Chat Model, en Model. Las respuestas llegan dentro de un campo llamadooutput. - Google Sheets. Elige Append or Update Row, para que tus facturas lleguen a Google Sheets automáticamente. Añade una columna
keya tu hoja y usa esa columna para emparejar, rellenándola con{{ $json.output.vendor_name }}-{{ $json.output.invoice_number }}, para que una factura reenviada actualice su fila en lugar de añadir una copia. Asigna las demás columnas a mano, como{{ $json.output.total }}. Si tu contabilidad está en QuickBooks Online, su nodo de n8n puede crear ahí un Bill, cuando tu contador ya confíe en los datos. - Prueba y luego publica. Envíate un email con una factura de ejemplo, pon tu propia dirección como la del contador para la primera prueba y ejecuta el flujo. Cuando la fila y el email se vean bien, vuelve a poner la dirección del contador y haz clic en Publish para que funcione solo.
Los ajustes de los nodos vienen de la documentación de n8n para el Gmail Trigger y el Information Extractor, comprobados con el código fuente de los nodos.
¿Prefieres partir de lo que construyó otra persona? Buscar "invoice" en la biblioteca de plantillas de n8n devuelve más de 300 flujos de la comunidad. Trata cualquier plantilla de n8n para procesar facturas como un punto de partida: revisa cada nodo, y sobre todo a dónde envía tus datos, antes de añadir credenciales.
Privacidad y protección de datos
Las facturas contienen nombres, direcciones, datos bancarios e importes. Resuelve estos puntos antes de que pase la primera real; las condiciones de Claude vienen de la página de uso de datos de Anthropic.
0 de 6 hechas
Problemas comunes y soluciones
| Problema o mensaje | Causa probable | Solución |
|---|---|---|
This operation expects the node's input data to contain a binary file 'attachment_0', but none was found | Simplify está activado, Download Attachments está apagado o el email no traía archivo | Desactiva Simplify, activa Download Attachments y deja has:attachment en la búsqueda |
| Algunos emails de factura nunca disparan el flujo | Read Status está en Unread emails only y alguien los abrió | Pon Read Status en Unread and read emails |
| Extract From PDF devuelve texto vacío | El PDF es un escaneo | Usa Analyze Document en su lugar |
pdftoppm is not installed en Claude Code | El PDF tiene más de 10 páginas, lo que necesita las herramientas de poppler | Ejecuta brew install poppler en un Mac y vuelve a intentarlo |
is Anthropic-hosted and doesn't support local OAuth | Añadiste Gmail con claude mcp add | Ejecuta claude mcp remove con ese nombre y conecta Gmail en claude.ai |
| El conector de Gmail no aparece en Claude Code | Claude Code está usando una clave de API, no tu plan | Ejecuta /status, elimina ANTHROPIC_API_KEY y ejecuta /login |
| Un total no cuadra | Una cifra mal leída, o un envío o descuento fuera de Otros cargos | Revisa primero other_charges y luego lee el original |
Los mensajes de n8n vienen del código fuente de los nodos, y los de Claude Code, de la documentación de MCP de Anthropic y de su referencia de herramientas.
Comprueba lo que sabes0 de 2 correctas
El total de una factura no es igual a su subtotal más otros cargos más el impuesto. ¿Qué debería pasar?
No exactamente.
Una diferencia suele indicar una cifra mal leída, como dos dígitos intercambiados, así que una persona debería mirar el original antes de que el número vaya a cualquier sitio.
Le pides a Claude que traiga los PDF de facturas de este mes a través del conector de Gmail. ¿Qué pasa?
No exactamente.
El conector ve los metadatos de los adjuntos, no su contenido, así que guardar los PDF sigue siendo un paso manual.
Qué hacer ahora
Elige tu ruta: Claude Code si quieres un lote mensual que revisas, n8n si las facturas deben procesarse en cuanto llegan. Después pruébala con las facturas del mes pasado, que ya conoces, antes de confiarle las de este mes.
El curso de Claude Code incluye una lección que construye paso a paso este agente que va de la bandeja de entrada al contador. Para automatizaciones que mantienen tus herramientas conectadas a todas horas, nuestro curso de automatización con IA, Autopilot, está en acceso anticipado, y qué es la automatización con IA explica dónde encaja.
Kit de configuración para automatizar facturas
La lista de campos con formatos, un prompt de extracción listo para copiar con controles incluidos, cada ajuste de los nodos de n8n en una tabla y un email modelo para tu contador.
Escribe tu correo y la sección completa se abre aquí mismo. Además recibes una clase gratis del curso.
Preguntas frecuentes
¿Qué tan preciso es el procesamiento de facturas con IA?
En nuestras ocho facturas de prueba, entre ellas un escaneo, una factura alemana y una nota de crédito, Claude no rellenó ningún valor equivocado en diez ejecuciones; los problemas vinieron de fechas ambiguas y de totales que incluyen envío o descuentos. Los archivos reales varían, y las fotos del teléfono, los escaneos desvaídos y la escritura a mano causan más errores, así que mantén los controles con script y mira cada fila marcada.
¿Hay una forma gratis de automatizar facturas con IA?
En parte. La Community Edition de n8n no cuesta nada si la alojas tú, pero mantienes el servidor por tu cuenta, y el paso del modelo de IA lo cobra el proveedor, normalmente unos centavos por lote. Claude Code necesita un plan de pago de Claude o créditos de la API.
¿La IA también puede leer recibos y fotos de facturas?
Sí. Claude lee imágenes PNG y JPEG además de PDF, así que los recibos y las facturas fotografiadas funcionan en la ruta de Claude Code. Espera más elementos en tu lista de revisión, porque el desenfoque, las sombras y los dobleces causan lecturas erróneas.
¿Funciona con Outlook en lugar de Gmail?
Sí. En n8n, el nodo Microsoft Outlook Trigger tiene su propia opción Download Attachments, así que puedes cambiar los nodos de Gmail por los de Outlook. Para la ruta de Claude Code, Anthropic ofrece un conector de Microsoft 365.
¿La automatización puede pagar las facturas también?
Puede preparar una lista de lo que vence y cuándo, pero deja los pagos en manual. El dinero solo debería moverse a través de ti o de tu contador, con los pasos de aprobación de tu propio banco.
¿Cuánto tiempo debo guardar las facturas originales?
Depende de las normas fiscales del país donde está registrado tu negocio, así que pregúntale a tu contador. Sea cual sea el plazo, la automatización debe copiar datos de las facturas, nunca borrar los emails ni los archivos originales.
Sigue leyendo
Tutorial de n8n en español: tu primer workflow paso a paso
Tutorial de n8n para principiantes: crea un workflow real con formulario, Google Sheets y Gmail, publícalo y evita el error de Test URL vs Production URL.
Automatización y agentes · 16 min de lecturaClaude Code para pymes y pequeños negocios: plan de 30 días
Claude Code para pymes y pequeños negocios: presupuestos, facturas, borradores de email, informes de caja, el plugin de Anthropic y un plan de 30 días.
IA según tu profesión · 16 min de lecturaAutomatización con IA: qué es, cómo funciona y 12 ejemplos
¿Qué es la automatización con IA? Cómo funciona, en qué se diferencia de la automatización por reglas, la RPA y los agentes, 12 ejemplos y cuánto cuesta.
Automatización y agentes · 17 min de lectura