Skip to main content

Automate purchase order form submissions from Outlook Excel attachments with AI

Workflow preview

Workflow preview
100%
Automate purchase order form submissions from Outlook Excel attachments with AI preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

This n8n template imports purchase order submissions from Outlook and converts attached purchase order forms in XLSX format into structured output. Data entry jobs with user submitted XLSX forms ar...

Best for

  • Invoice Processing automation workflows
  • AI Summarization automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.stickynote, @n8n/n8n-nodes-langchain.informationextractor, n8n-nodes-base.if, n8n-nodes-base.set, n8n-nodes-base.extractfromfile, n8n-nodes-base.code, @n8n/n8n-nodes-langchain.lmchatopenai, n8n-nodes-base.microsoftoutlook

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Jimleuk.

Original n8n.io source

1.1 Workflow description

Title
Automate purchase order form submissions from Outlook Excel attachments with AI
Workflow name
Automate purchase order form submissions from Outlook Excel attachments with AI

This n8n template imports purchase order submissions from Outlook and converts attached purchase order forms in XLSX format into structured output.

Data entry jobs with user-submitted XLSX forms are time consuming, incredibly mundane but necessary tasks which in likelihood are inherited and critical to business operation.

While we could dream of system overhauls and modernisation, the fact is that change is hard. There is another way however - using n8n and AI! N8N offers an end-to-end solution to parse XLSX form attachments using LLM-powered OCR and send the extracted output to your ERP or otherwise.

How it works

  • An Outlook trigger is used to watch for incoming purchase order forms submitted via a shared inbox.
  • The email attachment for the submission is a form in xlsx format - like this one Purchase Order Example - which is imported into the workflow.
  • The 'Extract from File' node is used with the 'code' node to convert the xlsx file to markdown. This is so our LLM can understand it.
  • The Information Extractor node is used to read and extract the relevant purchase order details and line items from the form.
  • A simple validation step is used to check for common errors such as missing PO number or the amounts not matching up. A notification is automated to reply to the buyer if so.
  • Once validation passes, a confirmation is sent to the buyer and the purchase order structured output can be sent along to internal systems.

How to use

  • This template only works if you're expecting and receiving forms in XLSX format. These can be invoices, request forms as well as purchase order forms.
  • Update the Outlook nodes with your email or other emails as required.
  • What's next? I've omitted the last steps to send to an ERP or accounting system as this is dependent on your org.

Requirements

Customising the workflow

  • This template should work for other Excel files. Some will be more complicated than others so experiment with different parsers and extraction tools and strategies.
  • Customise the Information Extractor Schema to pull out the specific data you need. For example, capture any notes or comments given by the buyer.

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 2 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 3 - Sticky Note5

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 4 - Extract Purchase Order Details

Type / Role
@n8n/n8n-nodes-langchain.informationExtractor - informationExtractor
Config choices
Version 1

Block 5 - Is Excel Document?

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 6 - Sticky Note7

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 7 - Run Checks

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Block 8 - Is Valid Purchase Order?

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 9 - Extract from File

Type / Role
n8n-nodes-base.extractFromFile - extractFromFile
Config choices
Version 1

Block 10 - XLSX to Markdown Table

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 11 - OpenAI Chat Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatOpenAi - lmChatOpenAi
Config choices
Version 1.2

Block 12 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 13 - Reply Invalid Format

Type / Role
n8n-nodes-base.microsoftOutlook - microsoftOutlook
Config choices
Version 2

Block 14 - Outlook Trigger

Type / Role
n8n-nodes-base.microsoftOutlookTrigger - microsoftOutlookTrigger
Config choices
Version 1

Block 15 - Reply Rejection

Type / Role
n8n-nodes-base.microsoftOutlook - microsoftOutlook
Config choices
Version 2

Block 16 - Reply Accepted

Type / Role
n8n-nodes-base.microsoftOutlook - microsoftOutlook
Config choices
Version 2

Block 17 - Do Something with Purchase Order

Type / Role
n8n-nodes-base.noOp - noOp
Config choices
Version 1

Block 18 - Fix Excel Dates

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Block 19 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 20 - Is Submitting a Purchase Order?

Type / Role
@n8n/n8n-nodes-langchain.textClassifier - textClassifier
Config choices
Version 1

Block 21 - Do Nothing

Type / Role
n8n-nodes-base.noOp - noOp
Config choices
Version 1

Block 22 - OpenAI Chat Model1

Type / Role
@n8n/n8n-nodes-langchain.lmChatOpenAi - lmChatOpenAi
Config choices
Version 1.2

3. Summary Table

Workflow Automate purchase order form submissions from Outlook Excel attachments with AI
Complexity advanced
Nodes 22
Categories Invoice Processing, AI Summarization
Author Jimleuk
Published 14 Apr 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/3545/3545.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Automate purchase order form submissions from Outlook Excel attachments with AI do?

This n8n template imports purchase order submissions from Outlook and converts attached purchase order forms in XLSX format into structured output. Data entry jobs with user submitted XLSX forms ar...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Invoice Processing, AI Summarization use case.