Back to Odoo in Excel
SheetXAI logo
Odoo logo
Odoo · Excel Guide

Validate Vendor Invoices From a Google Sheet Using Odoo OCR

2026-05-14
5 min read

The Scenario

You're the finance controller and it's the second Tuesday of the month. Fifty vendor invoice PDFs have accumulated since last cycle — the URLs are in column A of an Excel workbook your AP team maintains. Your job is to run all fifty through Odoo's OCR, collect the extracted fields, and before the file goes to your CFO on Thursday, flag anything that looks wrong: missing totals, past-due dates, VAT numbers that didn't extract. You have Wednesday.

The bad version:

  • Submit each invoice URL to Odoo manually, wait for OCR, copy extracted fields into the workbook row by row — 50 times.
  • Run a second pass through the completed sheet to find anomalies: scan for blank totals, compare due dates against today, look for empty VAT columns.
  • Send the CFO a workbook with a Flags column you populated by hand, knowing you probably missed something in row 34.

A review process that depends on manual inspection has a reliability ceiling. The anomaly you overlook on a Wednesday afternoon is the one that surfaces during the audit.

The Easy Way: One Prompt in SheetXAI

SheetXAI is an AI agent that lives inside your Excel workbook. It reads your invoice sheet, connects to Odoo through its built-in integration, submits the batch for extraction, collects results, and can run the validation logic inline — flagging anomalies in the same pass that writes the extracted fields, not as a separate step you have to schedule.

Process my Excel invoice-review sheet through Odoo Extract — parse each invoice, paste extracted fields, and in a final column mark 'REVIEW' for any invoice where the extracted total does not match the expected total in column H

What You Get

  • Extracted total, due date, supplier, VAT, IBAN, and currency land in the columns adjacent to your URL list
  • A final column marks 'REVIEW' for any row where the extracted total doesn't match the expected value in column H
  • Rows where OCR returns an error get a status note rather than a silent blank
  • The CFO receives a workbook where the anomalies are already surfaced — no secondary pass required

What If the Data Is Not Quite Ready

You want separate flag categories rather than a single REVIEW label

Submit all invoice URLs in column A to Odoo Parse Invoice, write extracted fields to columns B through G, then populate a Status column with: 'MISSING TOTAL' if column B is empty, 'PAST DUE' if due date is before today, 'NO VAT' if VAT number is empty, 'IBAN MISSING' if IBAN is blank — and 'OK' for rows that pass all checks

Some invoices are already processed and shouldn't be resubmitted

For rows in column A where column B is empty, submit to Odoo Parse Invoice and write extracted total, due date, supplier, VAT, IBAN, and currency to columns B through G — skip rows where column B already has a value, then run the REVIEW flag logic across the full workbook including previously processed rows

You need to flag invoices where total is missing or below a minimum threshold

Submit all 50 invoice URLs to Odoo Parse Invoice, write extracted fields to columns B through G, and in a Flags column mark 'MISSING TOTAL' where total is empty and 'BELOW MINIMUM' where extracted total is less than 100 — leave Flags blank for rows that pass

Full extraction, validation, and CFO summary in one prompt

Submit all 50 invoice URLs in column A to Odoo Parse Invoice, write extracted total, due date, supplier, VAT, IBAN, and currency to columns B through G, populate a Flags column with the specific issue for each anomalous row, sort the workbook so flagged rows appear at the top, and add a summary block below the data showing total invoices, count flagged, total extracted value, and count with missing IBAN

The summary block gives your CFO the overview and the flagged rows give the detail — built in the same pass that ran the extraction.

Try It

Get the 7-day free trial of SheetXAI and open your vendor invoice workbook with PDF URLs in column A, then ask it to run the full batch through Odoo and flag anomalies in the same step. For related tasks, see batch invoice parsing without validation and querying Odoo ERP data directly into your workbook.

Stop memorizing formulas.
Tell your spreadsheet what to do.

Join 4,000+ professionals saving hours every week with SheetXAI.

Learn more