Reconocimiento óptico de caracteres (OCR) de facturas en Zapier: recorra todos los archivos adjuntos de un buzón compartido con el analizador de documentos PDF4me AI Document Parser

PDF4me AI Document Parser es una acción Zapier que lee un documento con inteligencia artificial y devuelve sus campos en formato JSON. Combinado con Looping by Zapier, gestiona el caso habitual en cuentas por pagar: un correo electrónico con varias facturas, donde cada archivo adjunto se analiza en una ejecución independiente.
Todas las herramientas OCR para facturas demuestran lo mismo: un solo documento que entra y campos limpios que salen. Pero las facturas no llegan así. Llegan como un correo electrónico a una bandeja de entrada compartida, de un proveedor que adjuntó tres PDF y escribió " PFA " en el cuerpo. El problema no es leer una sola factura, sino que un solo disparador tiene que convertirse en varios análisis, y la mayoría de los tutoriales lo omiten simplemente observando una carpeta donde alguien ya ha dividido los archivos. Este Zap no lo omite. Tres pasos, y el del medio es el bucle.
Un proveedor envía un correo electrónico a tu buzón compartido con dos facturas adjuntas. Looping by Zapier divide la lista de archivos adjuntos en una iteración por archivo, y cada iteración ejecuta el AI Document Parser PDF4me AI en su archivo adjunto correspondiente. Obtienes un JSON estructurado por factura, con un índice de confianza en cada campo, listo para integrarse en Hojas de cálculo de Google, Airtable o tu libro mayor. Tres pasos, sin código.
Preguntas y respuestas basadas en el porqué
Why trigger on a shared mailbox instead of a folder?Porque ahí es donde ya se encuentran las facturas. Pedir a los proveedores que las suban a un portal, o que guarden los archivos adjuntos en Dropbox, añade un paso manual justo en el punto que se intenta automatizar. Un buzón compartido también es la solución que se mantiene incluso si alguien se va: la dirección pertenece a la función, no al usuario.
Why do you need a loop at all?Dado que un paso Zap se ejecuta una vez por cada activador, y un correo electrónico puede contener cualquier número de archivos adjuntos, sin el bucle, se procesa el primer archivo adjunto que Zapier proporciona y se descartan los demás, lo cual es el peor tipo de error: el Zap se ejecuta correctamente y las facturas desaparecen. Looping convierte la lista de archivos adjuntos en una iteración por archivo.
Why an Analyzer instead of a fixed invoice schema?Porque los campos que realmente necesitas son específicos de tu libro mayor. AI Document Parser ejecuta un Analyzer que defines una sola vez en el panel de control PDF4me, de modo que la misma acción gestiona las facturas hoy y los pedidos de compra o albaranes más adelante. Modifica el esquema y cada Zap que apunte a ese Analyzer lo detectará sin necesidad de reconstruirlo.
Why do confidence scores matter more than the extracted values?Porque el OCR no falla de forma evidente. Devuelve una respuesta errónea plausible. El analizador informa una puntuación por campo, por lo que puedes redirigir cualquier resultado por debajo de tu umbral a un humano en lugar de publicarlo. En la ejecución capturada, los totales obtuvieron puntuaciones superiores a noventa, mientras que el estado de facturación obtuvo 59,8, que es precisamente la distinción que debería tener en cuenta una cola de revisión.
Lo que obtendrás
Entrada: un correo electrónico en un buzón compartido con cualquier número de facturas en formato PDF adjuntas. Salida: una ejecución Zap por cada archivo adjunto, que devuelve la factura como JSON estructurado con una puntuación de confianza por campo, lista para integrarse en cualquier aplicación posterior.

Dos archivos adjuntos, un mensaje, un texto de dos palabras. Esta es la información que Zap debe procesar.

