Por qué las matemáticas de las líneas de su factura
son incorrectas tras la extracción
Su extractor de facturas acertó con el nombre del proveedor, el número de factura y el total general. Pero al revisar las líneas, algo falla: la fila 3 muestra Qty 4, Unit Price $150.00, Line Total $300.00 — faltan $300. Sin embargo, cada campo individual parece correcto. La IA no leyó mal nada. Emparejó mal algo.

Conclusiones clave
- Su extractor de facturas con IA reporta un 99% de confianza en los campos y las matemáticas de Qty × Price siguen fallando — porque las puntuaciones de confianza por campo miden la legibilidad, no si un precio unitario pertenece a la fila 2 o a la fila 3.
- Los desajustes de Qty × Price siguen solo cuatro patrones — y la magnitud y dirección de la desviación revela si la IA emparejó filas cruzadas, omitió un multiplicador de unidad de medida o confundió importes previos al descuento con posteriores al descuento.
- Una columna de fórmula — =ROUND(Qty×UnitPrice,2) — detecta los cuatro patrones, y los cinco minutos que tarda en añadirla le dicen más sobre la calidad de la extracción que cualquier puntuación de confianza.
Este es el modo de fallo más silencioso en la extracción de facturas con IA. La IA alcanza una precisión superior al 98% en campos individuales: lee cantidades, precios unitarios y totales de línea correctamente como valores independientes. Pero la consistencia entre campos es un desafío fundamentalmente diferente. Un modelo de visión que puede leer "$150.00" de una página con alta confianza no puede saber automáticamente si esos $150.00 pertenecen al precio unitario de la fila 2, al total de línea de la fila 3 o al subtotal de la sección. Cuando estas relaciones se rompen, las matemáticas de los artículos de línea dejan de cuadrar, y el error es invisible para las puntuaciones de confianza por campo.
Un estudio de 2025 sobre Docling y LlamaExtractor confirma la brecha: las comprobaciones de consistencia (artículos de línea + impuestos = total) fallaron en el 20% de las facturas — principalmente aquellas con escenarios de múltiples impuestos complejos o formato no estándar (arXiv 2510.15727v1). Si está viendo discrepancias de cantidad × precio en su salida, sus facturas probablemente se ajustan a uno de cuatro patrones distintos.
Causa 1: La IA emparejó la Qty de la fila 1 con el precio de la fila 2

Las tablas densas de artículos de línea son la fuente más común de errores de emparejamiento entre filas. Cuando una factura tiene más de 15 artículos de línea sin separadores de fila visibles — solo filas apiladas de texto — el razonamiento espacial de la IA debe decidir exactamente dónde termina una fila y comienza la siguiente. Un desplazamiento de unos pocos píxeles puede hacer que el modelo asocie la cantidad de la fila N con el precio unitario de la fila N+1.
Síntoma: Los artículos de línea individuales tienen matemáticas incorrectas, pero la suma de todos los cálculos de Qty × Price es igual al subtotal de la factura. Esto le indica que los valores son todos correctos — solo están emparejados con los vecinos equivocados.
Las lecturas entre filas ocurren con mayor frecuencia en tres escenarios:
- Sin bordes de fila visibles: Facturas que utilizan solo espacios en blanco para separar filas. La IA adivina dónde caen los límites y a veces se equivoca.
- Descripciones de varias líneas: Una descripción de producto que se extiende a dos líneas empuja las filas siguientes hacia abajo. La IA puede interpretar el texto de continuación como una nueva fila, desplazando todos los pares siguientes.
- Celdas combinadas en el encabezado de la tabla: Una fila de encabezado con etiquetas de columna combinadas puede confundir la detección del número de columnas de la IA, causando que desalinee toda la estructura de la tabla desde el principio. Consulte cómo las celdas combinadas rompen la extracción de tablas para un análisis más detallado.
Cómo detectarlo: Ejecute una fórmula de validación a nivel de fila (detallada en la sección del marco de trabajo a continuación). Las lecturas entre filas producen una huella distintiva: algunas filas sobreestiman el total, otras lo subestiman, y los errores se cancelan a nivel de subtotal.
Causa 2: Confusión de Unidad de Medida — "12" No Siempre Son 12 Piezas

