Our use of cookies

We use cookies to tailor your experience, gather analytics, and provide you with live assitance. By clicking "Accept" or continuing to browse our site you agree to the use of cookies. For more details please read our Cookie Policy.

Use Power Apps AI Builder to extract data from invoices and store them in SharePoint

by Danish Ali Detho | O365 & Power Platform Solution Architect

Introduction

Organizations all over the world are trying to find new ways of automating their business processes in order to reduce redundancies, minimize manual data entry and human error. Artificial intelligence plays a significant role when it comes to improving the business process by taking automation to the next level where the process is not only automated but smart and self-sufficient as well.

Microsoft Power Automate provides businesses the capability to automate their business processes easily using their suite of low-code/no-code solutions in Power Platform and now they released a new tool in order to provide them the ability to add artificial intelligence in the form of AI Builder. In this article, we will take a look at AI Builder and the different types of models available for various purposes. We will then create a Form processing model that will extract the form data and then save it in a SharePoint List.

What is AI Builder

AI Builder is a new core component of Power Platform that allows us to use Artificial Intelligence to improve business performance by easily automating the business processes and predict outcomes. It is a low code/no-code solution which means pretty much like most of Power Platform components, you don’t need any coding skills to develop AI models using AI builder.

How AI Builder Works

Using AI is easy thanks to integration with Power Apps and Power Automate. Adding intelligence to your business is simple and can be done in the following steps:

  1. Choose an AI model type from different AI models
  2. Tailor the AI model based on your requirements
  3. Train your AI model
  4. Use AI model in your automated processes using Power platform tools like power automate

AI Builder Models

Category classification

This model belongs to language processing and helps with category classification so you can identify text entries with tags to be used for things like:

  • Sentiment analysis
  • Spam detection
  • Customer request routing

Entity extraction

This language processing model helps you transform unstructured data into structured data that’s machine-readable. You can then apply processing to retrieve information, extract facts, and answer questions.

Form processing

It is a model which helps you transform unstructured data into structured data making it machine-readable. We can then apply processing to retrieve information, extract facts, and answer questions.

Object detection

Object detection models can be very useful in automating processes like checking for faults in objects, streamline inventory management and categorizing objects based on their images.

Prediction

AI Builder prediction models allow you to predict the outcome of an event based on historical data.

Scenario: Extract data from an invoice document and save it in a SharePoint List

Extract the invoice information from the uploaded invoice document and store it in a SharePoint List.

AxioWorks SQList continuously export SharePoint lists and libraries as normalised SQL Server tables with SQList by AxioWorks, making SharePoint data available to reporting tools like Power BI, Crystal Reports, or SSRS.

Prerequisites

Document Library

This will be used for uploading the invoices.
Invoice List

This list will be used for storing the invoice data. It has the following columns

  • Invoice No: Single Line of text
  • Invoice Date : Date/Time
  • Invoice From: Single Line of text
  • Bill To: Single Line of text
  • Tax: Currency
  • Shipping Cost: Currency
  • Subtotal: Currency
  • Total: Currency

Step 1: Create a Form Processing AI Model

Sign in to https://make.powerapps.com and then expand AI Builder and select  Build. Then select form processing model and give your model a name.

Now, we need to specify the invoice information which you want to extract from the documents. Add the following fields which we created in the invoice list.

  • Invoice
  • From
  • Bill To
  • Date
  • Shipping
  • Tax
  • Subtotal
  • Total

The next step is to add documents, We will use the sample invoice templates provided by Microsoft which can be downloaded from the link below

https://docs.microsoft.com/en-us/ai-builder/form-processing-sample-data

Note: Documents must meet the specified requirements otherwise model will fail with the errors.

Next, draw/select the fields on the invoice to map the fields to data in invoice. Do the same for all the 5 invoice documents.

After that, you will be presented with the model summary and then click on the Train button. This will start the training of your model.

Once the model is trained, click on the Details button to goto the details page.

