Live in productionsince April 2026Client work

PO numbers from Outlook emails, written onto the monday.com job every hour

We built this for a wireless and telecom engineering firm. At three minutes past every hour it opens the PO mailbox, picks the PO and tracking numbers out of the PDF or the email, and puts the PO number on the right completed job in monday.com. Plain rules, no AI. Each email it handles ends up in a Processed or a Failed folder.

AIAgenticBuilder.ca builds PO-email automations like this one for monday.com teams at field-service, engineering and construction firms across Canada, as a $499 standard automation.

At a glancen8n · hourly at :03
Built for
A wireless and telecom engineering firm. A large customer of theirs sends one PO email per completed field job.
Status
Live in production since April 2026; last changed September 2026
Reads
An Outlook automation mailbox (Microsoft 365). Each run takes at most 50 matching emails from the past 48 hours.
Writes
Only the PO number, into that job's PO column
AI
None. Plain parsing rules
Data
Business data: PO and tracking numbers, site codes. No personal information.
Tools
n8n (hosted), Outlook, pdftotext, JavaScript, the monday.com API

Before

What was the office doing before the automation?

The firm's crews finish field jobs for a large customer. For every finished job, that customer sends a purchase order by email, often with a PDF attached. Until the PO number sits on the job, the job can't be invoiced.

So somebody in the office worked the inbox. Find the PO email. Open the PDF. Read off the tracking number. Look the job up on the monday.com board. Type the PO number into its column. It's quick for a handful of emails. With a full inbox, a PO gets skipped and a finished job waits for its invoice, or two digits swap places and nobody notices until billing.

The emails always arrive in one fixed layout. That meant the answer wasn't AI. It was a plain rule that runs on a timer, doesn't get busy, and leaves a record anyone can check.

Each run

How does a PO get from an email onto the monday.com job?

Six steps, every hour, with no one watching.

  1. :03

    Check the PO mailbox

    Three minutes past the hour, it looks in the automation mailbox for this customer's PO emails. Anything older than 48 hours is left out, and one run handles 50 at most.

  2. step 2

    Read the email

    The subject line carries the PO number, as "Purchase Order" and then digits. A labelled line in the body carries the tracking number.

  3. step 3

    Prefer the PDF

    When there's an attachment, it takes the first PDF, extracts its text, and looks for the PO number in the file name (8 or more digits) or in that text. The tracking number comes out of the text. Numbers from a PDF take priority over the email's.

  4. step 4

    Find the job

    It searches the monday.com board for a job with that tracking number, and tries the customer's buyer ID if nothing comes back.

  5. step 5

    Check before writing

    Only a job whose activity status is Completed, with a blank PO column or one holding a placeholder, gets written to. A PO someone already entered stays exactly as it is.

  6. step 6

    Write, then file the email

    The PO number goes into the job's PO column. Then the email moves to Processed Automatically or to Failed, so the mailbox shows what became of every message.

Outcomes

What happens to each email, and when does a person step in?

What the run foundEmail filed inWhat a person does
PO number added to a completed jobProcessed AutomaticallyNothing
The job already had a PO, or wasn't completed yetProcessed AutomaticallyNothing
No PO number or no tracking number in the emailFailedReads it and types the PO in
The monday.com update didn't go throughFailedChecks the job and runs it again
Couldn't find a matching jobProcessed AutomaticallyShould look at it; nothing flags it yet (a known limit, below)

Tools

Outlook to monday.com integration: what is it built with?

The pieces

  • n8n, hosted: handles the hourly timer, reading and moving mail, updating the board and catching errors. The parsing itself is a few small JavaScript steps.
  • Outlook in Microsoft 365: delegated access to the automation mailbox only. Nobody's personal inbox is opened.
  • pdftotext: pulls plain text out of the PDF. The firm's PDFs already contain real text, so there's no OCR step.
  • monday.com API: reached through a credential held in n8n's encrypted credential store.

