Parse Invoices From Outlook Using AI

n8n Data Extraction Finance

Contributed by Sabrina Ramonov 🍄. From the community directory at agents.sabrina.dev, republished with permission and full credit.

This n8n template monitors an Outlook mailbox for invoices, automatically parses/extracts data from them, and then uploads the output to an Excel Workbook.

One of my top workflow requests, this template can save many hours of manual labor for you or your finance/accounts team.

How it works

A scheduled trigger is set to fetch recent Outlook messages to the Accounts Receivable mailbox. Each message is analyzed to determine whether or not it is from a supplier and is issuing/contains an invoice.

For each valid message, the attachments are downloaded and non-invoice documents are filtered out via AI Vision classification. Invoices are then processed through an AI vision model again to extract the details. The extracted data can then be used for reconciliation or otherwise. For this demonstration, we'll just append the row to an Excel sheet for now.

How to use

Ensure your Microsoft365 credential points to the correct mailbox. If a shared folder is used, toggle the "shared folder" option to "on" and for the principal ID, use the email address.

If you receive lots of other types of messages such as replies and forwards, you may want to implement additional checks to prevent processing invoices twice. The "remove duplicates" node can help with this.

Customizing this workflow

Note the assumption for this template is that all invoices will come as a PDF attachment. In real life, this is rarely the case! Adding in document conversion to cover all invoice formats.

Human feedback is also an important factor in AI workflows. Try tagging emails as a way to notify team members that the invoice was processed.

Tools used: OpenAI, Microsoft365, Excel

Download the workflow template (JSON)

Original tutorial

Want this running in your business? KOBA42 builds and operates automations like this one.