Un correo electrónico entra, dos salen. Cada iteración del bucle es una ejecución Zap independiente en el historial.
Lo que necesitas
- A Zapier account.Looping by Zapier Es una aplicación integrada, así que no hay nada que instalar. Revisa tu plan: se requieren Zap de varios pasos y cada iteración del bucle cuenta como una tarea.
- PDF4me API key.Get your API key El Zap runs en la aplicación PDF4me versión 1.30.0.
- An Analyzer saved in the PDF4me dashboard.Open the Analyzer list El Analyzer integrado
default_invoice_extractionproduce el resultado que se muestra aquí, por lo que puede comenzar por ahí y crear el suyo propio más adelante. - A Microsoft Outlook shared mailboxque recibe facturas de proveedores y una cuenta con permiso para leerlas. Si aún no tiene una,Microsoft documents how to create one.
- A test email you control, con al menos dos archivos PDF adjuntos, para que puedas demostrar que el bucle se ejecuta más de una vez antes de dirigir Zap al correo electrónico del proveedor en tiempo real.
El Zap de un vistazo
- La New Email in Shared Mailbox " (Microsoft Outlook) consulta el buzón cada 2 minutos.
- Create Loop From Line Items (Looping by Zapier) convierte la lista de archivos adjuntos en una iteración por archivo.
- AI - Document Parser (PDF4me) ejecuta el Analyzer sobre el archivo adjunto de la iteración actual.
Descripción general completa Zap

Tres pasos. El bucle del medio es lo que hace que el tercer paso se ejecute una vez por cada conexión.
Paso 1: ¿Cómo se activa un Zap desde un buzón de correo compartido?
Flujo hasta ahora: nada todavía, este es el detonante.
La llegada de una factura es el evento, por lo que el buzón de correo es el desencadenante.
- Crea un Zap y selecciona Microsoft Outlook > New Email in Shared Mailbox.
- Conecta la cuenta que tenga permiso para leer el buzón, luego elige la dirección del buzón compartido y la carpeta que deseas supervisar. Para empezar, puedes supervisar la Bandeja de entrada.
- Prueba el activador con el correo electrónico que preparaste. Zapier informa que se encontró 1 correo electrónico nuevo en Microsoft Outlook y la lista de archivos adjuntos estará disponible para pasos posteriores como elementos de línea.
El intervalo de sondeo en el Zap capturado se muestra como 2 min, que es la programación del plan de Zapier y no algo que hayas configurado en el paso.
Tip.Utilice una carpeta dedicada, no toda la Bandeja de entrada, tan pronto como esto sea más que una prueba. Una regla Outlook del lado del servidor que archiva el correo de los proveedores en unaInvoices La carpeta te proporciona un ámbito de activación claro y un lugar donde buscar cuando algo no se ejecuta. También evita que Zap genere tareas de envío de boletines informativos.
Paso 2: ¿Cómo se realiza un bucle para todos los archivos adjuntos de un mismo correo electrónico?
Flujo hasta ahora: el activador Outlook.
Este es el paso que convierte un correo electrónico en una ejecución por factura.
- Agregar Looping by Zapier > Create Loop From Line Items.
- En Values to Loop, asigne los elementos de la línea adjunta del desencadenador. La ejecución capturada repite dos valores juntos, que es el patrón que se debe copiar:
- Attachments Name, el nombre del archivo
- Attachments File, el archivo en sí
- Prueba el paso. Zapier informa que se envió 1 nuevo bucle a Looping by Zapier y la pestaña Data out muestra la primera iteración más una vista previa de todas ellas.
Create Loop From Line Items