Una cantidad de "12" en una línea de factura es ambigua sin su unidad de medida. ¿Son 12 piezas? ¿12 docenas (144 unidades)? ¿12 kilogramos? ¿12 pies lineales a $3.75 por pie? El número en sí es claro, pero la IA no puede multiplicar 12 por un precio unitario a menos que sepa qué representa "12".
La confusión de unidad de medida (UOM) produce dos patrones de error distintos:
- UOM en una columna separada: Algunas facturas tienen una columna "UOM" (EA, DZN, KG, FT) entre los campos de cantidad y precio unitario. Si la IA no logra leer o asociar esta columna, trata "12 DZN" (144 unidades × precio) como "12 EA" (12 unidades × precio), generando un total de línea que es 1/12 de lo que debería ser.
- UOM integrada en la descripción: Muchas facturas escriben "12 × CASE" o "12 @ CASE PRICE" dentro del campo de descripción. La IA lee "12" en la columna de cantidad pero no tiene mecanismo para entender que este "12" significa "12 cajas de 6 unidades cada una". El total de Qty × Price resultante se desviará por el multiplicador de la caja.
Este error es engañoso porque los números parecen internamente consistentes. Qty = 12, Unit Price = $45.00, Line Total = $540.00 — la matemática funciona. Pero si la factura realmente dice "12 docenas a $45.00 por docena" y la IA lo leyó como 12 piezas, el total se desvía por un factor de 12. La IA extrajo números plausibles que casualmente fallan la verificación de realidad del negocio.
Los problemas de extracción relacionados con unidades se agravan cuando el documento fuente tiene puntos decimales faltantes o símbolos de moneda ambiguos — un decimal faltante en el precio unitario magnifica cualquier desalineación de UOM.
Cómo detectarlo: Compare el total de línea contra un libro de precios o un promedio histórico del mismo artículo. Un precio unitario de $45.00 en un artículo que históricamente cuesta $7.50 por unidad es una señal de alerta — la IA puede haber leído la UOM como "EA" cuando en realidad era "BOX (6 EA)". Para facturas sin datos históricos, marque cualquier línea donde Qty × Unit Price produzca un número redondo que se desvíe de los rangos de precios esperados.
Causa 3: Confusión entre el importe de línea antes y después del descuento
Las facturas utilizan varias convenciones para mostrar los totales de las líneas. Algunas muestran el importe bruto (antes del descuento) en la línea y aplican los descuentos en el pie de la factura. Otras calculan el importe neto (después del descuento) directamente en la línea y resumen una cifra de "descuentos totales" por separado. Los modelos de extracción de IA a menudo no pueden distinguir qué convención utiliza una factura concreta, especialmente cuando el encabezado de la columna dice simplemente "Importe".
Ejemplo: La línea del artículo muestra "Cantidad 10, Precio unitario $50.00, Importe $475.00". Las matemáticas cuadran con 10 × $47.50, pero el precio unitario indica $50.00. ¿Qué ha ocurrido? La factura aplica un descuento del 5% a nivel de línea ($2.50/unidad) y muestra el importe neto en la línea mientras muestra el precio unitario bruto. La IA extrajo ambos valores correctamente; simplemente pertenecen a diferentes etapas del cálculo del descuento.
Tres convenciones de descuento son lo bastante comunes como para causar confusión habitual en la extracción:
- Descuento a nivel de línea, la línea muestra el importe bruto: La línea muestra Cantidad × Precio completo. El descuento se aplica en el pie de la factura. La IA extrae el total de la línea tal cual, y Cantidad × Precio coincide. No hay discrepancia aquí, pero el importe del descuento es invisible a nivel de línea.
- Descuento a nivel de línea, la línea muestra el importe neto: La línea muestra Cantidad × (Precio completo − Descuento). La columna de precio unitario sigue mostrando $50.00, pero el importe de la línea refleja el valor descontado. Cantidad × $50.00 ≠ Total de la línea, aunque todos los campos se lean correctamente.
- Convención mixta en la misma factura: Algunas líneas tienen descuentos y otras no. La IA aplica una interpretación uniforme a todas las filas, lo que hace que algunas coincidan y otras no.
Cómo detectarlo: La firma de este error es que Cantidad × Precio unitario sobrestima sistemáticamente el Total de la línea en un porcentaje fijo en varias líneas. Si observa "Importe = Cantidad × Precio × 0.95" como patrón en las líneas con descuento mientras que las líneas sin descuento coinciden, la factura utiliza la visualización neta en línea. Señale estos casos y confírmelos con las condiciones de descuento del proveedor en lugar de asumir un error de extracción.
Causa 4: Importes de línea con y sin impuestos incluidos mezclados en una misma factura
Las facturas en jurisdicciones con IVA o GST suelen combinar precios con y sin impuestos incluidos en el mismo documento. Algunas líneas incluyen el impuesto en el importe mostrado (habitual en bienes de consumo o ventas B2C). Otras muestran el importe sin impuestos con el IVA calculado al pie (estándar en B2B). Un modelo de IA que aplique una única interpretación a todas las líneas generará un desajuste en las filas de tipo mixto.
Muchas facturas no etiquetan las líneas individuales como «IVA incluido» o «IVA excluido». La distinción se deduce del tipo de cliente, la categoría de producto o la jurisdicción — un matiz que incluso programas de contabilidad como Xero y AutoEntry gestionan con interruptores dedicados precisamente porque no es trivial.
Tres escenarios reales provocan este error:
- Facturas de suministro mixto: Una sola factura de un hotel, por ejemplo, incluye cargos de habitación (sujetos a IVA al tipo estándar) junto con tasas de servicio (exentas de IVA) y aparcamiento (tipo reducido). Cada línea puede mostrarse con o sin impuestos incluidos según el sistema contable del proveedor, lo que crea un objetivo de extracción inconsistente.
- Facturas internacionales: Un proveedor estadounidense factura a un cliente británico. La factura muestra importes en USD (sin IVA), pero el pie aplica una nota de IVA por inversión del sujeto pasivo. La IA entrenada principalmente con patrones de facturas nacionales puede interpretar de forma distinta los importes exentos de impuestos.
- Notas de crédito y ajustes: Las líneas de corrección que hacen referencia a importes originales con o sin impuestos incluidos crean un desajuste cuando la IA aplica una interpretación fiscal uniforme a todas las filas.
El estudio de extracción de facturas de arXiv concluyó que los fallos de consistencia se «concentraban en facturas con escenarios fiscales múltiples complejos» — exactamente los documentos mixtos con y sin impuestos incluidos que producen Qty × Unit Price ≠ Line Total sin que ningún campo individual sea incorrecto.
Cómo detectarlo: Compruebe si la tasa de desajustes se correlaciona con códigos fiscales o categorías de producto concretos en la misma factura. Si las líneas con código de IVA «S» (tipo estándar) cuadran todas, pero las líneas con código «Z» (tipo cero) muestran una desviación constante equivalente exactamente al porcentaje de IVA, la IA está aplicando la suposición incorrecta de inclusión a los artículos con tipo cero.
La solución: un marco de validación de 3 capas para la coherencia de las líneas de detalle