Here, you can quickly test the model with a test invoice to make sure the model is working fine. Click on quick then upload a test invoice. It should be able to identify all the fields in the invoice.

Once the testing is done, Publish the model.

Step 2: Use the Form Processing Model in Power Automate Flow

After publishing the AI model, the next step is to use this model and save the extracted data in the invoice list. This will be done via power automate flow.

Go to https://flow.microsoft.com and create a new automated flow that triggers when an invoice is uploaded in a SharePoint library.

Add a new action from AI Builder category “Process and save information from a form” and select the AI Builder model we built earlier.

After that, add a Create Item in SharePoint action and map all the values returned from AI Model to the new item columns.

Step 3: Test the solution

Go to the SharePoint site-> Document Library and upload a new invoice. this will trigger the flow and it will use the file content from the uploaded invoice to extract the information and store the data in the Invoice List.

And here is the invoice in our SharePoint list!

AxioWorks SQList continuously export SharePoint lists and libraries as normalised SQL Server tables with SQList by AxioWorks, making SharePoint data available to reporting tools like Power BI, Crystal Reports, or SSRS.

Conclusion

To summarize, AI builder is a great addition to the power platform which will allow businesses to improve the performance and efficiency of their business processes by adding Artificial intelligence in their power platform solutions. There are several different models available in AI Builder to help you in building solutions including automated form processing, object detection, prediction, categorization, and data extraction. In this article, we used the AI Builder form processing model to automate the extraction of invoice data from the invoice document and save it in a SharePoint list in three easy steps that don’t require any coding skills.

Latest articles

Build your Apps in MS Teams with MS Dataverse for Teams

27 Jun 2022

MS Teams has become one of the most widely used tools for team collaboration and communication in organizations using Microsoft echo-system for […]
[read article]

Dataverse: A one-stop-shop for your App data storage and management

24 May 2022

Data is at the centre of any business application development and is often the deciding factor for which tech. stack to be used for the development. […]
[read article]

AxioWorks Newsletter April 2022: Still working on the next release of SQList…

30 Apr 2022

Hello Reader, Welcome to another exciting issue of our monthly Newsletter! Each month, we try our best to bring to you content that is relevant and […]
[read article]

What’s coming in Power Platform Release wave one of 2022

21 Apr 2022

Due to the ever-rising popularity of the Power platform, Microsoft continues to focus on improving the usability and versatility of the Power […]
[read article]

AxioWorks Newsletter March 2022: Working on the next release of SQList

30 Mar 2022

Hello Reader, Welcome to another exciting issue of our monthly Newsletter! Each month, we try our best to bring to you content that is relevant and […]
[read article]

How to Efficiently Develop and Deploy Solutions in Power Platform

20 Mar 2022

With the Emergence of Low Code to No-Code development platforms, developers have been ever so busy developing solutions utilizing those platforms […]
[read article]

AxioWorks Newsletter February 2022: A good month

28 Feb 2022

Hello Reader, Welcome to another exciting issue of our monthly Newsletter! Each month, we try our best to bring to you content that is relevant and […]
[read article]

Five most awesome features in MS Lists

20 Feb 2022

Microsoft Lists previously known as SharePoint Lists have been widely used for maintaining and storing data in SharePoint and its usage has grown […]
[read article]

AxioWorks Newsletter January 2022: Hello 2022, good bye Covid (we hope)

31 Jan 2022

Hello Reader, Welcome to another exciting issue of our monthly Newsletter! Each month, we try our best to bring to you content that is relevant and […]
[read article]

What went down at MS Ignite 2021: Power Automate and Power Virtual Agent Edition

14 Jan 2022

When we talk about the biggest annual tech conferences of the year, Microsoft Ignite comes to mind where not only do we get a view of all their […]
[read article]

Get SharePoint and SQL news to your inbox

Stay up-to-date with industry news and trends, SQL and SharePoint innovations and all the latest from AxioWorks by subscribing to our monthly newsletter.

Subscribe to the AxioWorks newsletter

*