⚡ Production System · Microsoft Power Platform

From Paper to Dataverse —
Smart Document Automation

Built a scan-to-Dataverse pipeline that takes a document off a physical scanner and lands structured, queryable records in Dataverse — automatically. No manual data entry. No custom code. No human in the loop.

7
Pipeline Steps
0
Manual Touch Points
100%
Automated Process
<30s
Scan to Stored Record
0
Lines of Custom Code
Project Evolution

Started with SharePoint. Then Made It Smarter.

The first version solved the routing and storage problem. The second version solved the data quality problem — and that's where the real value was hiding.

Version 1 · Production
Scan → SharePoint
  • Scanner emails document to a shared mailbox
  • Power Automate triggers on email arrival
  • Attachment saved to SharePoint folder
  • SharePoint list record created with basic metadata
  • Staff notified via email
  • ✗ Document content still needs manual review
  • ✗ Field values not extracted — file only
→
Version 2 · With AI Builder
Scan → Dataverse (Structured Data)
  • Same trigger, same flow architecture
  • AI Builder reads the PDF and extracts fields
  • Invoice Number, Vendor, Amount, Dates → Dataverse columns
  • Structured, searchable, reportable records
  • Confidence scores logged per extracted field
  • No data entry errors — model handles it
  • SharePoint file still stored as the source of truth
The Pipeline

7 Steps. Zero Human Intervention.

The architecture is intentionally simple. Every step does one thing. Power Automate orchestrates the entire flow — no custom code, no infrastructure to maintain.

🖨️
Step 1
Document Scanning
A staff member places a physical document (invoice, contract, form) into a multifunction printer (MFP). The scanner digitizes it to PDF or image format. This is the only human action in the entire pipeline.
MFP Scanner
📧
Step 2
Scan to Email (Server Account)
The scanner is configured to send the scanned file as an email attachment to a dedicated shared mailbox. The email subject and sender are standardized — this consistency is what makes reliable automation possible.
Microsoft 365 Shared Mailbox
⚡
Step 3
Power Automate Trigger
A Power Automate cloud flow watches the shared mailbox. The moment a new email arrives with an attachment, the flow triggers instantly. No polling delay, no scheduled batch — real-time response to every scan.
Power Automate · When email arrives trigger
📎
Step 4
Get Email & Attachment
The flow reads the email metadata (sender, subject, timestamp) and retrieves the attachment content as a file object. This file is passed to AI Builder in the next step — no temporary storage needed at this stage.
Power Automate · Get attachment action
🤖
Step 5 — The Key Step
AI Builder — OCR & Field Extraction
AI Builder's Document Processing model reads the scanned PDF and extracts structured fields — Invoice Number, Invoice Date, Vendor Name, Total Amount, Due Date, and any custom fields defined in the model. Each extracted value comes with a confidence score. The model handles handwriting, different invoice layouts, and varying font sizes.
AI Builder · Document Processing model
🗄
Step 6
Store Data — Dataverse + SharePoint
The extracted fields are mapped to columns in a Dataverse table — creating a structured, queryable record. The original scanned file is simultaneously stored in a SharePoint document library as the source of truth. Both records are linked by a unique document ID.
Dataverse · SharePoint Online
✅
Step 7
Post-Processing & Notification
The original email is moved to an "Archived" folder and marked as processed — keeping the shared mailbox clean. If a confidence score falls below threshold on any field, a notification is sent to a reviewer. Otherwise, the process completes silently. No staff action required.
Power Automate · Move email · Teams/Email notification
The Intelligence Layer

What AI Builder Actually Does

AI Builder Document Processing is a trained model — you teach it which fields to extract from your specific document type, then it handles every variation of that document automatically.

🤖 Example Extraction Output — Invoice Document
Fields extracted from scanned PDF — with confidence scores
Invoice Number
INV-2024-00123
⬤ 98% confidence
Invoice Date
15.05.2024
⬤ 97% confidence
Vendor Name
Acme Supplies
⬤ 95% confidence
Total Amount
$12,450.00
⬤ 99% confidence
Due Date
14.06.2024
⬤ 96% confidence
Custom Field
PO-2024-447
⬤ 93% confidence
Custom-Trained Model
You label sample documents to teach the model where each field lives. After training, it handles layout variations, different vendors, font sizes, and even handwritten annotations.
Confidence Score per Field
Every extracted value comes with a confidence percentage. Low-confidence fields automatically trigger a human review notification — nothing slips through silently.
Native Power Automate Integration
AI Builder output is a native action in Power Automate. No API calls, no JSON parsing — extracted fields are directly available as dynamic content in subsequent flow steps.
No Code Required
No Python, no Azure Functions, no custom OCR pipeline. The entire intelligence layer is configured in the Power Platform UI — maintainable by the same team that built the flow.
The Difference It Makes

Before & After

The scan-to-SharePoint version took hours of manual work off the table. The scan-to-Dataverse version eliminated the data entry problem entirely — including the errors that came with it.

Before — Manual Process
  • Staff scans document and emails it to a colleague
  • Colleague manually opens the PDF and reads the fields
  • Values typed into a spreadsheet or system manually
  • Transcription errors on amounts, dates, invoice numbers
  • Processing time: 5–15 minutes per document
  • No searchable record — document buried in email or folder
  • Audit trail: none
After — Automated Pipeline
  • Staff places document in scanner — done
  • AI Builder extracts all fields automatically
  • Dataverse record created with structured data in <30s
  • Zero transcription errors from the extraction model
  • Processing time: under 30 seconds end-to-end
  • Fully searchable, reportable, filterable in Dataverse
  • Full audit trail: timestamp, source email, confidence scores
Technology

Built Entirely on Microsoft Power Platform

No custom infrastructure. No external APIs. Everything runs inside the Microsoft 365 tenant — governed, compliant, and maintainable without a developer.

⚡
Power Automate
Flow orchestration, email trigger, all step coordination
🤖
AI Builder
Document Processing model — OCR, field extraction, confidence scoring
🗄
Dataverse
Structured record storage, queryable columns, native PP integration
📄
SharePoint Online
Source document library — original scanned files stored and linked
📧
Microsoft 365 Mail
Shared mailbox as the pipeline trigger — scanner sends attachment here
🖨️
MFP Scanner
Scan-to-email configured — only human touchpoint in the process
Production Results

What This Pipeline Delivers

Built and deployed — not a prototype. Staff don't touch it. It works.

0
Manual steps between scanner and Dataverse record
<30s
End-to-end processing time per document
100%
Documents captured with full audit trail
0
Lines of custom code — pure Power Platform
∞
Volume scalability — handles 1 or 1,000 docs/day equally