Context
Healthcare distributor with a high volume of B2B orders, each containing over 500 lines. Orders entered through mixed channels: images, photos of printed documents, free-form Excel spreadsheets, and email bodies. The data entry team worked against the ERP line by line.
The problem
Each order required hours of manual labor, and during peak demand times, the response time began to impact commercial operations. Scaling sales meant scaling administration in almost the same proportion.
What we did
We built an Intelligent Document Processing system for B2B orders: it ingests orders in any format (image, PDF, photo, unstructured Excel, email body), passes them through a vision model to extract order lines, maps them against ERP SKUs with a model trained on the client's catalog, and directly uploads high-confidence lines to the ERP. Low-confidence lines are sent to a human review queue.
Computer vision for reading heterogeneous inputs. The end client was not going to change how they send orders — the solution adapts to existing formats.
ML model trained on client history for SKU mapping. Each product is described in a thousand different ways depending on the buyer; the model learns from the catalog and real history.
Human review queue for low-confidence lines. Operators stop keying in data and start validating exceptions, with confidence scores per line.
Direct integration with the ERP, with no intermediate layer. Mapped orders enter the system with the SKUs already resolved.
What we ruled out
Building a structured order portal for B2B clients to send orders in a uniform format. It would have solved the problem "at the source," but industry buyers had been sending orders the same way for years: forcing a change of habit would have added commercial friction greater than the technical savings. It was documented as an option for phase 2.
Why it worked
The client did not have to change how they work.
The AI learned from real data and not from theoretical catalogs.
People stopped entering data and started managing exceptions.
95% was automated; the goal was not 100%.
Stack
.NET
React
Azure DevOps
Computer Vision
Machine Learning
ERP Integration
Result
95% of orders processed without human intervention
From one day per order down to minutes
+500 lines processed automatically per PO
Growth absorbed without increasing headcount
Elimination of the operational bottleneck