The safety net

  • Audit trail: two mailbox folders, Processed Automatically and Failed. Anyone with access to the mailbox can see where each email went.
  • Security: TLS on every connection. Credentials are stored encrypted and never appear in the workflow export or the docs.
  • Continuity: we keep exported copies of the workflow. If the account ever had to change, it could be rebuilt there and its credentials linked again.

History

How did it get to production?

In three versions. Each one fixed what the one before it couldn't do.

  • Version 1 read only the email body, filled one column, and was started by hand.
  • Version 2 ran once a day at 06:01 and paired emails with jobs still missing a PO. Its PDF path was never fully connected, and it was retired.
  • Version 3 is the one running now: hourly, PDF first, a status check before every write, and every email filed.

In September 2026 we reviewed the running workflow and wrote down its limits. A read-only look at the account in October 2026 showed it still switched on. There's no separate automated test suite. The two mailbox folders serve as its ongoing log of results.

Limits

What doesn't it do?

You should know these before you ask for something similar.

Known limits from the September 2026 review

  • An email that is already more than 48 hours old when it looks is skipped for good.
  • A second or third PDF on the same email is ignored.
  • When no job matches, the email still goes to Processed rather than Failed, so a person can easily miss it. We'd fix that first.
  • A stray step, wired to nothing, is still sitting in the workflow.

What stays with people

  • Deciding what to invoice, and when
  • Every message or invoice that goes out to the customer
  • Each email that lands in Failed
  • Correcting a PO number the customer got wrong

Its whole job is one blank field on a finished job. It doesn't overwrite, invoice or reply to anyone.

Where it stands today: in production since April 2026 at a wireless and telecom engineering firm, running hourly. Its last change was in September 2026.

Two more workflows read the same board, and neither is live. An on-site hours roll-up is scheduled but, as built, doesn't calculate or write anything yet. The unbilled change-request export is in development. So the true picture is a single live automation with two more still in progress.

For your firm

What would a PO automation look like for your monday.com board?

The same pattern fits any customer whose POs come by email in a steady layout.

What it would connect to

  • Email: Outlook (Microsoft 365) or Gmail (Google Workspace). A shared mailbox that only gets POs works best.
  • Board: your monday.com board
  • Automation platform: n8n, Make, Zapier or Power Automate, matching what you already have

What we'd ask you for

  • A sample of real PO emails, 10 to 20 per customer layout, PDFs attached
  • How a PO maps to a job: by tracking number, job number, site code or something else
  • The point at which a job should get its PO
  • Who handles the failed emails, and how they'll hear about them

A workflow like this is a $499 standard automation

Add $99 a month if you want us to host, watch and adjust it. Each new customer layout is its own set of rules, tested on your samples before it goes live. As a free prototype, it's your sample emails landing on a test board within 5 business days.

Get a free prototype

Questions

Questions about the PO automation

Does the PO automation use AI?

No. This customer's PO emails always follow one layout, so plain rules read them. Rules cost next to nothing to run, and anyone can check a result against the email it came from.

Our PO number is only in the attached PDF. Will it find it?

Yes, that is the case it was built for. With a PDF attached, it opens the first one, pulls out the text, and finds the PO number in either the file name or that text, and the tracking number in the text. It only falls back to the subject line and body when no PDF is attached.

Can it read POs from several customers?

This build knows one customer's layout. Each extra layout gets its own rules, and we test those on genuine sample emails before switching them on.

What if our POs come in as scans or in many different layouts?

Then fixed rules stop being enough, and that is where AI earns its place. It would read each document and propose the numbers, and anything it is unsure about would go to a person to confirm. We would test it on your real samples in the free prototype before quoting.

Your next step

Still typing PO numbers off PDFs?

Book a free 30-minute call and bring a few of them. We'll show you them landing on a test board in 5 business days, free, with no obligation.

Get a free prototype