1. Is it readableFile type, version, page count, and whether the text can actually be read. A scan nobody can read gets rejected as unreadable, not guessed at.
2. Is it a known classIf the document doesn’t match a defined class, it stops. An unrecognized document is an exception, not a best-effort extraction.
3. Have we seen itDuplicate and near-duplicate check against what’s already been processed, including a resend of the same invoice number.
4. Are the fields thereEvery required field present, in the right format, each one carrying the page and location it was read from so a reviewer can check it in one click.
5. Does the math holdLine items against the total, tax and discounts against the subtotal, quantities against units. Arithmetic that doesn’t close stops the document.
6. Does it match the recordVendor on file, purchase order, contract, or job number cross-checked against your existing record. A value that disagrees with the system gets shown beside it, not written over it.
7. Is it allowedYour policy checks last: who may be paid, what may be changed without a second approver, and which fields always require review regardless of how clean the document looks.