INSIGHTS

From “20 boxes” to an order entry: lessons from a fax OCR prototype

Reading the text on an order does not automatically make it ready for registration. Converting boxes into pieces requires product data, and a misread product code can cause an entire line item to disappear.

1. Check the product and pack size first

We tested an order management prototype with five fictional purchase orders, each rendered in four image conditions: 20 inputs in total. Seven matched every predefined check. This was not a test of real customer documents or received faxes, and it does not establish production accuracy or time savings.

One of the sample orders contained these three lines:

ProductOrdered quantityPack sizeConverted quantity
P006 — Cable ties, 200 mm20 boxes10 pieces per box200 pieces
P008 — Black insulating tape30 pieces10 pieces per box30 pieces
P001 — Two-pole connector3 boxes100 pieces per box300 pieces

A box does not represent the same quantity for every product. An order for 30 pieces remains 30 pieces. Text recognition and conversion using the product master are separate steps.

Sample order A in Japanese, with three line items

2. Three source lines became two candidates

For order A at normal quality, the source contained three lines but the screen showed only two candidate items. Quantities and units could not be finalized either.

The saved OCR output read “20箱” (20 boxes) as “20 #4”, and the product code “P001” as “POO]”. The prototype uses product codes to split the recognized text into line items, so a damaged code also affects line boundaries.

Correcting visible text would not have been enough: one line was missing from the candidates entirely. Review needed to include a comparison of line counts against the original.

Japanese demo screen showing two candidates for a source document with three lines

By contrast, order B had one line. The prototype extracted seven boxes of cable ties and used the master’s pack size of ten to display 70 pieces. This was a candidate result before review, not a completed automatic order registration.

Japanese demo screen converting seven boxes into 70 pieces

3. Results across 20 inputs

The five orders shared one layout, with different products, quantities, units and line counts. Each was tested at normal quality, reduced resolution, a slight rotation and low contrast.

Image conditionSettingInputs matching all checks
Normal1,500 × 2,100 pixels2 / 5
Low resolutionReduced to 429 × 600 pixels0 / 5
RotatedNormal image rotated by 3°3 / 5
Low contrastContrast factor of 0.252 / 5
Total5 orders × 4 conditions7 / 20

“Matching all checks” means the customer, requested delivery date, number and sequence of lines, product codes, quantities, units and converted quantities all matched the prepared answers. Manually corrected results were not counted. The metric does not mean every product name or every character in the document was correct.

Rotation happened to produce more matching inputs than normal quality in this sample. That does not establish that rotating documents improves results: there were only five original orders in one format. Other customer formats need separate validation.

Microsoft’s OCR documentation also discusses how image quality and rotation affect results and why evaluation on the intended documents matters. This prototype did not use Microsoft’s OCR product; the reference supports the evaluation approach, not a product comparison.

4. What to check before registering an order

  • Line count: has any source line disappeared from the candidates?
  • Product code: are any codes misread or products unresolved?
  • Quantity and unit: have boxes and pieces been confused?
  • Conversion evidence: which product and pack size were used?

Real operations also require price, stock and delivery checks. This test did not validate the entire order workflow.

In the prototype, the user reviews the original before adding candidates to the order list. A checkbox alone does not prevent recognition errors. Users also need to compare the original and result easily, and to add omitted lines.

5. Design the workflow, not just the OCR step

Automating order entry requires product matching, pack-size conversion and handling of missing lines as well as text recognition. This test demonstrated both a successful master-data conversion and a failure in which a misread product code caused a missing item. Isolating each stage helps identify where improvement is needed.

Intentia designs document reading, product-master matching and human review as one workflow. We define what can be automated and what needs human judgment, then make source comparison and corrections part of the design.

Products, documents and existing systems differ by company. We validate and refine the workflow around those conditions until it can be used in practice.

Test conditions

  • Printed, fictional PNG images only. Handwriting, actual faxes, customer data and PDFs were outside the test scope.
  • Tesseract.js 6.0.1 with the demo’s Japanese and English dictionaries. This was not an evaluation of generative AI document understanding.
  • OCR ran from Node.js on 20 inputs, using the demo’s extraction and conversion functions. Each input used a new worker and one attempt, without corrections or retries.
  • The normal-quality A and B images were additionally checked in the browser demo. All 20 inputs were not tested in the browser.
  • The quantity conversion function was called for evaluation. Human approval and registration in a core system were not performed.
  • These were 20 variants of five source images, not 20 independent document formats. Processing time, costs and operational savings were not compared.

References

Explore the Order Management AI Agent and demo →