OCR Purchase Order Terms: Reading the Fine Print on a Scan
By Schema LawPublished Updated
To get readable text from the terms on a scanned purchase order, first find where the terms are: the face, the reverse side, attached sheets or a web address. Capture every side at a resolution that holds small type, run OCR on the purchase order terms, and proofread the result against the image before you compare it with anything.
Where do the terms on a scanned purchase order actually sit?
The terms of a purchase order can sit in four places: on the face among the order details, on the reverse side in dense small print, on separate sheets attached behind the order, or on a web page the order names. Check all four before you decide the scan has no terms.
| Place | What to look for on the scan | What it tells you |
|---|---|---|
| The face | A line near the foot or beside the signature, such as "subject to the terms and conditions on the reverse" or "see attached" | Where the rest of the terms are meant to be |
| The reverse side | A second page image filled edge to edge with numbered paragraphs in two or three columns | The form terms themselves |
| Attached sheets | Pages headed "General Terms and Conditions of Purchase" with their own page numbers | Terms printed as a separate document and sent with the order |
| A web address | A URL in the footer or in the pointer sentence | Terms that were never on paper |
Start with the pointer sentence on the face. It is the order's own statement of where its terms are, and its exact wording matters, so type it out in full: which terms, where, and any revision or date it names. Then count what you hold. A one-page PDF whose face says "on the reverse" is a scan with half the document missing.
The face also carries terms of its own. Typed or handwritten entries for price, quantity, delivery point, payment days and shipping terms sit in boxes, and a box labeled "Special instructions" or "Notes" may hold a sentence that changes the printed boilerplate. Those boxes are form fields, and the post on OCR for scanned forms explains how to keep each entry with its label.
On the face, copy the dates beside the buyer's order and the seller's acknowledgment, which are the offer and the acceptance you can see. In the reverse-side type, find any express warranty, implied warranty, and warranty disclaimer, and note each paragraph number. If the form cites the Uniform Commercial Code or the Magnuson-Moss Warranty Act, write that citation as printed, along with any cooling-off period the text states.
A purchase order is one kind of printed-form contract. A negotiated sale of a business or a property on a pre-printed form raises different problems, covered in the guide to scanned purchase agreements.
Why is the reverse side of a purchase order missing from the scan?
The reverse side goes missing when the paper order was scanned on one side only, or when the scanner dropped the back as a blank page. It also goes missing when the order was never paper: a PDF generated by a purchasing system and emailed may contain only the face, with the terms held somewhere else.
The post on duplex scanning explains how backs of pages are lost and how to tell from a file whether both sides were captured. For a purchase order, three signs point to a missing back:
- the face refers to terms "on the reverse", "overleaf" or "on the back hereof", and the file has one page;
- the file has several orders in a row and every page is a face;
- faint mirror-image text shows through the face, which means something is printed on the other side of the sheet.
Getting the back
Work down this list until one route succeeds, and write in the file note which one did.
- Rescan the paper. If your client holds the original, ask for both sides, back included, even if it looks like boilerplate. Ask for the back of every sheet, because a multi-part form can print different terms on different copies.
- Ask for a blank form. If the signed paper is gone, the party that issued the order may still hold unused forms from the same print run. A blank back is evidence of the form terms, though not of what this particular sheet carried. Record the difference.
- Find another order from the same period. A second order between the same parties from the same month, scanned in full, may show the same reverse side. Compare the form number and revision code in the footer of both faces before you treat them as the same form.
- Ask the issuer how the order was sent. If it went by email from a purchasing system, ask for the email with its attachments in original form. The terms may be a second attachment that was never saved to the file.
- Request it from the other side. In a dispute, the complete order in the other party's records is a document to ask for through whatever process your matter allows.
Do not fill the gap from memory or from the current terms on a company's website. Whichever copy you end up with, label it with its source, so nobody later takes a blank form for the signed sheet.
Small grey type: getting readable text from purchase order boilerplate
Readable text from purchase order boilerplate starts with the capture. The reverse side is the hardest page in the file: small type, pale ink, narrow columns and thin paper. Scan it again from paper if you can, then test a single paragraph and proofread it before converting the rest.
Four things about this page work against recognition, and each has an owner elsewhere on this blog:
- Type size. Letters need enough pixels to keep their shapes apart. The section on fine print and small type on a coarse scan explains what happens when they do not, and what to ask for.
- Pale ink. Grey or light-colored print can vanish when a scanner reduces the page to pure black and white. The post on OCR for faded text covers that loss.
- Columns. Two or three narrow columns with a thin gap invite the software to read straight across. See whether OCR can handle two-column documents for how to check the order of the output.
- Show-through. On thin paper, the printing on the face can show faintly on the image of the back. Place a sheet of black paper behind the page on a flatbed and scan again to see whether the ghost text fades.
A test for this page
Before you spend time on the full reverse side, run this test on one paragraph.
- Pick the paragraph with the most numbers in it. A warranty or payment clause is a good choice.
- Zoom the page image to 300 percent. If you cannot read the paragraph yourself at that zoom, do not expect software to, and get a better capture first.
- Convert the page and find that paragraph in the output.
- Count the words in the paragraph on the image and the words in the output. A large difference means lines were dropped or columns merged.
- Read the paragraph against the image, character by character for every figure.
- If the paragraph passes, convert the page. If it fails, change the capture, not the software settings, and test again.
Fine print on a pale back page is not clean print. Schema Law's homepage says its recognition is strongest on clean print and that nothing marks a passage as uncertain, so the proofreading is yours to do. You see the result page by page on screen, so you can check it against the original before you export; the how it works section describes the steps.
Words to proofread hardest in boilerplate are the short ones that carry the clause: "not", "no", "only", "unless", "all", "any". After those, read every number of days, every percentage and every section cross-reference. Keep the corrected text and the page image together, and mark the text as a working transcription.
Some suppliers print their terms in two languages on the same sheet, one beside the other. That layout needs its columns separated before the clauses can be paired, as set out in the guide to OCR for bilingual contracts.
Lining up the buyer's order terms against the seller's acknowledgment
Line up the two forms in a table with one row per subject and one column per document. The buyer's purchase order and the seller's acknowledgment or invoice each carry their own printed terms, and a table shows where they match, where they differ and where one is silent.
The Uniform Commercial Code has a section on an acceptance or confirmation that states terms the offer did not: section 2-207, headed "Additional Terms in Acceptance or Confirmation". Subsection (1) begins: "A definite and seasonable expression of acceptance or a written confirmation which is sent within a reasonable time operates as an acceptance even though it states terms additional to or different from those offered or agreed upon". Read the full text of UCC section 2-207 as published by Cornell's Legal Information Institute. That page is the uniform text. Each state enacts its own version, so find the section as enacted in the state whose law governs, and confirm that the transaction falls under it at all.
This post gives no view on what the section does to any pair of forms. That analysis belongs to the lawyer on the matter. The table exists so the analysis starts from accurate text.
Building the table
- Convert both documents and proofread both.
- List the subjects either form addresses. Use the clause headings as printed.
- For each subject, paste the buyer's wording in one column and the seller's in the next, each with its clause number and scan page.
- In a fourth column, write one of four words: same, different, buyer only, seller only.
- Add the pointer sentence and any sentence in either form that speaks about acceptance, objection or the other party's terms. Quote these in full; do not summarize them.
Suppose Marlowe Pump Works, Inc. sends a purchase order to Astrid Castings LLC, and Astrid replies with an order acknowledgment. Both companies and all terms are invented.
| Subject | Buyer's purchase order | Seller's acknowledgment | Status |
|---|---|---|---|
| Acceptance wording | Cl. 1, p. 2: "This order limits acceptance to its terms." | Cl. 1, p. 2: "Seller's acceptance is conditional on Buyer's assent to these terms." | Different |
| Warranty period | Cl. 7, p. 2: 24 months from delivery | Cl. 5, p. 2: 12 months from shipment | Different |
| Limitation of liability | No clause | Cl. 9, p. 2: capped at the price of the goods | Seller only |
| Payment | Face: net 60 | Face: net 30 | Different |
| Governing law | Cl. 15, p. 2: Ohio | Cl. 14, p. 2: Wisconsin | Different |
| Delivery term | Face: delivered to buyer's dock | Face: same | Same |
Add a row for dates: the date of the order, the date of the acknowledgment, and the dates of shipment and payment if the file shows them. The sequence of events is part of what the lawyer will need, and the documents are where it is recorded.
A comparison tool is the wrong instrument here. Two different forms share almost no sentences, so a redline shows everything as changed. The method in how to compare two scanned contracts is for two versions of one text.
Web-linked terms a purchase order points to but does not print
When a purchase order points to terms at a web address, the terms are outside the scan and have to be captured separately. Record the address exactly as printed, save what is at that address today with the date, and then find out what was there on the date of the order, which may be different.
The address on the scan is small type, and recognition confuses the characters a URL depends on: the letter l and the digit 1, the letter O and zero, a hyphen and an underscore, a period and a comma. Type the address from the image yourself. Then open it.
Capture what you find in this order:
- Save the page as a PDF from the browser's print dialog, with headers and footers turned on so the address and the date print on every page.
- Download any linked file. If the page links to a PDF of the terms, save that file too, unchanged, and record its file name.
- Record any version marking on the page or in the file: a revision number, an effective date, a "last updated" line.
- Write a capture note: who captured it, the date and time, the address typed, and the address the browser ended up at if it redirected.
- Record a failure as carefully as a success. An address that returns an error, or redirects to a home page, is a finding. Save a PDF of that result too.
Today's page is evidence of today's terms. To learn what the address showed on the order date, ask the party that published the terms for the version in force on that date and for its revision history. Check whether your own client saved a copy when it placed or received the order. Look through the email that carried the order for an attachment. If a public web archive holds a capture of the address, note the capture date it reports and compare it with the order date.
A saved web page that came with real text needs no OCR. A saved page that is a picture of the terms does; try selecting a word to find out. File the capture beside the order scan, named so the link between them is plain: PO 48213 - web terms captured 2025-03-04.pdf.
Which revision of the form terms governed this order?
Look in the footer and margins of the order for a form number, a revision code or a date, and match it to the same marking on the terms. A company can reissue its standard terms, and the marking is how you tell which printing a given order belongs to.
| Marking | Where it appears | What to record |
|---|---|---|
| Form number | Bottom corner of the face or back, such as "Form P-112" | The number exactly as printed |
| Revision code | Beside the form number, such as "Rev. C" or "Rev. 04/19" | The code, and whether it reads as a letter, a sequence number or a date |
| Effective date | In the heading of the terms, such as "Effective 1 July 2019" | The date, in the format printed |
| Printer's mark | Tiny text at the foot of the back | The text, even if you cannot interpret it |
| Document number in a web file | The footer of a downloaded terms PDF | The number and any version suffix |
These marks can be the smallest type on the page, and they sit at the edge, where a scan can cut them off. Read them from the image at high zoom and type them yourself. A revision code misread by one character sends you to the wrong edition. If the edge of the page was cropped, the post on scanning legal-size documents explains how text at the margin is lost.
With the markings recorded, build a short revision table for the form: each revision you have seen, the earliest and latest order dates you have seen it on, and where your copy came from. Three orders from one buyer in 2018, 2020 and 2023 may show two or three different backs. Lay the proofread texts of the revisions side by side; because these are versions of one text, a comparison tool will show what changed between them.
Then answer the question for the order in front of you with what the papers show, and no more:
- the revision marking on the face of this order;
- the revision marking on the terms you hold, and whether it matches;
- if the terms were on the web, the version marking on the capture and the capture date against the order date;
- any gap, stated plainly, such as "the face shows Rev. C; the only back we hold is Rev. D from a 2023 order".
Which revision legally governed is a conclusion for the lawyer. Your record gives that conclusion its footing: what was printed on which sheet, read correctly, with every gap named.