Skip to content

Insight Job software and accounts 5 min read

Xero purchase order to invoice: check whose order it is

By Renzo Demartini, Chartered Accountant ·

Drafted with AI, reviewed and spot-checked by me.

Customer A (sample) sends PO-842 for 10 filter kits. Rules calculate $800.00; the office checks the agreed price. A repeat email stops against the order register. The office approves draft INV-5101 after checking delivery. Capture drafts the invoice; a person issues it.
The build behind this topicA$3,900

Invoice Check

Invoices that do not reach Xero or MYOB, duplicates, and job numbers that do not match.

  • Simpro
  • ServiceM8
  • AroFlo
  • Xero
  • MYOB
See Simpro to Xero invoice checks
Fixed price · AUD · No GSTA person approves

A Xero purchase order to invoice job starts with one question: whose order is it? A customer’s purchase order records what they want to buy from you, and it is different from the purchase order you send a supplier.1

The short answer: first identify whose order you have. For an incoming customer PDF, design capture, duplicate checks and review before creating a draft sales invoice. This proposed design uses sample data.

Workflow · customer PO → draft sales invoiceDemonstration

Your accepted quote. Quote Q-3310 for Customer A (sample): 10 filter kits at $80.00, accepted in writing.

Then the customer’s PO arrives. PO-842 arrives as a PDF by email. Nobody has retyped it yet.

Quote Q-3310Accepted

Customer A (sample)

Agreed price per kit $80.00

  • Filter kits10 at $80.00$800.00
Quoted value
$800.00

Accepted by the customer.

Customer PO-842Received

Customer A (sample)

PDF by email

  • Filter kits10 at $80.00$800.00
Order value
$800.00

Order reference PO-842.

Capture reads the PDF. A capture tool turns the PDF into the same fields as the quote. It reads and decides nothing.

Rules compare the fields and the register. The same checks every time: customer, price, quantity and any repeat of PO-842.

Read by the capture tool Quote Q-3310

Read by the capture tool PO-842

Customer

Quote Q-3310: Customer A

PO-842: Customer A

Item

Quote Q-3310: Filter kits

PO-842: Filter kits

Quantity

Quote Q-3310: 10

PO-842: 10

Price per kit

Quote Q-3310: $80.00

PO-842: $80.00

Order value

Quote Q-3310: $800.00

PO-842: $800.00

  • Customer A matches an existing contact
  • Price and quantity agree with the quote
  • PO-842 is not in the order register

A person decides. The office confirms the order and the delivery. A bookkeeper then approves and issues the invoice.

Messages · PO-842

Draft invoice Draft createdHeld for the office

Create a draft invoice for PO-842?

Delivery is confirmed. A draft is only a draft.

Drafted for approval.Held, with the reason recorded. A draft sales invoice is created with the PO reference. A bookkeeper approves and issues it. Nothing goes to the customer from here.The order waits for the office to settle the difference. Nothing is created in Xero.

Xero · Draft invoice INV-5101Draft

Customer A (sample)

  • Filter kits10 at $80.00$800.00

Reference PO-842. A bookkeeper approves and issues it.

Order register · PO-842Held

Customer A (sample)

  • StatusHeld for the office

Nothing is created in Xero.

End of the day Each customer purchase order is read, checked against the accepted quote and the order register, then drafted as a sales invoice. The office approves. Nothing is issued automatically.

These are demonstrations. They use sample data and simulated Claude steps. Nothing connects to your accounts, sends a message or changes a record.

Start with the native options

Three starting records and the route each takes in Xero
Starting record Route
Your supplier PO in Xero Copy to a bill, or to an invoice for on-charging
Your accepted quote Convert to an invoice
A customer’s incoming PDF Capture, validate and review before drafting

Xero’s US product page says you can copy an approved order “into a bill to pay your supplier, or into an invoice to on-charge a customer”.2 That starts with an order already in Xero. Xero’s Australian invoicing page says: “Turn a quote into an invoice in a click”.3 Neither page says Xero reads an incoming customer PO automatically.

Choose capture for the document

Docparser

Its Xero page says it can scan a PDF, extract the data and send it to Xero.

Parseur

Its Xero page covers invoices and expense emails, sent through Zapier.

Xero Documents, Hubdoc

Both describe capturing receipts, bills and supplier details.

Docparser’s Xero page says it can “scan a transaction from a PDF, extract the requested data, and send it to Xero”, and it names purchase orders.4 Parseur’s Xero page sends data through Zapier.5 Zapier needs a paid Xero account, Standard or Adviser permissions and a paid Zapier plan, because Xero is a premium app.6

Xero’s Documents update describes capturing “a receipt or bill”.7 Hubdoc says supplier names, amounts, invoice numbers and due dates are extracted.8 Those descriptions do not establish this customer-PO workflow, so test the actual document and the destination.

