Invoices are a staple of day-to-day accounting no matter your business. With the aid of Microsoft’s Form Recogniser, their processing can be streamlined to save your business both time and effort.

A subset of the powerful Cognitive Services, Microsoft’s Form Recogniser enables users to easily extract the key details from a range of document formats, removing the need for tedious data entry tasks and manual updates of your revenue stream. Not only is it easy to use, but the API integration allows a link to be made with minimal code additions.

Integration with Powerapps

To start off you’ll need to create a new resource in Azure, choosing either Form Recogniser or Cognitive Services. If you plan on implementing additional features then the Cognitive Services resource is your best choice. Once you’ve created the resource, make sure to navigate to the Keys and Endpoint section, as you’ll need these details for the authorisation later.

Next you’ll need to create some way of calling out to this resource. Calling out to the API can be done simply with the integration of Power Automate Flows. Not only able to make API calls, but the start conditions can be tied to a wide range of triggers, integrate directly with Dataverse connectors, and can create new invoice records upon completion. Create a new automated cloud flow, and set the trigger to “When a new email arrives (V3)”.

Customising Flows is straightforward once you get the hang of connectors. For our purposes we’ll need one for Form Recogniser, specifically the “Extract Data” action. This is where the details from Keys and Endpoint will be used. Fill out the connection details and then for the “Document/Image File Content” navigate the dynamic content menu for the incoming email item, and select “Attachment Content”. This will call out to the form recogniser for each attached item.

Create a new connector to Dataverse, and choose “Add a new row”. If you have a Dynamics Sales Licence, then the Invoice record is the best fit, otherwise choose where you want to store the output. The response from Form Recognizer will now be available in the dynamic menu, so after mapping the fields and testing the flow, it will be ready for use.

This automated invoice processing workflow can be integrated into your existing business processes and adjusted to suit your needs. For example, rather than using the data from the invoice to create a new record in your system, you may use it to populate an approval request to a manager for review.


  • While Cognitive Services is a powerful tool, accuracy is key to a usable response. The quality of the extracted fields are dependent on the quality of input data, so blurry or illegible form entries are more likely to be misinterpreted or outright ignored. If the API is struggling to extract certain fields, ensure you are providing it with clean and high quality form images.
  • While the Form Recogniser works great out of the box, there are a myriad of settings and parameters that can be adjusted within the Cognitive Services API for specific use cases. Experimenting with these settings can help you find the optimal configuration.
  • If you plan to scale up, it is important to design your application to handle large volumes of invoices. Optimizing API calls, caching data, and focusing on the form’s key fields are all ways of streamlining the process to run more efficiently.
  • If you’re working with sensitive financial data, be sure to implement authentication measures to your application secure. Always follow best practices for data encryption and storage.
  • If you’re expecting your forms in a set format or a few variations, the output quality can be improved if you train the model on your sample date via the Azure Portal. As few as five sample documents can result in marked improvements.

Simon Jackson

Written By: Simon Jackson

Over ten years of Microsoft Dynamics CRM experience blended with twenty years of business solutions consultancy, gives Simon the edge when it comes to delivering CRM solutions. Working with financial and fintech focused clients of all sizes, he is well sought after and that’s no surprise. He is experienced with databases and software integrations, security models, and multi-country models.

Similar Stories


Streamlining Information Retrieval: Introducing a Custom Chatbot with Advanced Document Search Introduction

In today’s information-driven world, the ability to quickly find relevant documents and insights is paramount for decision-making, operational efficiency, and organizational success. Poor documentation can hamper the daunting task of... Read More


A day in the life of…our business solutions consultant, Isaac

Next up in our day in the life of blog series is Isaac Hart. He’s been a part of the team for one and-a-half years (since August 2021) and really... Read More


A day in the life of…our lead software architect, Wesley

In the latest instalment in our day in the life blog series, we catch up with our lead software architect, Wesley Nell, who’s been with us for a year. Keep... Read More