Artificial Intelligence for the Office: Taking on Invoice Processing (and More)
AI isn’t just for driving the cars of the future, trading stocks in nanoseconds, or pushing the bounds of scientific discovery. It’s also ready for the office.
Join the DZone community and get the full member experience.Join For Free
Artificial intelligence isn’t just for driving the cars of the future, trading stocks in nanoseconds, or pushing the bounds of scientific discovery. It’s also ready for the office.
But the office hasn’t realized that yet. About 80 to 90 percent of organizations still manually extract data from documents and emails.
It doesn’t have to be that way. Let’s look at how we can automate the end-to-end process of invoice processing with a minimum amount of human intervention. To do this, we’ll use offerings from Automation Anywhere — IQ Bot, the artificial intelligence solution, together with task bots created through our Robotic Process Automation (RPA) platform.
To try this out, download and install the Automation Anywhere Community Edition, the free edition for developers that gives you access to our full suite of products, including IQ Bot and RPA.
Let’s cover the toughest part first — reading invoices, extracting unstructured data, and converting it to a structured form. In IQ Bot Community Edition:
- Click on Get Started. This will drop you into “Create Learning Instance.” Start by giving your learning instance a name. How about “Rocky vs. the Invoice — A Twelve Round Battle?” Ok, maybe that’s a little over the top. Let’s go with a more basic name like “Invoice Training.”
- Select the Document Type — “Invoices” — from the drop-down menu, and the language (English). FYI: The licensed version of IQ Bot supports many more Document Types and Languages than what is shown.
- Click “Download Sample Documents” to use for this exercise. Unzip the folder and save the sample files to your local drive. Then click the browse button and upload Invoice documents.
- Check the fields to extract from the invoice — let’s start with Invoice Date, Invoice Number, and Invoice Total. IQ Bot can also capture data from tables — let’s choose Item Description, Item Total, and Quantity.
- Click on Create Learning Instance. Now the fun begins. IQ Bot is using its built-in AI to start grouping invoices based on their content, structure, and layout and extracting data. IQ Bot also performs an initial field mapping based on pre-training against the existing domain.
Now let’s review the extraction results by clicking on “See Extraction Results.” Make sure that the data fields have been accurately captured. After finishing the review of this document, click on the “>” to the right of the document name to advance to the next document in the group. It all looks good.
Click on “Back to Training” and “Save and Close.” This then marks the group you just reviewed as ready for production.
When the first document is ready, you can start the training. (Cue the theme song from the original “Rocky” — Gonna Fly Now.) Since we grouped similar documents, IQ Bot can train on one document, and then can process other docs the same way in the same group.
Select each field on the left and make sure that each of the data items have been correctly identified. In this case, all fields and table items were found correctly.
If IQ Bot wasn’t able to recognize one of the items, we could then direct the AI engine to the right field by clicking on it in the invoice. IQ Bot then learns from this input.
Training has gone well. Our AI engine is happily jumping up and down on the steps of the Philadelphia Art Museum, pumping its bot arms into the air next to the Rocky Balboa statue, ready to take on invoices sent from Apollo Creed, Inc.
Our trained IQ Bot can now be integrated into a series of Robotic Process Automation (RPA) task bots to automate invoice processing. We won’t go through the process of creating each of these task bots, but let’s see how this can work.
The first RPA task bot prepares the invoices — collecting email attachments into one folder. Another bot uploads them into IQ Bot. IQ Bot then extracts data from the invoices — field-by-field, including line items.
If some data fields don’t pass validation, these can be flagged for review by a human worker. The corrections made by the human is used as additional training data. Once the data passes validation, the data is saved to a CSV file.
Another RPA task bot takes the CSV file, logs into an ERP system using the appropriate credentials, and uploads the extracted data into the ERP system. The bot creates a new invoice record and fills out the required fields with the data that was extracted from the invoice. After running internal checks (such as PO matching), the payment can be processed.
Again, you can build the above automation using our RPA and IQ Bot capabilities by downloading and installing Automation Anywhere Community Edition.
And that’s it! The human worker has freed up their time to work on higher-value activities. And the company has increased productivity. Our AI engine stands triumphant in the office ring, the fight with invoices won by knockout, thanks to intelligent automation.
Opinions expressed by DZone contributors are their own.