How to add document OCR to Microsoft Dynamics 365 Business Central
Short answer
Business Central can receive PDFs as incoming documents and, depending on version and setup, convert them using an OCR service or partner capture products. For manufacturing documents like packing slips, certificates and drawings, add a dedicated extraction pipeline that writes draft records through API v2.0 and routes low-confidence fields to review.
Accounts payable is the obvious OCR target, but manufacturers have more paper than invoices: packing slips for receiving, certificates of conformance and mill certs, inspection reports, bills of lading and customs documents. Each needs different fields, different matching and different consequences when wrong.
Business Central has a native path for purchase invoices through Incoming Documents and its electronic document features, and an ecosystem of AppSource capture products. Those fit standard invoices well. They are a weaker fit for certs and packing slips that must match receipts and lots.
The design question is how much of the document the ERP needs. Often the answer is a few validated fields plus the file attached, not a perfect copy of every line.
What teams use it for
Vendor invoice capture to purchase invoice
Extract vendor, invoice number, dates, totals and lines, match to the purchase order and receipt, and create a purchase invoice for review and posting.
Packing slip to receipt
Read the supplier packing slip, match lines to open purchase order lines, and propose a quantity to receive, with exceptions for over or short shipments.
Certificates of conformance
Extract lot or heat numbers and material grades from certs, attach them to item tracking lots and flag mismatches with the purchase order specification.
Inspection and test reports
Capture pass or fail results and key measurements into quality records, attaching the original report to the lot.
Customs and freight documents
Pull HS codes, values and container references from import paperwork into landed cost fields for review by trade compliance.
Microsoft Dynamics 365 Business Central integration surface
- Incoming Documents and attachments on records, the native place to hold the source PDF with the transaction that came from it.
- Electronic document and e-invoicing features that vary by country and version, which can reduce OCR needs where suppliers send structured invoices.
- REST API v2.0 for purchaseInvoices, purchaseOrders, purchaseReceipts and attachments, plus custom API pages for staging and lot or certificate fields.
- Purchase journals and General Journal import as alternate landing zones, useful for non-PO costs.
- AppSource capture products that integrate through AL extensions; verify their data handling and coverage for your document types.
How it works
- 1
Inventory your document types
List document, volume, source channel and the field set each needs. Rank by manual effort and error cost.
- 2
Capture the file
Receive via mailbox, scanner folder or upload page, storing the original with a hash to detect duplicates.
- 3
Extract with layout and language models
Use OCR for text and a model to map to a schema. Return per-field confidence and the location of each value on the page.
- 4
Validate against Business Central
Check vendor exists, PO is open, quantities do not exceed outstanding, totals add up and tax is plausible before creating anything.
- 5
Create a draft through the API
Write a purchase invoice or receipt proposal in draft, attach the document and store extraction evidence.
- 6
Review with confidence thresholds
Auto-accept only high-confidence, fully matched documents. Show reviewers the page image beside the fields with doubtful ones highlighted.
Example flows
Invoice three-way match
Trigger: A vendor invoice PDF is uploaded.
- Pipeline extracts header and lines.
- It finds the matching purchase order and receipts.
- It creates a draft purchase invoice with the PDF attached.
- Any price or quantity variance beyond tolerance is flagged.
Result: AP reviews variances instead of keying every line, and posting stays a human decision.
Mill cert to lot record
Trigger: A supplier cert arrives with a steel shipment.
- Extraction reads heat number, grade and test values.
- The heat number is matched to the received lot.
- The certificate is attached to the lot and mismatches are sent to quality.
Result: Traceability data is attached at receipt and quality sees nonconforming certs before material is issued.
Keeping data on-prem
Drawings, certs and invoices often carry controlled or commercially sensitive data, so local extraction is a real option. Run OCR engines and vision-language models on your own GPUs with vLLM or similar, store files on internal storage, and write to Business Central through web services on the service tier. A fully air-gapped setup works if scanning and the pipeline live inside the same network. Cloud OCR services are faster to start but send page images outside your boundary, which some contracts and regulations do not allow.
Security checklist
- Encrypt stored documents and limit access to AP, receiving and quality roles aligned with Business Central permission sets.
- Never let the extraction service post invoices or receipts; give it only draft-creation rights.
- Detect duplicates by vendor, invoice number and amount to prevent double payment.
- Validate bank details changes found in documents out-of-band, since invoice fraud often arrives as a PDF.
- Keep the original file and extraction evidence for audit retention periods.
Ways to get it done
Native incoming documents and AppSource capture product
Effort: Days to weeks
Standard vendor invoices with a mainstream layout and a team that wants a supported product.
Cloud document AI service plus a thin integration
Effort: Three to six weeks
Mixed documents where data may leave your network. Needs review UI and Business Central mapping.
Local extraction pipeline, with Netray or in-house
Effort: Typically six to ten weeks for a first document type
Certs, packing slips and drawings with sensitive content, or a requirement to keep documents on-prem.
Pitfalls
- !Tables that span pages and multi-line descriptions are where line-level extraction breaks first.
- !Treating OCR output as truth leads to wrong receipts; always validate against open PO lines.
- !Scanning quality matters more than the model, so fix skewed or low-resolution scans at source.
- !Vendors change templates without warning, so monitor accuracy per vendor over time.
Frequently asked questions
Does Business Central include OCR?
It has Incoming Documents and, depending on version, region and configuration, options to convert documents using an OCR service or electronic invoicing. Capabilities and service availability have changed over releases, so confirm what is current for your tenant, and consider AppSource capture products for broader coverage.
What confidence threshold should we use?
Start strict, with human review of everything, then measure per-field accuracy on real documents. Loosen only for fields and vendors with a sustained record of accuracy. Totals and quantities deserve higher thresholds than free-text descriptions.
Can OCR handle drawings?
It can read title blocks and revision fields reasonably, but interpreting dimensions and notes is harder and riskier. Use it to index drawings by part number and revision, and keep engineering approval for anything affecting manufacture.
Where should the extracted data land in Business Central?
In draft documents created through the API, such as purchase invoices or receipts, with the file attached. Alternatively use a staging table for review. Avoid writing directly to ledgers or posting, since corrections after posting are more painful.
Can we keep documents fully on-premises?
Yes, using local OCR and vision-language models on your own hardware, writing to Business Central web services inside your network. Accuracy depends on model choice and tuning, so pilot on your real documents before committing hardware.
Want Document OCR working on your Microsoft Dynamics 365 Business Central?
A free 30 minute assessment: we map the integration path for your version and setup, and where it should run.
Get a free assessment