A worked example on sample data

Draft INV-5101 matches PO-842 at $800.00, with no difference

A$ ex GST · orange: the difference

Ten kits at $80.00 each. Tax treatment is outside this sample.

Illustrative figures, not client data.

Sample data, not a client’s. For PO-842, match Customer A (sample) to an existing contact, compare the customer’s price with your accepted quote and confirm delivery before releasing the invoice. Xero’s API example creates a sales invoice, type ACCREC, with a DRAFT status and a reference.9 Keep the customer’s PO reference distinct from your invoice number.

PO-842 and draft INV-5101, line by line
Order and draft invoice values for Customer A, with the difference
Customer A (sample), PO-842 Value
Filter kits ordered and delivered 10
Agreed price per kit $80.00
Order value $800.00
Draft INV-5101 value $800.00
Difference $0.00

Block duplicate orders and retries

Same PO, same content

Same customer, same PO number and same content: stop it as a duplicate.

Same PO, changed content

The customer changed the order. Hold it for a person to review the revision.

Partial delivery

Review the quantities already invoiced before drafting the rest.

New approved order

Reserve a register entry, create the draft and save the Xero ID.

I would keep an order register outside the capture step, and match the organisation, customer and PO number before creating anything. Xero documents an Idempotency-Key header that “allows you to safely retry requests without the risk of duplicate processing”.9 Use it for retries, alongside your register, and after a failed response check for the created invoice before retrying.

A checklist before you build

Match the order

The customer on the PO is matched to one Xero contact. The PO price is compared with your accepted quote.

Review the draft

A bookkeeper reviews the tax treatment on every draft. A changed PO waits for a person to review it.

Repeats and records

The same PO emailed twice creates one draft. The original PDF is kept beside it in Xero.

This is a working checklist, not a measured result. Test difficult scans, revised orders and repeated emails, and hold any mismatched contact, quantity or price. Budget capture, integration and support using the automation cost guide.

The full checklist, nine checks
  1. Existing contact matched. The customer on the PO is matched to one Xero contact, not a new one.
  2. Price agreed. The PO price is compared with your accepted quote before a draft exists.
  3. Delivery checked. The office confirms what was delivered before anything is invoiced.
  4. Tax reviewed. A bookkeeper reviews the tax treatment on every draft.
  5. Duplicate blocked. The same PO emailed twice creates one order record and one draft.
  6. Revision held. A changed PO waits for a person to review the revision.
  7. Partial delivery reconciled. Quantities already invoiced are checked before the rest is drafted.
  8. Source retained. The original PDF is kept beside the draft in Xero.
  9. Failed write recovered. Xero is searched for the invoice before any retry.

Where a person stays in charge

Rules check

Quantities, totals and the duplicate register, the same way for every order.

Claude drafts

An explanation of any exception, within the proposed design. It writes only.

You decide

The office approves the customer, price and delivery. A bookkeeper approves coding, tax and release.

I keep matching and totals in rules. Claude may draft an exception explanation within the proposed design, and your office approves the order interpretation and the delivery evidence; a bookkeeper approves the invoice release. The Xero connection guide covers the connection choices. The card above is the nearest fixed-price build; reading customer POs is quoted as a Custom build, from A$9,500 (AUD, no GST charged).10

Start with a free fit check by email at the foot of this page, to record the handovers and acceptance checks first. The Workflow Audit, A$990 (AUD, no GST charged), is the next step.10

Questions

Can Xero copy a purchase order to an invoice?

Yes, for on-charging from your own purchase order.2 That is different from reading a customer’s PDF order.

Can document capture read a customer’s PO?

Docparser says it can extract data from purchase orders in a PDF and send it to Xero.4 Review the extracted data before creating invoices.

Does a draft invoice prevent duplicates?

A draft is a review point, not a duplicate check. Keep order matching, a persistent register and controlled retries.

Sources

Not sure which to fix first?

Get a free fit check by email and I will say whether it is worth automating. No call needed. The next step is a A$990 workflow audit: the top 3 things worth automating, with a fixed quote for each.

Get a free fit check by email

If you would rather have it built

Each topic has a fixed-price build behind it. The audit tells you which one is worth doing for your business.

Need more than one workflow? For strategy, board work and larger custom builds, I work through renzodemartini.com.

More insights

Start with a free fit check by email

A free fit check by email first. The A$990 Workflow Audit is the next step, credited to your build.

Get a free fit check by email The next step after the fit check: the A$990 Workflow Audit

Get a free fit check by email

Send the form with your software, the workflow, your team size and your timing. I reply by email, usually with a question or two, and tell you whether it's a fit. No call needed. If it is, the next step is the A$990 Workflow Audit.

Sending saves your details in HubSpot so I can reply. No mailing list. No payment is taken. How your enquiry is handled.