Cada una de las cuatro causas anteriores produce una huella distinta en los datos extraídos. Un marco de validación sistemático las detecta todas — y hace visible lo que las puntuaciones de confianza por campo no pueden.
Capa 1: Fórmula de validación a nivel de fila
La forma más rápida de detectarlo todo es una columna de fórmula:
=ROUND(Qty*UnitPrice,2)Compárela con el Line Total extraído. Marque las filas donde la diferencia supere los $0.01, usando un formato condicional:
=ABS(ROUND(A2*B2,2)-C2)>0.01La dirección y la magnitud de la desviación le indican cuál es la causa:
- Los errores se cancelan entre filas → Causa 1 (lectura entre filas). Todos los valores están presentes, solo que están emparejados incorrectamente.
- Desviación por factor constante (p. ej., siempre difiere en 0.5, 6 o 12) → Causa 2 (confusión de UOM). El factor es el multiplicador de la unidad de medida.
- Desviación porcentual constante → Causa 3 (confusión de descuento). El porcentaje coincide con la tasa de descuento.
- Desviaciones vinculadas a códigos de impuesto específicos → Causa 4 (confusión de impuestos incluidos). El porcentaje de desviación coincide con la tasa de VAT/GST aplicable.
Capa 2: Pistas de relación entre campos para la IA
Al configurar la extracción, ayude a la IA a comprender las relaciones entre campos siendo explícito sobre lo que va junto. La Extracción de Columnas Personalizadas de ImageToTable.ai funciona de forma semántica: usted le indica las columnas que desea y la IA localiza cada valor comprendiendo su significado. Para mejorar el emparejamiento entre campos:
- Use nombres de columna descriptivos: "Unit Price (per item)" y "Line Total (Qty × Unit Price)" ayudan a la IA a distinguir los valores por unidad de los valores por línea.
- Defina una columna calculada como verificación cruzada: Cree
Line Total Validation (Qty × Unit Price)— la IA extrae los valores y realiza el cálculo, detectando las discrepancias durante la extracción en lugar de después de la exportación. - Establezca reglas de formato para los campos numéricos: Especifique que las cantidades son números enteros salvo que haya un decimal, y que los precios unitarios siempre tienen dos decimales. Esto limita la interpretación ambigua.
Capa 3: Muestreo Dirigido por Verificación Puntual
Incluso con verificaciones de fórmulas, algunos errores pasan desapercibidos, especialmente cuando Qty × Price coincide con un Line Total plausible pero incorrecto. El muestreo dirigido por verificación puntual cierra esta brecha. Para cada lote, verifique manualmente: todas las filas marcadas por la Capa 1, el 10% de las filas aprobadas (para detectar totales correctos por coincidencia) y una factura por proveedor (peculiaridades sistémicas de formato). Esto detecta más del 95% de los desajustes matemáticos, requiriendo revisión manual de menos del 15% de los datos.
Cuándo Escalar: El Umbral del 5%
Si su marco de validación marca más del 5% de las líneas de un lote, el problema probablemente sea sistémico: un patrón consistente de desalineación entre campos que ningún ajuste de fórmulas de validación corregirá a nivel de línea.
Tres escenarios justifican la escalación:
- Concentración de un solo proveedor: más del 70% de las filas marcadas provienen de un solo proveedor. El diseño de ese proveedor es incompatible con su enfoque actual. Preprocese estas facturas o enrútelas a un pipeline diferente.
- Complejidad multi-impuesto: facturas con 3 o más tasas de impuestos o montos mixtos inclusivos/exclusivos. Incluso los mejores modelos fallan en estas el 20% de las veces (según el estudio de arXiv). Márquelas para revisión manual por un empleado de AP especializado en impuestos, en lugar de intentar corregir la extracción.
- Documentos fuente de baja calidad: si las marcas aparecen en los cuatro patrones simultáneamente, la causa raíz es un OCR deficiente, no una confusión de relaciones. Aborde primero la calidad de la fuente — consulte las correcciones de extracción de decimales y moneda.
El umbral protege a su equipo de un ciclo interminable de ajustes. Si la extracción logra un 98%+ en campos independientes y un 95%+ en consistencia entre campos, eso es funcional para la mayoría de los flujos de trabajo de AP — el 5% restante es más económico de manejar mediante enrutamiento de excepciones que de eliminar por completo.
Preguntas frecuentes
¿Una discrepancia entre Qty y Price siempre significa un error de extracción?
No. Algunas facturas muestran legítimamente importes de línea que no equivalen a Qty × Unit Price, debido a descuentos por volumen aplicados a nivel de línea, precios promocionales u ofertas combinadas donde el unit price de la línea es un promedio, no el precio por artículo. Verifique siempre contra la factura original antes de tratar una discrepancia como un error de extracción.
¿Puedo confiar en el gran total si las líneas tienen discrepancias matemáticas?
No automáticamente. Si la Causa 1 (lectura entre filas) está en juego, los errores se cancelan entre sí y el gran total puede seguir siendo correcto. Pero para las Causas 2–4, el gran total probablemente sea incorrecto porque los importes de línea subyacentes alimentan los cálculos de subtotal y total. Resuelva siempre las discrepancias a nivel de línea antes de usar los totales extraídos para el pago.
¿Por qué mi herramienta de IA reporta un 99% de confianza en campos que están mal emparejados?
Porque las puntuaciones de confianza miden la legibilidad de campos individuales, no la consistencia lógica entre campos. Un modelo de visión puede tener un 99% de confianza en que "$150.00" aparece en una posición determinada de la página — y esa confianza no cambia si los $150.00 son un unit price o un line total. La validación entre campos es un paso separado que ninguna puntuación de confianza reemplaza.
¿Cómo manejo la confusión de UOM entre diferentes proveedores?
Estandarice su salida de extracción añadiendo una columna separada "UOM" a su plantilla de extracción. Incluya una instrucción de formato clara: "Extraiga la unidad de medida (EA, DZN, KG, FT, CASE, BOX) de la misma fila y emítala como una columna separada." Esto hace que el UOM sea visible en su salida para que pueda construir reglas de conversión en su hoja de cálculo en lugar de depender de que la IA interprete las unidades automáticamente.
La Línea de Artículo es la Unidad de Verdad en AP
La extracción a nivel de encabezado — nombre del proveedor, número de factura, gran total — ha alcanzado una precisión generalizada. La frontera donde la calidad aún varía significativamente está a nivel de línea de artículo, donde las relaciones entre campos importan tanto como los valores de los campos. La IA lee los números individuales correctamente, pero la asignación a las columnas y filas correctas depende de que el modelo comprenda la semántica del documento. Esa comprensión semántica está mejorando rápidamente, pero aún no está al nivel donde se pueda omitir la validación entre campos. El marco — columna de fórmula + pistas de relación + muestreo dirigido — es el proceso adecuado para cualquier flujo de extracción que alimente pagos o conciliaciones.
Configure la columna de fórmula en su próximo lote. Los cinco minutos que toma añadir =ROUND(Qty*UnitPrice,2) y un formato condicional le dirán más sobre su calidad de extracción que cualquier puntuación de confianza.