Purchase orders and approvals
The purchase order is the workspace's binding authorization to a supplier + the anchor for everything that follows: the receipt that creates inventory or expense, the invoice that creates the payable, the payment that settles the obligation. The full arc is requisition → approval → PO → receipt → invoice → payment, each step gated by controls. This page walks the arc — including the approval ladder, the 3-way match, and the common exceptions.
TL;DR — Requesters open Procurement → Request a purchase. Approvers see items in their Approvals inbox. Once approved, the PO transmits to the supplier; receipts come in via Inventory → Receipts; the supplier invoices via the Supplier portal or directly to AP; matched invoices route to Payment release.
Before you start
- Requesters need an active employee record with a default cost center. Procurement defaults can be customized per workspace.
- The supplier must be active (see Vendor onboarding). Drafts cannot be transacted against.
- For competitive-bid categories, a completed sourcing event may be required before raising a PO. See RFQ + sourcing events.
Raise a requisition (requester path)
Open Procurement → Request a purchase
The requisition form opens.
Pick the spend category
Office supplies / IT equipment / professional services / capital / etc. The category drives the GL coding + the approval ladder.
Add lines
Each line: item (from catalog or free-form) + quantity + expected unit price + requested vendor (optional — buyer may override). Catalog items pre-fill from preferred-supplier
- last-paid-price.
Justify the spend
Free-text business justification. For higher-tier approvers this is what they read first; specific beats generic.
Submit
Requisition status → Pending approval. The first approver in the ladder receives the notification.
The approval ladder
Approval is tiered by amount and may also gate on category.
| Field | What it does | Accepted values / default |
|---|---|---|
| Manager | First-line approval — requester's manager. | Always required when set; threshold is typically low (e.g. $0). |
| Cost-center owner | Owner of the budget being charged. | Required when the requester isn't the owner (cross-charging). |
| Department head | Higher dollar threshold (e.g. $10k+). | Workspace-configurable. |
| Finance | Higher threshold (e.g. $50k+) — confirms budget availability + accounting. | Workspace-configurable. |
| CFO / executive | Top threshold (e.g. $250k+) — strategic spend. | Workspace-configurable. Some workspaces require board approval above a higher limit. |
| Category gates | Additional approvers for specific categories. | IT (CIO), legal (GC), capital (controller), professional services (engaging executive). Stack on top of the dollar ladder. |
Approvers see the requisition in their Approvals inbox. Decisions are approve / reject (with note) / request-clarification (routes back to the requester). Approvers cannot approve their own spend.
PO creation + transmission
On final approval, the requisition becomes a PO
A PO number is assigned + the PO is staged in Drafts (for buyer review).
Buyer reviews the PO
Verify supplier + line items + terms + delivery instructions. The buyer can negotiate (the supplier may not match the requester's expected unit price) + record the agreed pricing.
Transmit to the supplier
Electronically (supplier portal, EDI, or email PDF). The transmission timestamp is the order date.
Supplier acknowledges
Suppliers with portal access confirm acceptance + expected delivery date. Non-portal suppliers acknowledge via return-email tracked at the PO level.
PO changes after transmission
Most workspaces allow some changes (delivery date, ship-to, quantity within tolerance) without re-approval; price increases above tolerance + scope expansions re-enter the approval ladder.
| Field | What it does | Accepted values / default |
|---|---|---|
| Within auto-tolerance | Small changes that don't require re-approval. | Typical: quantity ± 5%, price ± 5%, delivery date ± 14 days. |
| Above tolerance | Material changes requiring re-approval. | Routes back to the appropriate approver tier based on the new total value. |
| Cancellation | Closing a PO before any receipt. | Buyer can cancel; supplier acknowledgement closes the loop. |
| Closing with partial receipt | Receive what arrived; close the rest unfilled. | Common at year-end for split shipments. |
3-way match
The 3-way match is the workspace's primary spend control. AP cannot pay an invoice unless the three legs reconcile:
| Field | What it does | Accepted values / default |
|---|---|---|
| PO ↔ Receipt | Did we receive what we ordered? | Quantity received vs. quantity ordered (within tolerance). |
| Receipt ↔ Invoice | Did the supplier bill us for what we received? | Quantity invoiced ≤ quantity received; price within PO line price + tolerance. |
| PO ↔ Invoice | Final cross-check. | All three legs must reconcile or the invoice routes to AP for manual review. |
Matched invoices route to Payment release. Unmatched route to AP for resolution — the most common reasons are over-billing (quantity invoiced exceeds receipt), price variance (supplier billed at a different price than the PO), and missing receipt (invoice arrived before receipt posted).
Service POs (no inventory receipt)
For services, the receipt is a confirmation that the service was rendered, not a physical-goods receipt. Service POs default to either a milestone receipt (per deliverable) or a periodic receipt (per month / billing cycle).
Service is rendered
Engaging department's contact confirms completion.
Receipt is posted via "Confirm service"
On the PO, click Confirm service. The receipt records the rendered quantity (hours / deliverables / months).
Supplier invoices
AP matches against the service receipt the same way as inventory receipts.
Every field, explained
| Field | What it does | Accepted values / default |
|---|---|---|
| Requisition number | Internal tracking before PO assignment. | Auto-generated. |
| PO number | External — printed on the PO sent to the supplier. | Auto-generated; format workspace-configurable. |
| Supplier | Vendor master record. | Must be Active; one supplier per PO. |
| Line items | What's being purchased. | Item + quantity + unit + unit price + GL coding. |
| Total value | Lines × unit price + tax + freight. | Drives approval ladder + 3-way match tolerance. |
| Ship-to address | Where physical goods are delivered. | From workspace location list; can override per PO. |
| Payment terms | When the supplier expects payment. | From supplier default (net 30 / net 45 / etc.); buyer may negotiate. |
| Currency | PO currency. | Multi-currency suppliers prompt for selection. |
| Approval chain | Who needs to sign off. | Computed from amount + category + workspace policy. |
| Status | Draft / Pending approval / Approved / Transmitted / Receiving / Closed / Cancelled. | Drives the available actions at each stage. |
Common gotchas
- "PO is auto-rejected because requester is the approver." Self-approval is blocked. Re-route to a peer or skip to the next approver in the ladder.
- "Supplier ships before we've raised the PO." Common in emergency procurement. Raise a retroactive PO with documented justification; AP holds the invoice until match is possible. Recurring retroactive POs are a process problem — escalate.
- "Invoice exceeds PO by 3%." Within tolerance — auto-passes the match, posts payment. Exceeding tolerance routes to manual review.
- "Multi-currency PO + currency moved between PO + invoice." The 3-way match is on PO currency; AP records the conversion at invoice posting. Significant FX movement may trigger re-approval per policy.
- "Service PO never got 'confirmed' but supplier invoiced." Common — engaging departments forget the receipt step. Workspace policy decides: AP holds for manual confirmation, or auto-confirms periodic service POs after the period closes.
Troubleshooting
| Error code | What it means | Fix |
|---|---|---|
PO_APPROVER_SELF_APPROVAL | Approver is the same as the requester. | Route to a peer or escalate to the next tier. |
PO_VENDOR_NOT_ACTIVE | Supplier is draft / suspended / inactive. | Activate the vendor (or pick a different one). |
PO_BUDGET_INSUFFICIENT | Charged cost center is over budget. | Cost-center owner approves the over-budget spend or reroutes to another cost center. |
PO_TOLERANCE_EXCEEDED | Change exceeds auto-tolerance. | Re-route through the approval ladder for the new total. |
MATCH_PRICE_VARIANCE | Invoice unit price differs from PO. | Manual review — adjust PO or short-pay the invoice with documented reason. |
MATCH_QUANTITY_VARIANCE | Invoice quantity exceeds received. | Manual review — receive the additional quantity or short-pay. |
How this is recorded
Every requisition, approval action, PO change, receipt, invoice match, and payment release writes to the PO's ledger. The ledger is the audit anchor for spend authorization — the artifact that proves every dollar that left the workspace went through the right approvals. Retention follows the audit-log retention FINANCE floor (default 7 years).
Related