All guides
XeroUpdated 7 min read

Does Xero do 3-way matching? How to use purchase orders with bills

What Xero does natively with purchase orders and bills, including partial billing by quantity, what it leaves to you, and how to use POs and bills together so invoices get checked.

By the Tenet team
Key takeaway

A PO is what you agreed to buy. A bill is what you’ve been asked to pay. Use both and you can finally check one against the other.

In short
  • Xero has purchase orders. Most people never open them.
  • A PO records what you agreed to buy, before the invoice. It doesn’t touch your accounts.
  • When the invoice arrives, create the bill from the approved PO, enter what was received, then check it against the invoice.
  • Skip POs for rent, utilities and subscriptions. Use repeating bills instead.
  • Xero links bills to POs, but it doesn’t record goods receipts or check the invoice against the PO for you.
In this guide
  1. Yes, Xero has purchase orders
  2. PO vs bill, in one look
  3. The life of a purchase in Xero
  4. Why bother? Four things you get back
  5. Do you need a PO for this?
  6. Five mistakes that make POs useless
  7. Does Xero do 3-way matching?
  8. Where Tenet fits

Quick test. Open Xero and find Purchase orders. If you had to go looking, you're in good company: plenty of businesses run Xero for years without ever opening them. Everything goes in as a bill, the moment the invoice lands.

That works until someone asks, “did we actually agree to pay this?” A bill can't answer that. It only records what the supplier says you owe. To check it, you need a record of what you agreed to buy, made before the invoice existed. That's a purchase order.

Yes, Xero has purchase orders

You'll find them in the purchases area of Xero, next to bills (in older menus, under Business). You can raise a PO for a supplier contact, add lines with quantities and prices, send it for approval, and email it to the supplier as a PDF with your branding.

The important part: a purchase order doesn't post to your accounts. No expense, no liability, no effect on your reports. Its status only tracks where the order is: Xero's purchase order API lists Draft, Submitted, Authorised and Billed, shown in Xero as Draft, Awaiting approval, Approved and Billed. It's a record of a commitment, not a transaction. That makes it harmless to use and easy to ignore, which is exactly why most people do.

PO vs bill, in one look

Purchase order
When
Before you buy
Who writes it
You write it
What it says
What we agreed to buy, at what price
Your accounts
Doesn’t touch your accounts
Draft → Awaiting approval → Approved → Billed
Bill
When
After the supplier invoices
Who writes it
The supplier’s invoice, entered by you
What it says
What the supplier says you owe
Your accounts
Posts once approved
Draft → Awaiting approval → Awaiting payment → Paid

The life of a purchase in Xero

Here's how the two fit together when you use both:

  1. 1
    Raise the PODraft

    Supplier, items, quantities, agreed prices. Save it as a draft or send it for approval.

  2. 2
    Approve and send itApproved

    Someone with the right permission approves it. Email it to the supplier straight from Xero.

  3. 3
    Goods or service arriveStill approved

    Xero’s accounting product has no goods receipt, so keep the delivery note, or note what actually arrived in your own records.

  4. 4
    The invoice landsBill: draft

    On the approved PO, choose Create bill and enter the quantity received on each line. Then make the bill match the supplier’s invoice exactly.

  5. 5
    Check, then approve the billAwaiting payment

    Compare the invoice with the PO and the delivery note. Different price or quantity? That’s the conversation to have now, not after paying.

  6. 6
    Pay and close outPO: billed

    Pay the bill. When everything has been billed, Xero marks the PO as billed. If the rest won’t arrive, close the PO short.

Xero Central covers step 4 in Create bills from purchase orders, including partial deliveries: bill the quantity that arrived, and close the PO short if the rest won't come. Bills created this way land in the Draft tab. You can also turn up to 25 approved POs into bills at once; Xero makes one draft bill per supplier.

Put the PO number in the bill's Reference field. It's the thread that ties the two together when someone searches months later.

Why bother? Four things you get back

  1. Approval before the spending, not after. Approving a bill is approving money that has already been committed. Approving a PO is deciding whether to commit it at all.
  2. A price in writing. When the invoice says $89 and the PO says $85.40, you have something to point to. Without a PO, it's your memory against their invoice.
  3. Something to match against. Every invoice check, from 2-way matching to price tolerances, needs a PO to compare with.
  4. Visibility of what's coming. Your approved POs are money you've promised but haven't been billed for yet. Handy when cash is tight at month-end.

