A PO number is a unique alphanumeric identifier that the buyer assigns to a purchase order and passes to the supplier. The supplier then quotes that number on the invoice, on shipping and delivery documents, and in correspondence about the order, so that accounts payable can match the invoice back to what was ordered and what was received before releasing payment. When the number is missing from the invoice, or present but unreadable, the match cannot run and the invoice is held as an exception instead of being paid.
PO stands for purchase order, so "PO number" and "purchase order number" are the same thing. You will see both on the same document set, sometimes on the same page, and there is no difference in meaning.
The buyer issues the PO number, never the supplier. This is the point most often confused, and it is worth stating without qualification because so much else depends on it. If you are the supplier and someone asks you for a PO number, you are being asked to quote a number the buyer already created and gave to you. You cannot generate one yourself. If you do not have it, you have to go back to whoever placed the order and ask.
The number comes into existence at the moment the buyer raises and approves the purchase order, which is before anything has been delivered and well before an invoice exists. From that point it stays attached to the order for its whole life: it appears on the copy of the PO sent to the supplier, on the goods receipt when the delivery is booked in, on the supplier's invoice, and on the payment record. One number, one order, one thread running through four documents held in two different organizations.
That is really what a PO number is for. The buyer keeps a record of what it agreed to purchase; the supplier keeps a separate record of what it agreed to sell and later bills for. Neither can see inside the other's system. The PO number is the shared token that lets the two records be tied back to each other, which is why so much of AP's day is spent on invoices where that token failed to make the trip intact.
Can a supplier send an invoice without a PO number? Yes. Nothing stops an invoice from being issued and delivered without one, and it will be a perfectly valid invoice as a commercial document. What happens next depends entirely on the buyer's policy: some buyers will accept it and match it another way, some will route it into a manual approval path, and some will return it unpaid and unprocessed.
Where the PO Number Sits on an Invoice, and How It Differs from the Invoice Number
On most invoices the PO number is in the header block, in the cluster of reference fields alongside the invoice number, the invoice date, and the customer account number. It is often the third or fourth line in that block, sitting under a label like "PO Number", "Purchase Order", "Purchase Order No" or "PO Ref", with a value along the lines of PO-004512 or 4500192883.
That is the tidy case. Plenty of suppliers do something else with it. The number frequently appears on a line labeled "Your Reference", "Your Ref", "Customer Order Number" or simply "Order No", which are all the same field wearing a different label, because from the supplier's side the buyer's PO is genuinely just a reference the customer gave them. On invoices for delivered goods it sometimes migrates into the delivery or shipping details block rather than the billing header, printed next to the delivery address and the dispatch note number.
When the header carries nothing, the number is usually still on the document somewhere. Four places are worth checking before you conclude it is absent:
- The line-item table. The PO number can be inside an individual line's description text, often after wording like "as per your order" or "ref".
- A notes or comments field at the foot of the invoice, below the totals, where suppliers put free-text remarks.
- The remittance or payment section, mixed in with bank details and the payment reference the supplier wants quoted.
- The covering email, if the invoice arrived as an attachment. Some suppliers put the PO number in the subject line and never on the document at all.
PO number vs invoice number
These two sit inches apart on the same page and get confused constantly. They differ on four things that matter:
- Who issues it. The buyer issues the PO number. The supplier issues the invoice number from their own sequence.
- What it identifies. The PO number identifies the order, which is the commitment to buy. The invoice number identifies the bill for that order, which is the demand for payment.
- Which system it comes from. The PO number originates in the buyer's purchasing system or ERP. The invoice number originates in the supplier's accounting or invoicing software.
- What it is used for. The buyer uses the PO number for matching and authorization. The supplier uses the invoice number to track the receivable in their own sales ledger, and will usually ask for it as the payment reference.
The consequence of mixing them up is worse than it sounds, because the failure is quiet. A supplier who prints their own invoice number in the PO field has produced a document that looks complete. Every field is populated, the format is plausible, and a person doing a visual check will pass it. It fails only when the number is looked up against the buyer's open orders and returns nothing, at which point the invoice has already been received, logged, and possibly accrued. The same logic applies in reverse when a buyer's own requisition or contract number gets quoted in place of the PO. If you are working out which document is which before you get to the numbers on them, how a purchase order differs from an invoice covers the two documents side by side.
If you are the supplier deciding where to put it, the answer is the header, in a clearly labeled field of its own, not folded into a general reference line with other information. Reproduce the buyer's number character for character, including any prefix, separators and leading zeros. A PO number that has been tidied up on the way onto your template is a PO number that will not be found.
The PO Number Is the Join Key Your Match Depends On
Two-way and three-way matching are join operations. Three records sit in three different places: the purchase order in the buyer's purchasing system, the goods receipt raised by whoever booked in the delivery, and the invoice that arrived from the supplier as a PDF. Matching means putting those records next to each other, and the PO number is the key they join on. It is the only field all three are guaranteed to share.
Once the key resolves, everything AP actually cares about becomes possible. PO lines can be compared against invoice lines. Invoiced quantities can be checked against received quantities. Invoiced prices can be checked against the prices agreed when the order was raised. Tolerances can be applied, so a two-cent rounding difference does not stop a payment while a two-hundred-dollar price increase does. Approval routing can be resolved, because the PO carries the cost center, the requester, and the approval limit that determines who needs to sign off. Duplicate detection gets sharper too, since a second invoice against a fully invoiced PO is a much stronger signal than a similar-looking amount from the same vendor. The mechanics of the full three-record comparison are covered in three-way matching across the PO, goods receipt and invoice.
None of it runs until the key has been found and read correctly off the inbound document. Every one of those controls sits behind one primitive operation: locating a string of characters on a supplier's PDF and matching it to a record in a table.
Most explanations of the PO number stop at calling it a reference for tracking, which undersells it in a way that hides the problem. A reference is descriptive. If it is slightly wrong, or in the wrong place, you can still read the document and work out what it relates to. A key is not descriptive, it is functional: it either resolves to a record or it does not. A PO number that cannot be read is not a weak reference. It is a failed join.
This also explains why the failure is so abrupt. The key lookup has no partial outcome: it either returns exactly one purchase order, in which case the comparison can proceed and any discrepancies it finds are line-level discrepancies with a known counterparty, or it returns nothing, in which case there is no comparison at all and the invoice becomes an exception waiting for a human. A matched invoice with a quantity discrepancy is a specific, actionable query against a known order. An unmatched invoice is an open question about which order it even belongs to.
Six Ways the PO Number Arrives Wrong on a Supplier Invoice
Assume everything went right on both sides. The buyer raised a valid purchase order and sent it out. The supplier received it, and fully intended to quote the number back. The invoice still cannot be matched.
The reason is that what reaches AP is not a data record. It is a PDF rendered from the supplier's own invoicing template, with the supplier's field labels, the supplier's layout decisions, and the supplier's conventions about what belongs in the header and what belongs in a note at the bottom. Every supplier has a different one. The six modes below are what that variety looks like from the receiving end, and each has a different resolution.
The number is there, but not in a PO field
The most common case by a wide margin. The number is on the document, correct in every character, sitting on a line labeled "Reference", "Your Ref", "Customer Order" or "Order No". Any rule that looks for a PO label finds nothing and reports the invoice as having no PO number, which is simply false.
The resolution is to stop treating the labeled PO field as the only source and instead read a defined sequence of fields: the PO field first, then the known reference-field aliases, in a fixed order so the behavior is predictable and auditable. In Invoice Data Extraction that sequence is written as plain language rather than configured as a template rule. A prompt can say "find the PO Number in the header, and if it is not present, extract it from the Reference field", and the fallback then applies to every invoice in the batch. That is how teams pull the PO number off supplier invoices automatically across a supplier base where no two templates agree on what to call the field. PO numbers sit inside the standard invoice-level extraction scope, so the fallback refines a field you were already capturing rather than adding a separate exercise.
The number is buried in a line-item description
Some suppliers, particularly those invoicing against project or service work, never put the PO in the header at all. It appears inside the description text of a line, phrased as "as per order 4500192883" or "ref PO-4500192883", mixed in with the description of the work.
Resolving this means extracting at the line level rather than the header level and looking inside description strings for the number, which is a different operation from reading a header field. It is worth doing, because these invoices otherwise present as complete no-PO exceptions when the key was on the page the whole time.
The supplier quoted the requisition number instead of the PO
Purchase requisitions get raised internally before a PO exists, and their numbers circulate. A requester emails a supplier to get things moving, quotes the requisition number, and the supplier files that number as the customer's reference. Weeks later the invoice arrives quoting the requisition rather than the PO that was eventually issued.
The number here is real, correctly transcribed, and belongs to the buyer's own numbering. It just resolves to nothing in the PO table. The correction has to happen on the buyer's side: the requisition has to be traced to the PO that came out of it. The supplier cannot fix this, because they were never told the two numbers were different things, and asking them to work it out is a chase that will not go anywhere.
One invoice covers several purchase orders
The supplier consolidates a month of deliveries into one invoice. The header carries a single PO number, usually the first or largest, while individual lines belong to two, five or fifteen other orders. A header-level match either fails outright or, worse, succeeds against the order in the header and then reports enormous quantity and price discrepancies because it is comparing lines that belong to other orders entirely.
The fix is a line-level split, allocating each line to its own PO before any comparison runs, which is a different processing shape rather than a data-entry correction. The handling for this is covered in one supplier invoice covering several purchase orders.
A blanket-PO release number in place of the parent PO
Where the buyer uses blanket orders, framework agreements or call-off contracts, the supplier is typically given a release, call-off or schedule-line number for each individual drawdown rather than being told to quote the parent blanket PO. So that is what they print, and it is the number they were told to use.
Validation against the PO table returns nothing, because the release identifier is a child record with its own numbering. The release has to be mapped back to the parent order before the join can run, and where the release number embeds the parent PO with a suffix, that structure can be exploited directly.
The printed format has drifted from the issued format
The buyer issued PO-004512. The supplier's system prints PO 4512, or PO4512, or 004512, or 4512. The prefix changed, the separator was dropped, a space appeared, or the leading zeros were stripped by a spreadsheet somewhere upstream on the supplier's side.
Exact-match validation returns nothing. The invoice presents as though no PO were quoted at all, which is the most misleading state on this list, because the correct number is on the page in a correctly labeled field and a person reading the invoice would match it in a second. The failure is silent, and silence is what makes it expensive: nobody investigates a supplier whose invoices are quietly landing in the exception queue for a reason that looks like non-compliance. Recovering these near-misses is what fuzzy matching when the PO number format has drifted is for.
Which of these you can fix without the supplier
Worth separating, because it determines whether resolution takes minutes or days. Format drift, missing PO labels, line-item burial and blanket-release mapping are all readable from the document you already have. They are intake problems, and they resolve at intake without anyone sending an email.
The requisition-instead-of-PO case needs internal tracing, not a supplier chase. Multi-PO consolidation needs a processing change on your side, though it is also worth asking a repeat offender to invoice per order.
Only a genuinely absent number requires the supplier, and even then the query should be specific about what you need quoted and where, because "please provide a PO number" sent to a supplier who does not have one produces another round trip. Note also that a resolved key is not the end of it. Matching to the right order can still leave you with quantities and prices that do not agree, which is a separate problem covered in invoice line items that don't match the PO.
Why PO Number Format Is a Machine-Readability Problem, Not a House Style
The schemes in circulation are few and familiar. Plain sequential numbers counting up from a starting value. Prefixed sequences where the prefix encodes the legal entity, department or site, giving things like LON-04512 or MFG-2291. Date-encoded numbers that carry the year or year and month, such as PO-2026-0412. Project or cost-center codes embedded in the number so the spend is identifiable on sight. Mixed alphanumeric schemes combining two or three of those.
Numbering schemes usually get chosen on readability and internal legibility. That misses what the format is actually doing. A PO number format is a specification that two systems have to agree on, and the second system does not belong to you.
Consider what a predictable shape makes possible. A known prefix, a known length, and a known separator pattern mean a candidate string can be recognized as a PO number in the first place. A typical invoice header contains four to six numbers of similar length: the invoice number, the customer account number, a delivery note number, a quote reference, sometimes a contract number. Without a distinguishing shape, picking the PO number out of that cluster is guesswork, and a wrong pick produces a confident lookup against the wrong string.
A predictable shape also lets a number be checked before it is used. If every PO your organization issues matches a known pattern, a candidate that fails that pattern can be rejected on shape, at intake, in the same pass that read it. That is a materially cheaper place to catch the problem than after a failed match has already created an exception, and it tells you something more useful: not "this invoice did not match" but "this is not one of our PO numbers", which points at the requisition case or the invoice-number confusion rather than leaving you to work it out.
Drift is where the cost lands. When the supplier's printed rendering diverges from what you issued, exact matching fails, and near-match lookup is left with less to work with, because a comparison tuned to a stable shape performs worse against a string whose shape has changed. Dropping a prefix removes the most distinctive part of the number. Stripping leading zeros changes its length. Both are common, and neither announces itself.
Which points at the practical guidance:
- Keep the format stable. Every change means two shapes are in circulation for as long as older orders remain open, and validation has to accept both for that whole period. Suppliers who receive orders under both schemes will apply whichever one their template was set up for.
- Avoid characters that read ambiguously in scans. The letter O against zero, the letter I against the digit 1, and the letter S against 5 are the usual offenders, and they matter for invoices that arrive as photographs or faxed scans rather than native PDFs.
- Make PO numbers structurally distinct from your other document numbers. If your POs and your goods receipts are both six digits with no prefix, the two will be confused, on your side as well as the supplier's.
- Tell suppliers the format at onboarding, not just the number on each order. A supplier who knows the expected shape is a supplier who will notice when their template has mangled it. A supplier who has only ever seen individual numbers has no way to know that their system dropped a prefix.
The last one is the highest-return item on the list. Format conventions decided inside a purchasing system are enforced by every supplier's invoicing template, or not enforced at all.
What a Missing PO Number Actually Costs
No PO, no pay is a named policy, not a figure of speech. It is standard across UK public-sector bodies, common in local government and healthcare procurement, and increasingly adopted by private-sector AP functions that want to stop unauthorized spend at the point of order rather than at the point of payment. The commitment runs both ways: the buyer will not process an invoice that does not quote a valid PO number, and the supplier carries the obligation to obtain a PO before invoicing and to quote it on the document.
Buyers operating the policy say so plainly. Nottingham University Hospitals NHS Trust's no-PO-no-pay supplier guidance tells suppliers that invoices received without a valid PO number quoted will not be paid, and will be returned. Not queried, not held pending investigation. Returned, with the payment clock reset to whenever a compliant invoice arrives.
Now look at where the money goes when that happens, because it is not where people assume. Keying a PO number takes seconds. If the whole problem were data entry, a missing PO number would be a trivial cost and nobody would run a policy about it. The expense is in the path the invoice takes instead:
- It enters the exception queue and waits for someone to pick it up.
- A query goes to the supplier, and the clock stops while it sits in their inbox.
- The supplier responds, often with a question of their own, or with a credit note and a re-issued invoice, which is a new document with a new number.
- The corrected document arrives and goes through intake a second time, sometimes into the same queue again if the correction was incomplete.
- Payment happens whenever that sequence finishes.
Every step is human time on both sides, and the elapsed time is dominated by waiting rather than working. One exception is a minor irritation. The same path repeated across a month's exception volume is where the headcount goes.
The delay carries its own costs beyond the labor. Payment falls outside agreed terms, which is a problem whether or not the supplier enforces it, and worth understanding precisely, since what the payment terms on the invoice actually commit you to determines when the clock started. Early-payment discounts get missed, and those are pure margin. Month-end accruals get noisy, because an unmatched invoice sitting in a queue is a liability that has not been posted against the right period or the right cost center. And the relationship degrades in a way that is invisible until it is not, since a supplier who has been paid late three quarters running starts asking for payment on account, tightening terms, or in the worst case putting deliveries on stop.
One distinction matters before deciding what to do about any of this. An invoice where a valid purchase order exists but the number failed to arrive readably is a document problem, and it is resolvable at intake without involving anyone. An invoice for spend where no purchase order was ever raised is a different problem with a different resolution: it needs an approval path, a coding decision, and usually a conversation about why the spend bypassed procurement. Conflating the two makes the first look intractable and the second look like a clerical error, which is why processing invoices that arrive with no purchase order at all is worth treating as its own process rather than as a variant of exception handling.
For the document-side cases, which are the majority under a no-PO-no-pay policy, the cost is removed at intake or not at all. Reading the fallback reference fields, looking inside line-item descriptions, mapping release numbers back to their parent blanket orders, and validating the number's shape before the match runs are all things that happen in the same pass that reads the invoice. Every one of them prevents an exception rather than resolving one, and the difference between those two verbs is the difference between seconds and days.
Extract invoice data to Excel with natural language prompts
Upload your invoices, describe what you need in plain language, and download clean, structured spreadsheets. No templates, no complex configuration.
Related Articles
Explore adjacent guides and reference articles on this topic.
Invoice Line Items Don't Match PO: Failure Modes & Fixes
AP guide to line-level invoice/PO mismatches: merged lines, split lines, UOM drift, substitute SKUs, and bundled freight — with a resolution path for each.
One Vendor Invoice for Multiple Purchase Orders
Learn how AP teams match one supplier invoice across multiple purchase orders, receipts, and exceptions without approval delays or duplicate-payment risk.
Purchase Price Variance: Formula, Example, and Analysis
Learn the purchase price variance formula, sign conventions, and accounting meaning. Build an auditable PPV analysis from invoice, PO, and standard-cost data.