Loop Total Iterations lee 2, uno por archivo adjunto, y preview_loop_values nombra ambos archivos antes de que se haya analizado cualquiera de ellos.
Lo que te da el bucle
| Campo | Valor en la ejecución capturada | Para qué lo usas |
|---|---|---|
Loop Iteration | 1 | ¿En qué pase te encuentras, contando desde el 1? |
Attachments Name | Samples 2.pdf | El nombre de archivo para esta iteración, útil para nombrar registros posteriores. |
Attachments File | Una URL zapier-dev-files.s3.amazonaws.com | El archivo en sí y lo que se asigna al analizador |
Loop Total Iterations | 2 | ¿Cuántos archivos adjuntos contenía el correo electrónico? |
Loop Iteration Is Last | false | Envía un resumen o una notificación solo cuando esto se cumpla. |
Loop Id | d889b92b-c6a1-4abc-a6a1-a1d4c1c78e1d | Vincula todas las iteraciones de un correo electrónico, que es lo que se agrupa por flujo descendente. |
preview_loop_values | Iteración 1 Samples 2.pdf, iteración 2 Samples 1.pdf | La lista completa, visible en la primera pasada |
Hay dos detalles que conviene tener en cuenta antes de continuar. El bucle no se ejecuta en el orden en que aparecen los archivos adjuntos en Outlook: el correo mostró primero el archivo de muestra 2 y el bucle lo confirmó, pero nunca debes confiar en ello. Además, Loop Id es lo único que conecta las filas resultantes con el correo electrónico de origen, así que mapéalo ahora en lugar de arrepentirte después.
Tip.Cada iteración es una ejecución independiente Zap y consume una tarea. Un correo electrónico con diez archivos adjuntos implica diez tareas, no una, lo cual suele ser la sorpresa más común en la factura mensual.Zapier documents the loop limits y vale la pena leerlos antes de enviar esto a un buzón de correo lleno.
Paso 3: ¿Cómo se convierte cada archivo adjunto en JSON estructurado?
Flujo hasta ahora: el disparador más el bucle.
Todo lo que sucede a partir de aquí se ejecuta una vez por cada archivo adjunto, porque se encuentra dentro del bucle.
- Añade PDF4me > AI - Document Parser y conecta tu clave API.
- Configurar:
- File: el token Attachments File proviene del bucle, no del disparador. Este es el único error que suele cometer la gente.
- File Name y File Ext: construya el nombre a partir del Attachments Name del bucle.
- AI Analyzer Id: seleccione su Analyzer en el menú desplegable.
default_invoice_extractionproduce el resultado que se muestra a continuación. - AI Analyzer Name (Deprecated): dejar en blanco.
- Prueba. Zapier informa que se envió 1 nuevo Process Document a Pdf4me y que Data out contienen los campos analizados.
AI - Document Parser, primer archivo adjunto

Doc Text contiene la factura. Cada campo también aparece en docConfidenceLevel con una puntuación asociada.
AI - Document Parser, segundo archivo adjunto

