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.
Written By: Simon Jackson
With over two decades of hands-on experience with Microsoft Dynamics and an impressive 25-year track record in coding and business solutions consultancy, Simon brings a unique blend of expertise to his clients. His deep-rooted knowledge in Microsoft Technolgies, coupled with his extensive coding experience, equips him with a competitive edge in delivering effective and efficient solutions. Simon's distinguished career has largely been dedicated to serving clients within the financial sector and the burgeoning fintech industry. His client base is diverse and expansive, ranging from startups to established corporations, all of which have benefited from his invaluable insights and solutions. This demand for his expertise is a testament to his adeptness and reliability in the field. Simon's expertise extends beyond Dynamics solutions. He possesses a profound understanding of databases and software integrations, AI, security architectures, and the deployment of multi-country models. His proficiency in these areas ensures he can navigate complex technical landscapes and deliver tailored solutions that align with clients' strategic goals. His proven ability to integrate complex systems while ensuring robust security models stands as a testament to his adaptability and technical prowess.