Purchasing worked examples
Use a training tenant with invented data. These exercises record operational/financial documents, so do not practise posting on a live supplier account.
Prepare once
Use the prerequisite checklist: Bright Home Supplies, Main Warehouse, eligible Northstar Wholesale, Ceramic Mug and Cotton T-shirt products, and the required role permissions. Use Omar and Nadia as separate accounts for manual approval.
For the stock checkpoints, the application owner must verify the variant/location integration first. The current browser forms do not expose those selectors. If stock processing does not have the required references, record the limitation and stop that checkpoint; do not fabricate a successful inventory result.
Example IDs below are placeholders. Record the actual order, receipt, invoice and payment IDs returned by your tenant.
Exercise 1: two deliveries, two invoices, two payments
1. Omar creates the order
Select Create order:
| Header field | Value |
|---|---|
| PO number | PO-BHS-2026-017 (use an unused training number) |
| Supplier / Business unit / Warehouse | Northstar / Bright Home Supplies / Main Warehouse |
| Order date / Exchange rate date | 07/11/2026 / 07/11/2026 |
| Transaction currency / Base currency / Rate | GBP / GBP / 1 |
| Order type / Procurement method / Priority | Standard / Direct / Normal |
| Requested / Promised delivery | 10/11/2026 / 10/11/2026 |
| Payment term code | NET30 |
| All header charges / prepaid | 0 or unused |
| Line | Product | Ordered quantity | Unit price | Tax | Discount | Partial receipts |
|---|---|---|---|---|---|---|
| 1 | Ceramic Mug | 200 | 2.50 | 0 | 0 | Allowed |
| 2 | Cotton T-shirt | 50 | 6.00 | 0 | 0 | Allowed |
Select Save order. Check: Draft, total GBP 800, received/accepted/invoiced all zero. Note the order ID, say 101.
2. Omar submits for review
Select Submit, tick Route to approval queue, then Confirm. This deliberately exercises manual approval even though the routine 800 order could be auto-approved.
Check: Pending approval. Omar trying Approve is refused as the submitter.
3. Nadia approves; Omar records issue
Nadia opens the order, checks its revision and total, selects Approve, adds Routine November replenishment checked, then Confirm.
Check: Approved; Load approvals shows the decision.
Omar selects Issue, reference BHS-SENT-017, Confirm; then Acknowledge, reference NW-ACK-204, Confirm. Check: Acknowledged. Supplier communication itself happens outside these actions.
4. Ali records the first delivery
Select Receive goods:
| Header | Value |
|---|---|
| Receipt number | GR-BHS-2026-041 |
| Receipt date | 10/11/2026 |
| Supplier delivery reference | NW-DN-501 |
Select both lines. Enter:
| Line | Received | Accepted | Rejected | Damaged |
|---|---|---|---|---|
| Mugs | 100 | 100 | 0 | 0 |
| T-shirts | 20 | 20 | 0 | 0 |
Select Save draft receipt. Check: Draft; PO posted quantities have not changed. Review, then Post receipt.
Select View refreshed purchase order:
| Line | Received / Accepted | Remaining to receive | Remaining invoiceable |
|---|---|---|---|
| Mugs | 100 / 100 | 100 | 100 |
| T-shirts | 20 / 20 | 30 | 20 |
Inventory checkpoint, when integration is correctly supplied: stock rises by accepted quantities 100 and 20 at the actual referenced variant/location, with PURCHASE_RECEIPT movements. If absent, follow verification rather than posting again.
5. Farah creates and posts invoice 1
On the posted receipt, Create invoice:
| Field | Value |
|---|---|
| Invoice date | 10/11/2026 |
| Due date | Blank to derive from NET30 |
| Supplier invoice number | NW-INV-8801 |
Select Create draft invoice. Record its actual ID, say 201.
Check: Draft invoice, 100 × 2.50 + 20 × 6.00 = 370.00, paid 0, due 370, derived due date 10/12/2026. PO invoiceable balances for this delivery become zero already at draft creation. The PO still has undelivered commitment.
After reconciling against the training supplier bill, select Post invoice. Check: Posted. No extra receipt stock should be created by invoice posting.
6. Farah records and allocates payment 1
Select Post payment for this vendor, enter payment date 12/11/2026 and reference BANK-BHS-221, and check amount 370 and prefilled vendor/currencies. Select Post payment.
Check: payment Posted, Allocated 0, Available 370. Invoice remains due 370.
In Allocate to an invoice, check Purchase invoice ID 201, enter allocation date 12/11/2026 and amount 370. Select Load invoice, verify it, then Allocate payment.
Check: payment Allocated, Available 0; invoice Paid, due 0.
7. Ali receives the rest
Open the current order, then Receive goods. Use receipt GR-BHS-2026-042, date 13/11/2026, delivery reference NW-DN-502:
| Line | Received / Accepted | Rejected / Damaged |
|---|---|---|
| Mugs | 100 / 100 | 0 / 0 |
| T-shirts | 30 / 30 | 0 / 0 |
Save, review and post. Check: cumulative received/accepted 200 mugs and 50 T-shirts; remaining delivery quantities zero. Verify Inventory separately when correctly configured.
8. Farah invoices and pays the second delivery
Create invoice from the second posted receipt, date 13/11/2026, supplier invoice NW-INV-8802. Check: 100 × 2.50 + 30 × 6.00 = 430.00. The PO can now close as its receipt and invoicing commitments are complete, even while this second invoice is Draft.
Post the invoice, then post payment 430 and allocate it to this second invoice's actual ID.
Final reconciliation
| Check | Expected |
|---|---|
| Original PO | 200 mugs + 50 T-shirts, total 800 |
| Posted receipts combined | 200 accepted mugs + 50 accepted T-shirts |
| Posted invoice totals | 370 + 430 = 800 |
| Allocations | 370 to first invoice; 430 to second |
| Invoice due balances | Both 0 |
| PO status | Closed when operational completion is reached |
| Inventory | Correct accepted movements if reference/integration setup supports them; verify, do not assume |
Exercise 2: damage and no automatic replacement
Create a separate training order for 100 mugs at 2.50, zero tax/discount. Receive 100, accept 96, reject 4, damaged 3.
Check: receipt records all 100 received, but only 96 accepted. A generated invoice uses 96 × 2.50 = 240.00. The remaining delivery quantity is zero, not 4. There is no automatic replacement commitment. Agree how to obtain replacement goods with the buyer rather than entering a second 4-unit receipt against a completed line.
Exercise 3: partial payment
For a separate Posted invoice of 370, post payment A 200 and allocate 200. Check: Partially paid, due 170. Post payment B 170 and allocate 170. Check: Paid, due 0.
Do not try allocating payment A twice to the same invoice. That pair is unique, even when the first allocation did not clear the invoice.
Exercise 4: cancellation and closure
Create 200 mugs, receive/accept 120, with no further delivery expected. The remaining delivery is 80. Use line Cancel with quantity 80 and reason Supplier confirms remainder unavailable. Check the original ordered and received quantities remain in history, Cancelled becomes 80 and Remaining becomes 0.
Keep invoicing open until the accepted 120 units have their correct invoice. Do not use header cancellation as a way to reverse the delivered units. After creating the valid invoice, operational closure may occur; post and pay the invoice separately.
Exercise 5: approval thresholds and amendments
Use separate draft orders with Standard / Direct / Normal and an otherwise eligible supplier:
| Test | Expected |
|---|---|
| Total exactly 5,000, queue not selected | Auto-approval possible. |
| Total 5,000.01 | Pending approval, level 1. |
| Total 50,000 | Pending approval, level 2. |
| Total 800, procurement Quotation, valid quotation reference | Pending approval despite the low value. |
| Issued order amended from 800 to 6,000 with a reason | New revision, approval re-evaluated and issue/acknowledgement reset. |
| Notes-only amendment | New revision, commercial state retained under default policy. |
Try the refusals
| Try in training | Expected |
|---|---|
| Receipt dated before PO date | Refused. |
| Receive 201 against 200 with no tolerance | Refused. |
| Accepted 100 + rejected 4 against received 100 | Refused. |
| Damaged 5 with rejected 4 | Refused. |
| Create a second invoice for the same receipt | Refused. |
| Reuse the same active supplier invoice reference for that supplier | Duplicate check. |
| Allocate 400 to a 370 balance | Refused. |
| Close an order with open receiving/invoicing quantities | Refused until resolved or explicitly closed. |
| Cancel a posted receipt | No posted-cancellation action; server rejects it. |
For recovery, see Messages and FAQ.