30-min call with RobBook a proof-of-concept call
Job 04 · Accounts payable

// Manufacturing · AP automation

Supplier invoices matched to the PO and the receipt, then queued for approval.

For job shops and make-to-order plants that buy metal, hardware and outside processing. One job, tested on copies of invoices your AP team already posted. Each AI draft matches the invoice to its PO and receipt, codes it, and spells out every difference before it reaches the approval queue.

Book a proof-of-concept call30 minutes with Rob
Past invoices
20 to 30
Payments made
None
Bank changes
Always held

// The one job

An invoice arrives. It gets matched, coded and queued.

A supplier emails a PDF invoice. Your AP clerk finds the PO, checks what was actually received, compares quantity and price, chases whatever doesn't agree, codes the rest and sends it for approval. An invoice from your plater or heat treater also has to land on the job it was for.

For the test, AI goes through copies of those invoices with the POs and receipts behind them. It drafts the match and the coding, line by line, and holds each invoice that doesn't agree, with the reason written out. Nothing gets approved or paid.

Supplier invoicePDF, emailed
Invoice no.
PO referenced
Ship date
Freight
Item, sizeQty, UOMPrice
Invented invoice, no supplier's data
Matched to
PO and receipt
Draft matchQueued for approval
Supplier
PO line
Receipt
Difference
PO lineReceivedGL or job
Invented draft, for illustration

// What breaks the match

Why plant invoices rarely match on the first pass

Three documents, three timings. A three-way match lines the invoice up with the PO and the receipt, and in a plant the three seldom arrive together. A bar order comes in two loads and gets billed once; an invoice shows up before the truck does. In Epicor, AP Invoice Entry pulls in receipt lines, which is where PO, receipt and invoice meet, and a charge the PO never had, such as a rush fee, goes on as a miscellaneous charge. NetSuite sets tolerance and difference limits for bill to PO and bill to receipt by vendor, item or subsidiary. The draft applies your own tolerances, whatever system set them.

Metal prices move between the PO and the invoice. Stainless mills set a monthly surcharge on top of their base price, tied to the price of nickel, so the stainless price on a PO cut weeks ago may not be the price on the invoice. Steel is often priced per hundredweight while the PO line counts bars or pieces, and the unit of measure has to be converted before quantity and price can be compared at all. A cutting charge, or freight billed prepaid and add (the supplier pays the carrier, then adds the freight to your invoice), can appear as a line the PO never carried.

Outside processing belongs on the job. When parts go out for plating, heat treat or coating, the PO line buys an operation, not stock. In Epicor each subcontract operation gets its own PO line tied to the job operation, and receiving that line is what puts the cost on the job. So the plater's invoice has to find the job and operation as well as the PO, and its pricing, per pound, per piece or per lot, has to agree with how the PO was written.

Coding the invoices with no PO. Utilities, repairs, tooling regrinds and a rented forklift often arrive without one. Those get the GL account and department your team used last time for that supplier, and anything new is flagged for a person. Invoice numbers already in your history, statements sent as if they were invoices, and credits for rejected parts are all caught before the queue.

Bank changes never go through. A supplier email asking you to pay a new bank account is held every time and never touches a vendor record. Fraud guidance from banks and federal agencies says to confirm those requests by calling a number you already have, never one in the email, and the draft says exactly that. Your reviewer, the person on your AP desk who knows these suppliers best, checks every match, every hold reason and every code against what your team posted at the time.

// What you send

What your AP desk sends

Copies only
No bank or payment access
01

20 to 30 posted invoices

Invoices your team already entered, with how each was coded and approved. Include an outside-process invoice, a stainless or alloy invoice and one that was held.

02

The POs and receipts behind them

The purchase order lines and receiving records each invoice was matched against, as exports or copies.

03

Your matching rules

Price and quantity tolerances, who approves what, and how freight and small differences are handled. Your AP lead's own words will do.

04

An NDA before anything is shared

Signed first. No login to your ERP, your bank or a supplier portal, before the test or during it.

05

Look-alikes, if invoices stay put

If supplier invoices can't leave the building, we build look-alike invoices, POs and receipts with you that keep the partials and surcharges.

// Before it starts

