AI Assistant for Invoice Processing

Geography
Germany
Industry
Automotive
Size
200+ employees
Implementation
2025
A Short Reference about the Project Team
The project team consisted of experts in Dynamics 365, Power Platform, Azure, and AI. They specialize in building smart AI assistants for customer support and applied best practices in generative AI to this project.
Client’s Request
A German automotive company asked UDS to help automate their invoice processing. The goal was to:
- Process invoices more efficiently
- Reduce manual work
- Increase the accounting team’s operational productivity
Briefing

The client’s accounting team receives numerous invoices daily from various suppliers (over 800 per month) in the form of PDF documents, scans, or photos (typically in the form of images of physical invoices printed on paper). Each invoice differs in format and content.
The main challenge is the lack of a unified layout, as incoming invoices vary in structure, format (including scans and photos in formats such as PDF, JPG, PNG, etc.), and data content. The data from all these invoices needs to be entered into the CRM, i.e., creating invoice records, separating them, filling in the data into appropriate fields, and indicating the necessary account ledger numbers. Filling this data out manually takes a lot of time.
Manual processing takes 8–12 minutes per invoice and often leads to:
- Mistakes in amounts or dates
- Missing information
- Low progress and time-wasting
- Lack of clarity in expense tracking
To address these challenges, we developed a smart AI assistant. Our solution was designed to automate the process of recognizing incoming invoices, extracting data from PDFs and images, and distributing this data to the relevant fields in the CRM records. Additionally, it automated the creation of split entries for each incoming invoice and associated them with the appropriate general ledger account numbers.
Preparation
- Collect a list of requirements
- Create a “definition of done” document
- Test recognition approaches (OCR neural vs GPT models)
- Identify the technologies (OCR technologies + AI technologies + Azure services + OpenAI + .NET 8 + PostgreSQL + Power Platform)
- Create field mapping for invoice recognition
- Train the OCR model
- Create an AI assistant with instructions for ledger account mapping
- Build a stand-alone UI app to run recognition and preview/edit results
- Integrate with CRM and upload the recognition results
- Optimize the workflow
- Upgrade the AI assistant and improve ledger matching accuracy
Realization
The key features of the solution are the following:
-
Invoice recognition and extraction
The application recognizes and extracts data from invoices of varying formats and layouts. The application is trained on a dataset encompassing diverse invoice formats to ensure it can recognize a wide variety of invoices. Data extraction achieves an accuracy rate of 85% or higher, requiring minimal manual corrections from the accounting team.
It uses OCR (Optical Character Recognition) and AI to convert a document, image, or scan to text, extract required fields, identify data (such as numbers, symbols, specific fields), and understand the context (e.g., "this is an invoice number").
-
CRM data mapping
It is fully integrated with Dynamics 365 CRM. The integration with the ERP system is also possible.
The required entries are automatically created. Extracted data is mapped and populated into the corresponding fields in the records in the CRM. Besides, the original invoices are also uploaded to the record.
It also supports duplicate checking, which AI and business logic rules detect automatically.
The matching model utilizes predefined mappings, historical invoice data, and user feedback to continuously improve its accuracy and logic over time.
-
Self-training model
This model is unique in its ability to self-train. It uses an API to update account mappings based on user input (requires a small database and adds minimal cost).
Continuing improvement helps the users to recognize and deal with more invoice types and constantly decreases input errors.
The final goal is the following: the accountants are required to only confirm data and make fewer than 1% corrections with automatic recording of discrepancies.
We achieved these outcomes:
- The invoices are automatically processed: the data is recognized, transferred to the corresponding fields in the CRM records, split entries are created for each invoice line item, and these are matched with the correct general ledger account numbers.
- The assistant is trained to handle a wide variety of formats and layouts, as there is no single standard, and the clients send invoices in a format that is convenient for them.
- The assistant can automatically process invoices from letters sent to a specific email. That is, it pulls out the attached files, processes them in the background, and creates invoice records in the CRM. The users then only need to open them, review the data, make any necessary edits, and save them.
- The AI model improves continuously using past data and user feedback.
- The app detects incoming invoice numbers and License Plate Numbers matching them with appropriate vehicles.
- The accuracy exceeds 85%, so manual corrections are rare.
- The client can process invoices with many line items.
- The loads are performed in under 5 seconds with no noticeable lag.
For a more comprehensive understanding, refer to the Dynamic AI Assistant for Invoicing article in the UDS Blog.
Visualization
What the Customer Received


Summary
The AI assistant now recognizes invoice data, fills in the CRM info in the relevant fields, and learns from user corrections. Besides, the assistant is accessible both from the CRM and the web portal.
Users can upload invoices and review extracted data through an intuitive and user-friendly interface. The data is updated online immediately after the users have rechecked the incoming documents. It loads within 5-10 seconds and operates 24/7, processing individual invoices with stable speed and reliability.
Automated invoice processing does not have limits and can take just about 1 minute. Employee involvement is minimized: they are required to verify data and provide final confirmation in the system for further payment processing.
Moreover, we have provided the client with these benefits:
- The AI assistant is easy to train using Azure OpenAI, and no prompt engineer is needed.
- The invoice data is updated in real time after the accountant’s review.
- The processing time has been cut from 8-12 minutes to 30–60 seconds.
- The accounting workload has been cut by over 50%.
- Full transparency is achieved with real-time data in CRM.
Therefore, routine tasks previously performed by people, such as document entry, primary processing, or data conversion, can be automated and optimized, thereby avoiding a lengthy process of delivering changes to AI assistant instructions.

