Skip to main content
AI2023Principal Software Architect

Document Intelligence Automation Platform

AI-driven document classification and extraction pipeline automating invoice, contract, and compliance form processing with human-in-the-loop validation queues.

Overview

The logistics provider processed 2.4 million vendor invoices and customs documents annually through a manual data entry team of 85 operators across three regions. Error rates on critical fields such as HS codes and invoice totals drove downstream payment delays and customs holds. I designed a pipeline combining Azure AI Document Intelligence for OCR and layout analysis with custom classification models and GPT-assisted field normalization for unstructured clauses. Human reviewers handle low-confidence extractions through a .NET workflow UI with active learning feedback loops that retrain models quarterly.

Business Problem

Manual document processing cost $6.2M annually with 4.8% field error rates on invoice line items. Customs documentation errors caused an average 2.3-day delay on 12% of international shipments. Contract renewal clauses buried in PDF attachments were missed, resulting in unfavorable auto-renewals estimated at $1.1M in excess spend. Scaling the operations team was not viable given 18% annual document volume growth.

Solution

Documents arrive via email listeners, SFTP drops, and API uploads, landing in Azure Blob Storage with metadata tags for tenant and document class. Azure Functions orchestrate OCR, classification, and extraction stages, publishing structured JSON to a validation queue. Confidence thresholds route fields below 0.92 to human review; approved extractions post directly to SAP via idempotent API calls. Azure OpenAI assists with clause summarization and anomaly detection on payment terms deviating from master agreements.

Architecture

The platform follows a stage-based pipeline architecture with dead-letter queues and replay capability per document ID. Model serving uses Azure AI Document Intelligence custom models versioned alongside extraction schema definitions stored in PostgreSQL. A .NET API layer manages tenant configuration, reviewer assignments, and audit trails for every field correction. Event-driven notifications via Service Bus trigger downstream ERP posting and exception escalation to Power Automate flows for SLA tracking.

Tech Stack

.NET 7Azure AI Document IntelligenceAzure OpenAIAzure FunctionsAzure Blob StoragePostgreSQLRedisPower AutomatePython

Challenges

  • Multi-language invoices required locale-specific models and fallback OCR settings that degraded throughput until we implemented parallel language detection.
  • Model drift on new vendor template formats caused extraction accuracy drops; active learning from reviewer corrections needed automated retraining pipelines with approval gates.
  • ERP posting failures due to master data mismatches required a pre-validation service that checked vendor IDs and GL codes before submission.
  • GDPR and data residency constraints mandated region-specific blob storage and model endpoints for EU document traffic.

Results

  • Automated straight-through processing for 73% of invoices, up from 0% manual baseline.
  • Reduced field error rates from 4.8% to 0.9% on extracted invoice totals and line quantities.
  • Cut average customs document processing time from 26 minutes to 3 minutes for automated cases.
  • Realized $3.8M annual operational savings while redeploying 40 operators to exception management roles.

Screenshots

Key interfaces and system views from the engagement.

Document Intelligence Automation Platform screenshot 1
Document Intelligence Automation Platform screenshot 2
Document Intelligence Automation Platform screenshot 3

Lessons Learned

  • Human-in-the-loop is not a failure mode—it is the control mechanism that makes AI automation acceptable to finance and compliance stakeholders.
  • Confidence thresholds should be tunable per field severity; a low-confidence date field is tolerable, a low-confidence total is not.
  • Invest in document lineage and replay early; debugging extraction errors without the original pipeline state wastes more time than model tuning.
  • Pre-validation against master data prevents the majority of downstream ERP failures that erode trust in automation.

Related Projects

Additional work in adjacent domains and technology stacks.

Enterprise
Principal Software Architect2024

Enterprise Order Management Platform

Modular .NET order orchestration platform replacing a legacy monolith with bounded contexts, event-driven workflows, and multi-region deployment.

.NET 8Azure Kubernetes ServiceAzure Service BusKafka
View Case Study
Healthcare
Lead Software Architect2021

HIPAA Clinical Data Exchange Hub

FHIR-native interoperability platform enabling secure clinical data exchange between hospitals, payers, and specialty networks with full audit trails.

.NET Core 6Azure API ManagementAzure Service BusSQL Server
View Case Study
Finance
Senior Software Architect2020

Real-Time Trade Settlement Engine

Low-latency settlement and reconciliation platform processing equities and fixed-income trades with T+1 regulatory compliance and intraday risk controls.

.NET Core 3.1SQL ServerAzure Event HubsAzure Functions
View Case Study