Xero Supplier Statement Checker usa n8n y TypeScript para validar facturas de proveedores
Una herramienta open source orquesta la extracción de extractos Xero con n8n y aplica reglas deterministas en TypeScript para evitar coincidencias erróneas.

La comunidad ha publicado Xero Supplier Statement Checker, un proyecto bajo licencia MIT que combina n8n para la orquestación y TypeScript para la validación determinista de extractos de proveedores en Xero. El objetivo es separar referencias de importes y preservar la evidencia para que el operador revise cualquier ambigüedad.
Separar referencias y importes
El flujo comienza con la selección del proveedor y la moneda. Las referencias se normalizan con Unicode NFC, recorte de espacios y mayúsculas ASCII, pero se conservan puntuación, ceros iniciales y espacios internos. Sólo cuando existe un candidato de referencia válido se compara el total original con el importe pendiente. Los importes se manejan como cadenas decimales y se convierten a unidades menores (centavos) para evitar redondeos silenciosos. Cualquier desviación de fracciones no cero se marca como error.
Recuperación robusta de páginas
El workflow usa nodos HTTP fuera de los nodos de código, procesa páginas secuencialmente y registra IDs, recuentos y intervalos de recuperación. Si una página falla (por ejemplo, un 401 en la segunda página), el proceso se detiene y se genera un informe sin coincidencias automáticas. El mecanismo respeta los encabezados Retry-After del proveedor y no descarta facturas pagadas ni antiguas sin evidencia explícita.
IA solo para extracción, nunca para decisión
Para PDFs se extrae texto página a página y se envía a OpenAI con un esquema de salida estricto y store: false. La IA devuelve fragmentos de evidencia que deben existir en el texto suministrado; nunca elige al proveedor ni decide coincidencias. El operador revisa y corrige el CSV generado, confirmando referencias, monedas y cobertura del extracto. PDFs escaneados, cifrados o ilegibles son rechazados y requieren revisión manual.
El repositorio incluye un workflow sintético para n8n, fixtures de prueba y un demo que genera un reporte HTML con dos coincidencias, una diferencia de importe y varios ítems que requieren revisión. Los límites de procesamiento son 10 MiB, 50 páginas PDF o 1 000 filas, evitando truncados de datos. La herramienta no reconcilia saldos, convierte divisas ni envía correos; su alcance se limita a la revisión del extracto.
Para probarla, clone el repositorio, instale dependencias con npm ci y ejecute los scripts demo y check. El proyecto está disponible en GitHub y también ofrece opciones de implementación a través de Bjorvand AI.
Esta solución puede ser útil para equipos que necesiten automatizar la validación de extractos Xero sin perder trazabilidad, y que quieran mantener la decisión final en manos de un operador humano.