Do you need a PO for this?

Not everything deserves one. A quick way to decide:

Raise a PO
  • Stock, parts and materials
  • One-off purchases over your approval limit
  • Anything delivered in quantities
  • New suppliers you haven't bought from before
  • Projects with a budget to stick to
Skip it
  • Rent, utilities and insurance
  • Software subscriptions on fixed plans
  • Small, low-risk recurring costs
  • Anything already covered by a signed contract
  • For the regular ones, use Xero's repeating bills

Five mistakes that make POs useless

  • Raising the PO after the invoice. A “retro PO” copied from the invoice just agrees with whatever the supplier billed. It checks nothing.
  • Never closing them. Approved POs that were billed but never marked as billed pile up, and your view of open commitments becomes fiction.
  • Creating the bill from the PO and stopping there. The bill should match the invoice. If you leave the PO's prices in place, you've hidden the very difference you were meant to spot.
  • Losing track of partial deliveries. Since June 2026 Xero lets you bill part of a PO by quantity, and the PO then shows a Billed column. It doesn't show the value left on the order or record what was delivered, so keep the delivery notes with the bills to avoid billing the same units twice. Our worked partial-delivery example shows how.
  • Skipping the reference. Without the PO number on the bill, nobody can connect the two later.

Does Xero do 3-way matching?

Not as a check. A 3-way match compares the supplier's invoice with the purchase order and with the record of what was delivered. Xero gives you two of those three documents and a link between them, but the comparison is left to you. As of October 2026:

What Xero does
  • Purchase orders with an approval step
  • A bill created from an approved PO, with the quantity received on each line
  • A Billed column on the PO once it has been billed
  • A review of possible duplicate bills, comparing contact, reference and amount
What it leaves to you
  • A goods receipt: no record of what was delivered and accepted
  • Comparing the invoice’s prices and quantities with the PO
  • A tolerance for small differences, and a flag for larger ones
  • Spotting a bill for more than was received

If you use Xero Inventory Plus, Xero's separate inventory product, you can receive a purchase order line by line, including part quantities, before billing it. That gives you the receiving record, but it is a stock tool rather than a check of the supplier's invoice.

Xero's duplicate bill review helps after the fact: it compares the contact, reference and amount of your bills and credit notes and shows a notification at the top of the bills tabs when it finds possible duplicates. More on its limits in how duplicate invoices slip through.

So someone still has to put the invoice, the PO and the delivery note side by side. For a handful of invoices a month that's a few minutes each. It's when volume grows, or deliveries arrive in parts, that it starts getting skipped.

Where Tenet fits

Tenet does that side-by-side check, 3-way matching, on the Match plan and above. You upload or forward the invoice with its PO and delivery note, and Tenet compares prices and quantities, flags anything outside your tolerances, and holds it for a person to approve. Tenet doesn't read purchase orders from Xero yet, so upload the PO you sent the supplier. Once approved, the bill is sent to Xero (as a draft, by default) with the PO number in the Reference field and the original invoice attached.

We checked the Xero features described here against Xero Central and Xero's own product updates on 8 October 2026. Xero's menus and features change over time and vary by plan and region. If something here doesn't match what you see, Xero Central has the current steps.

Sources

  1. Create bills from purchase orders, Xero Central
  2. Purchase Orders: show partial amounts billed (status Completed, update of 17 June 2026), Xero Product Ideas
  3. Accounting API: Purchase Orders (statuses), Xero Developer
  4. Accounting API: Invoices (bill statuses and when journals are created), Xero Developer
  5. Review duplicate bills or credit notes, Xero Central
  6. Receive a purchase order in Xero Inventory Plus, Xero Central
  7. Add or edit a repeating bill, Xero Central

Links checked 8 October 2026. Official guidance changes; the publisher's current page takes precedence over this article.

Check every invoice before you approve it

Tenet checks every invoice, matches it to POs and goods receipts on the Match plan, and holds exceptions for your team.