Workflow Automation · Read + Write
OCR: Purchase Order → Sales Order
Automate
Rep · High
Reason · Med
The problem
Customers email PO PDFs in 20+ layouts. Sales ops re-types each one — 4–6 min per PO, 200+ POs/day. Errors leak into shipments.
The AI approach
Layout-agnostic IDP: vision-LLM reads the PDF, normalises into a JSON line-item schema, and validates totals + part numbers before posting.
The outcome
~95% touchless
Re-keying time falls from 5 min → 30 sec. Ops review only the 5% that fail validation.
Try itInput → Process → Output
Input — Inbound PO
Purchase OrderP-2451
VendorAcme Plastics Co.
Date2026-05-02
BuyerSirikit M.
ItemQtyTotal
PVC pipe 4"504,250
PVC elbow 4"1203,600
End cap 4"40800
Process — AI pipeline
1OCR documentReadPredictive
2Extract fields (vision-LLM)ReadGenerative
3Validate totals + SKURulesSymbolic
4Post Sales OrderWriteSymbolic
Output — Sales Order in SAP
Click Run demo to watch the AI pipeline turn the PO into a Sales Order.
SALES ORDERSAP · created
SO-2026-04812
CustomerC-1138 · Acme Plastics
PO refP-2451
Ship date2026-05-09
SKU · itemQtyTotal
PVC-P4 · pipe 4"504,250
PVC-E4 · elbow 4"1203,600
PVC-C4 · cap 4"40800
Three AI types in this use case
SymbolicCatalog lookup, totals-match check, customer-known check; SAP posting via deterministic mapping.
PredictiveOCR text detection; layout classification picks the field-extraction strategy.
GenerativeVision-LLM extracts free-form fields (vendor name variants, multi-line addresses) into structured JSON.
The stack
- OCR · Textract / DocAI / Azure FR
- Vision LLM · Claude Sonnet
- Validation · Python + catalog lookup
- Sink · SAP iDoc / OData
When this works
- POs follow a library of layouts (≤ 100)
- Master data (customer, SKU) is clean
- Volume ≥ 50 POs/day
- SLA allows 5–10 min latency
When it fails
- Hand-written annotations override printed values
- Brand-new layout — first-time accuracy drops
- Duplicate SKUs in master — too many flags
- Rare line items not in catalog — model hallucinates a match