In writing before any invoice moves

The owner agrees each of these, on paper, before a single invoice is copied.

Before the proof of conceptOwner decides
Your reviewer
Named by the owner, usually the AP lead or controller
Success criteria
Agreed in writing: matches, coding and the holds that must happen
Tolerances
Your own price and quantity limits
Price
A range for the live job, given up front
Invoices
Chosen by your reviewer, none tied to defense or aerospace jobs

// How it's scored

Your posting beside the draft

Invoice by invoice
posted entry against the draft
Compared on the same invoicesWhat your team postedThe AI draft
Time from invoice received to ready for approvalFilled in from your invoicesFilled in from your invoices
Matched to the right PO line and receiptFilled in from your invoicesFilled in from your invoices
Price and quantity differences caught against your tolerancesFilled in from your invoicesFilled in from your invoices
Outside-process charges placed on the right job and operationFilled in from your invoicesFilled in from your invoices
Freight, surcharge and other added lines handled your wayFilled in from your invoicesFilled in from your invoices
GL coding on invoices that have no POFilled in from your invoicesFilled in from your invoices
Duplicates, statements and bank-change requests heldFilled in from your invoicesFilled in from your invoices
Empty on purpose. No cell holds a number until your own invoices have run through the test.Your reviewer marks each row, and that verdict decides it.

// After a yes

Roughly 30 days on incoming invoices

Once your reviewer says yes, new supplier invoices run through the same match for about 30 days.

Each one waits in your approval queue for a person to approve, correct or reject it, and payment runs stay exactly where they are today. The scoring table stays in use all month.

// Later, in order

Where AP leads next

Ranked possibilities
One job live before another starts
  1. 01

    Month-end numbers

    Received-not-invoiced lines and price variances carried into the owner's monthly package, for the controller.

    Next
  2. 02

    Material certs at receiving

    Mill test reports checked against the material spec on the PO and the heat number on the tag, for your receiving inspector.

    Then
  3. 03

    A plant you buy

    When another plant joins, its supplier list and open POs are mapped to your setup so the same match runs there.

    After that

// One hard limit

It never approves, pays or changes a supplier's bank details.

Every invoice ends in your approval queue, and a person on your team releases every payment. A request to change remittance details is held and handed to a person, never acted on. Invoices tied to defense or aerospace jobs stay out, as on every manufacturing page.

The AP job is priced by itself. You see a range before the test and a fixed price before anything is signed.

Two things set the range: invoices per month, and how many of them are outside processing or come with no PO.

// Questions

AP questions from plants

Do we need to be doing three-way match already?
No. If your team matches only to the PO today, the test can do the same or add the receipt check. Which one counts is written into the success criteria.
What happens to invoices that arrive before the goods?
They wait, rather than matching to the PO alone. The draft shows the PO line and notes that nothing has been received, and the match runs once the receipt exists.
Our stainless invoices never match the PO because of surcharges. Will they all be held?
Only if you want them held. Your AP lead tells us how surcharges are handled, for example accepted when the base price matches the PO, and the draft follows that rule with the surcharge shown on its own line.
Can it code invoices to jobs?
Yes, where the PO already ties the line to a job, as outside-process POs usually do, and from your posting history for the rest. A job it can't find goes on hold, never to a default account.
Does it matter which ERP we run?
Not for the test, which works from the copies and exports you send and returns drafts in a spreadsheet. Whether drafts later go into Epicor, NetSuite or another system is settled for the live month.
Rob Eason

Rob Eason, founder

// Book a proof of concept call

Test it on invoices your team already posted.

A 30-minute call with Rob. You'll be asked for your company and role, the job to test, and about how many supplier invoices arrive each month. Don't send invoices until the NDA is signed.

  • Co-owned a 60-employee financial services firm and sold his share to his partner.
  • Ran GOSO Technologies, a Boston solar company rated 5/5 across 24 Google reviews.
  • 5/5 across 83 reviews in HighLevel's Certified Admin Directory.
  • 4.3/5 from 6 Google reviews of Massmarket AI.
  • Every directory and Google review, critical ones included, is shown word for word at massmarket.ai/reviews.
  • Takes every proof-of-concept call himself.