Un Trace Id diferente y un ID de documento diferente, que es como se distinguen los dos análisis en los registros.
Ambos archivos adjuntos de esta captura contienen la misma factura de muestra, por lo que las cifras extraídas coinciden. Lo que demuestra la segunda ejecución no es que el analizador procese dos diseños diferentes, sino que el tercer paso se ejecutó dos veces a partir de un mismo correo electrónico.
Lo que regresa
| Campo de salida | Lo que contiene |
|---|---|
Trace Id | Único por llamada. Indíquelo en un ticket de soporte. |
Document Document Id | El ID de PDF4me para el documento analizado, diferente en cada ejecución. |
Document Doc Text | La carga útil JSON: los campos extraídos más docConfidenceLevel |
Document File Name, Document Name, DocMetadata | Nombres y metadatos, completados según lo que asigne en |
Dentro de Doc Text el Analyzer default_invoice_extraction devuelve los campos de encabezado (invoiceNumber, invoiceDate, invoiceDateString, orderId, customerPO, paymentDeadline), el bloque del proveedor (vendorName, vendorAddress, vendorPhone, vendorEmail y los identificadores fiscales incluidos vendorGSTIN, vendorPAN, vendorCIN, vendorVatUidNr, iban), el bloque del cliente (billTo, billToAddress, billToPhone, billToEmail, billToState, billToPincode), los totales (subTotal, cgst, sgst, cgstRate, sgstRate, totalTaxAmount, total) y una matriz lineItems. Para la factura de muestra que se resuelve en invoiceNumber 13594027, billTo John Smith, total 37.5 y dos partidas, la segunda de las cuales es la línea de descuento -12.5.
Lectura de las puntuaciones de confianza
docConfidenceLevel refleja la misma forma, pero con un número en lugar de cada valor. Estas son las puntuaciones de las dos ejecuciones capturadas, y la diferencia es el punto.
| Campo | Carrera 1 | Carrera 2 | Lo que te dice |
|---|---|---|---|
vendorEmail | 98.9 | 98.9 | Texto legible por máquina, confía en ello. |
vendorName | 98.5 | 98.5 | Encabezado limpio, confía en ello. |
billTo | 97.3 | 97.3 | Limpio, confía en ello |
subTotal | 95 | 94.7 | Bien, y merece la pena comprobar la tolerancia con respecto total |
total | 92.8 | 92.8 | Bien, pero este es el campo que merece la pena revisar automáticamente. |
billToAddress | 79.5 | 81.9 | Varias líneas y envuelto, revise si es necesario. |
billToPincode | 60.8 | 60.8 | La muestra ejecuta la ciudad, el estado y el código postal juntos. |
billToState | 59.8 | 59.8 | Al final del documento, no publique esto sin revisar. |
El mismo documento obtuvo una puntuación ligeramente diferente en dos pasadas, lo cual es normal para un modelo y es precisamente por eso que se establece un umbral en lugar de confiar en un solo número. Elija un límite inferior, asigne a una persona todo lo que esté por debajo de ese límite y deje pasar el resto.
Ejecuta el Zap y verifica
- Publish el Zap.
- Envía un correo electrónico de prueba al buzón compartido con dos archivos PDF adjuntos.
- Espera a que termine la encuesta y luego abre Zap history.
- Deberías ver dos ejecuciones del Zap, no una, cada una marcada como Exitosa y cada una consumiendo 1 tarea.
- Abra cada ejecución y revise Data out del paso 3: el
Trace IdyDocument Document Iddeben ser diferentes entre ellos, yDoc Textdebe contener la factura de ese archivo adjunto. - Compruebe el valor
Loop Total Iterationsen el paso 2. Si muestra 1 cuando adjunta dos archivos, el problema reside en la asignación de Values to Loop, no en el analizador.
En la ejecución capturada, las dos Zap runs se completaron a las 19:02:53 y a las 19:03:37 del 15 de octubre de 2026, ambas exitosas, 1 tarea cada una, a partir de un único correo electrónico con 395 KB de archivos adjuntos.
What did you actually build?Un sistema de recepción de facturas que comienza donde realmente llegan. Nadie descarga archivos adjuntos, nadie vuelve a escribir el total y un correo electrónico con cinco facturas genera cinco registros estructurados en lugar de uno. Los índices de confianza ofrecen un punto de referencia lógico para diferenciar entre lo automático y lo revisado.
Variaciones comunes que puedes agregar sin reconstruir
Loop Id a su propia columna para que cada fila de un correo electrónico pueda agruparse nuevamente.docConfidenceLevel. Si supera el umbral, se publicará automáticamente; si está por debajo, se enviará a una cola de revisión o a un canal Slack con el Trace Id adjunto.Attachments Name con extensión .pdf, ubicado dentro del bucle, evita que el analizador se ejecute en una imagen y desperdicie una tarea.¿Cómo se compara esto con otros métodos de OCR para facturas?
Cada fila describe la alternativa. La última fila es este Zap.
| Comparación | ¿Quién lo dirige? | De dónde provienen las facturas | Lo que mantienes |
|---|---|---|---|
| Plataforma de automatización de AP frente a este Zap | Finanzas, en un producto específico | Una dirección de reenvío a ese producto. | Un contrato por documento y sus reglas de aprobación |
| API de OCR llamada desde código vs este Zap | Un desarrollador, en una aplicación | Lo que sea que obtenga tu código | El código, el sondeo del buzón y los reintentos. |
| Módulo de captura ERP frente a este Zap | Finanzas, dentro del ERP | Un escáner o una carpeta de destino | Licencias y un flujo de trabajo vinculado a ese ERP. |
| Este Zap | Cualquiera que pueda editar un Zap | El buzón compartido que ya utiliza | Tres pasos y un esquema Analyzer |
Preguntas frecuentes
¿Qué es el OCR de facturas?
El OCR de facturas lee la factura mediante software en lugar de una persona, de modo que el proveedor, la fecha, los artículos y el total se convierten en datos que sus sistemas pueden utilizar. El OCR clásico solo recuperaba los caracteres de la página y dejaba que el usuario dedujera el total; los analizadores de IA que lo reemplazaron devuelven directamente los campos con nombre.
Esa distinción importa cuando eliges una herramienta. Una biblioteca que realizaoptical character recognition te da texto. Un analizador de documentos te da total, invoiceNumber y billTo, que es lo que un Zap puede realmente asignar a una hoja de cálculo.
¿Cómo funciona la función de bucle de Zapier?
Looping by Zapier es una aplicación integrada que repite los pasos siguientes, una vez por cada elemento. Create Loop From Line Items toma un conjunto de elementos de un paso anterior, como la lista de archivos adjuntos de un correo electrónico, e inicia una iteración por cada elemento.
Cada iteración es una ejecución Zap independiente con su propia entrada en Zap history y su propio consumo de tareas. Dentro de una iteración, se obtienen Loop Iteration, Loop Total Iterations, Loop Iteration Is Last y un Loop Id compartido por todas las iteraciones del mismo registro de origen.
¿Qué es el procesamiento de facturas mediante OCR?
El procesamiento de facturas mediante OCR abarca todo el proceso, no solo la lectura: llega una factura, se extraen sus campos, se verifican los valores y el resultado se registra en un libro mayor o en una cola de revisión. La extracción suele ser la parte más sencilla.
Las partes que determinan si funciona en la práctica son la recepción de datos y el manejo de excepciones. Este Zap cubre la recepción de datos con el buzón compartido y el bucle, y proporciona el material básico para el manejo de excepciones con docConfidenceLevel.
¿Cómo se automatizan las cuentas por pagar?
Empiece por la recepción de datos, ya que los pasos manuales en esa etapa deshacen todo lo demás. Asigne a los proveedores una única dirección, active el proceso en función de ella y asegúrese de que un correo electrónico con varias facturas genere varios registros en lugar de uno solo.
Luego, decide qué se contabiliza automáticamente. Un umbral de confianza en los campos extraídos divide las facturas en aquellas que tu libro mayor puede procesar sin supervisión y aquellas que debe revisar una persona. Esta división es lo que garantiza que la automatización se pueda dejar en funcionamiento de forma segura.
Solución de problemas
ControlarLoop Total Iterations en el paso 2. Si dice 1,Values to Loop se asigna a un solo campo en lugar de a los elementos de la línea adjunta, por lo que el bucle no tiene nada sobre lo que iterar. Si lee 2 pero solo se produjo un análisis, el paso 3File se asigna al disparador en lugar de al bucle.Attachments File.
Este es el bucle funcionando según lo previsto. Un correo electrónico con diez archivos adjuntos genera diez ejecuciones y diez tareas. Agregue un filtro dentro del bucle para que las firmas, los logotipos y cualquier archivo que no sea un PDF nunca lleguen al analizador.
El Analyzer decide qué campos existen. Una clave vacía significa que el esquema solicitó algo que este documento no contiene, lo cual es normal. Una clave completamente vacíaDoc Text generalmente significa incorrectoAI Analyzer Id, o un archivo que llegó a la acción sin su extensión, así que verifiqueFile Name yFile Ext.
Mira adocConfidenceLevel antes de culpar al mapeo. En esta captura los totales puntuados por encima de 92 mientrasbillToState obtuvo una puntuación de 59.8, por lo que un campo puede estar presente, ser plausible y aun así estar equivocado. Mantén elTrace Id en cada registro para que puedas relacionar una fila defectuosa con su ejecución.
Próximos pasos
La parte difícil de la automatización de facturas nunca fue leer la factura en sí. El problema radicaba en el sobre en el que llegaba, y un bucle era lo que lo abría.