Agent roster Finance
In the Finance department

Purchase Order Matching

A supplier invoice arrives. This agent pulls up the purchase order it was written against and the receiving record for what actually showed up, then reads all three line by line: right vendor, right quantity, right price, and whether the freight and surcharges belong there. Lines that agree get cleared. Lines that don't get flagged with the three values it compared, and go to the same person who signs off today.

Hire this agent
$1,997one-time setup

Yours outright — no required subscription.

Every agent is built for your business — your systems, your approval chain, your way of working. We scope it on the call.

If this sounds too technical, don't worry. We take care of everything for you.

  • Private VPS deployment. This agent runs on a server that belongs to you, not a shared cloud tenant. Private VPN, firewall, and encryption are configured before it ever reads one of your invoices.
  • A technician agent alongside it. Every hire ships as a pair: the PO Matching Agent doing the three-way comparison, and a VPS-technician agent that lives on the same box and keeps it healthy — patched, backed up, monitored. You're not hiring one thing, you're hiring a small team of two.
  • Three-document intake. Wired into wherever the three documents actually live — POs in your accounting system or a shared sheet, receiving records or packing slip photos, and invoices arriving by email or portal — so nothing has to be forwarded to it by hand.
  • Tolerance rules built around your vendor mix. Freight, fuel surcharges, core charges, restocking fees, tax rounding. We set the thresholds against your real suppliers so the flag pile is short enough that somebody reads it.
  • A weekly match report. What it flagged and what it cleared, side by side. The cleared list is there on purpose: a false pass is the error that costs you money, so you get the list worth spot-checking, not just the exceptions.
  • 14 days of priority support after launch. That window is where the tolerances get tuned against the invoices your suppliers actually send.
  • You own everything — the server, the agent, the code it runs on.

Not sure it fits? Check fit in 90 seconds in the free assessment chat.

Who this is for

  • You're a 22-person electrical or mechanical contractor taking 60 to 80 supplier invoices a month from four supply houses, and one office manager compares every one against a PO and a packing slip photo texted in from a jobsite.
  • You keep POs in a spreadsheet and your receiving evidence is a signed packing slip in somebody's truck, so the only person who knows what actually arrived is whoever was standing there when the truck pulled in.
  • You issue POs to print vendors, subcontractors, and freelancers, and the invoice that comes back quietly doesn't match the scope on the order — nobody catches it until the month is closed.
  • You already have a folder called PENDING. There are thirty invoices in it, some of them ninety days old, and you don't remember why any individual one is in there.

How it earns trust

The failure mode of AI in three-way matching isn't the flag it raises. It's the invoice it waves through — a false pass looks exactly like a clean match, a checkmark and a bill nobody questioned. This agent is built on the opposite bet: every clear is a row you can open and re-check by hand.

Every clear is a row, not a checkmark

Each match decision is stamped against all three sources: which PO and which line, which receiving record or slip image, which invoice line, the three values it compared, which tolerance rule applied, and whether that line passed or flagged. Three weeks later you can see how a number got there, not just what was decided.

The cleared list is the one to check

Pull ten invoices it waved through and re-match them by hand against the same PO, receiver, and invoice. The report shows what it cleared alongside what it flagged so that check is possible without asking anyone for it, and it takes an afternoon.

It reconciles against the statement

At month end, the flagged totals should line up with what the vendor statement says is outstanding. When they don't, you've found either a match the agent got wrong or a document it never received — and either way you've found it before the statement gets paid.

Because it never approves and never pays, every clear still passes through the person who signs off today, which means a bad match surfaces before money moves rather than after.

Pairs well with

These share a workflow with this role. Tick any to add them to your setup.

Questions owners ask
Half these invoices don't match the PO and we don't catch it until the statement comes. Does this catch them sooner?

That's the job. Each invoice gets matched when it arrives rather than at month end, against the PO and the receiving record for that delivery. Price gaps, quantity gaps, wrong vendor, and surcharge lines that weren't quoted get flagged while the discount window is still open and while the PM still remembers the delivery. It doesn't dispute anything for you — it puts the gap and the three values it compared in front of the person who decides.

The packing slips live in the truck. Will this still work?

Partly, and it will tell you which part. If receiving never gets recorded, there is no third leg — the agent drops to a two-way match and can tell you what was ordered versus what was billed, but not what actually arrived. It says so on the flag instead of pretending. It can't invent a document nobody captured. Most of the value of the third leg comes from getting slips photographed at delivery, and we talk through the cheapest way to do that on the call.

Does it approve anything, or pay anything?

No, on both, and there are two more hard stops. It never edits a PO or a receiving record to make a match come out clean — the gap is the entire product, so it will not adjust a quantity, a price, or a line description to close one. It never contacts your vendor: no disputes, no credit requests, no emails to your supply house rep. And it never decides a mismatch is close enough. It cannot widen its own tolerance, short-close a PO, or write off a variance. Those are your calls; it can only put them in front of you.

Our system says the PO is closed but we only got half of it. Can it handle partial deliveries?

It handles them, and this is the part most likely to need correcting early. One PO with four releases, three receiving records, and a PO marked received in full before it is — cumulative matching across releases can double-count a line or flag a perfectly legitimate partial. Same with line descriptions that drift between systems, where the PO and the invoice describe the same item in different words. It shows its work on every one of those so you can catch it, and the first weeks are spent correcting it.

I've got a folder called PENDING and I'm scared to open it. How fast does this get noisy?

Tolerances start noisy on purpose and get tightened down, because a flag pile nobody reads is worse than no flags. The first few weeks are calibration against your real vendor mix, not a clean switch-on, and the 14-day support window after launch exists for exactly that. Typically about seven days from kickoff to a working agent matching real invoices.

What's covered under the $1,997 setup, and what isn't?

One company, one system of record for POs and receiving, one approval chain. Multiple entities, or a second system of record with a genuinely different PO model, is a scoped conversation rather than a price adjustment. Setup is scoped on a free 15-minute call, and if your receiving evidence doesn't exist yet in any form, we'll say so there rather than after.

Hiring more than one? A department on tap — the subscription puts a build team behind every request, agent after agent.