Skill Tracer
Skills › Knowledge Work Plugins › ap-processor › matching_and_exceptions.md

matching_and_exceptions.md

80 lines · small-business/skills/ap-processor/reference/matching_and_exceptions.md at 2574e29

Open on GitHub
1# Matching and Exceptions
2
3The three-way match, and how to word what it finds.
4
5---
6

Matching and Exceptions

The three-way match, and how to word what it finds.


Raw lines 1 to 6
7## What matches what
8
9| Document | Answers |
10|---|---|
11| Purchase order | What was ordered, at what price |
12| Receiving ticket or packing slip | What actually showed up |
13| Vendor bill | What is being charged |
15A clean three-way match means all three agree within tolerance. That bill needs no attention beyond a glance.
17Many small businesses do not issue POs. **Absence of a PO is not an exception** — it is the normal state for a lot of the bills that come through here. Note it and move on. Only treat a missing PO as a problem when the owner has said they require POs above a dollar threshold.
19---

What matches what

DocumentAnswers
Purchase orderWhat was ordered, at what price
Receiving ticket or packing slipWhat actually showed up
Vendor billWhat is being charged

A clean three-way match means all three agree within tolerance. That bill needs no attention beyond a glance.

Many small businesses do not issue POs. Absence of a PO is not an exception — it is the normal state for a lot of the bills that come through here. Note it and move on. Only treat a missing PO as a problem when the owner has said they require POs above a dollar threshold.


Raw lines 7 to 20
21## Tolerances
23Ask the owner once and remember the answer. Sensible defaults when they have no policy:
25- **Price variance:** flag above 2% or USD 25 per line, whichever is larger
26- **Quantity variance:** flag any overage at all
27- **Freight and fuel surcharges not on the PO:** flag above USD 50
28- **Total variance:** flag above 1% of PO value
30The asymmetry is deliberate. Being billed for more units than arrived is theft or error every time; a small price move is often just a market.
32---

Tolerances

Ask the owner once and remember the answer. Sensible defaults when they have no policy:

  • Price variance: flag above 2% or USD 25 per line, whichever is larger
  • Quantity variance: flag any overage at all
  • Freight and fuel surcharges not on the PO: flag above USD 50
  • Total variance: flag above 1% of PO value

The asymmetry is deliberate. Being billed for more units than arrived is theft or error every time; a small price move is often just a market.


Raw lines 21 to 33
34## Exception types and how to say them
36Each exception gets the vendor, the invoice number, both numbers, and the dollar impact. Vague exceptions get ignored.
38**Price above PO**
39> Ferguson inv 88231, line 2: billed USD 1,240 per unit, PO says USD 1,160. Two units. USD 160 over.
41**Billed more than received**
42> Johnstone inv 4471: billed 12 filters, receiving ticket shows 8. USD 84 over. Nothing was signed for the other 4.
44**Received but never billed**
45> Receiving ticket 2201 from Ferguson, 3/14, has no matching bill. Either it is coming or it was missed. Worth knowing before the month closes.
47**Billed, never received**
48> Grainger inv 55019 for USD 612. No receiving record. Ask whether this shipped.
50**Duplicate**
51> Ferguson inv 88231 appears twice — emailed 3/2 as a PDF and again on the March statement. Same invoice number. One of them is a copy.
53**Unreadable field**
54> Photo of a Watsco invoice, total unreadable from glare. Vendor and date are clear. I need the total before this can be staged.
56---

Exception types and how to say them

Each exception gets the vendor, the invoice number, both numbers, and the dollar impact. Vague exceptions get ignored.

Price above PO

Ferguson inv 88231, line 2: billed USD 1,240 per unit, PO says USD 1,160. Two units. USD 160 over.

Billed more than received

Johnstone inv 4471: billed 12 filters, receiving ticket shows 8. USD 84 over. Nothing was signed for the other 4.

Received but never billed

Receiving ticket 2201 from Ferguson, 3/14, has no matching bill. Either it is coming or it was missed. Worth knowing before the month closes.

Billed, never received

Grainger inv 55019 for USD 612. No receiving record. Ask whether this shipped.

Duplicate

Ferguson inv 88231 appears twice — emailed 3/2 as a PDF and again on the March statement. Same invoice number. One of them is a copy.

Unreadable field

Photo of a Watsco invoice, total unreadable from glare. Vendor and date are clear. I need the total before this can be staged.

Raw lines 34 to 57
58## Statements
60Vendor statements are for finding gaps, not for creating entries.
62Reconcile the statement's open items against what is in the ledger:
64- On the statement, not in the books → a bill the owner never received. Ask the vendor for a copy.
65- In the books, not on the statement → often already paid and applied. Confirm before chasing.
66- Amounts disagree → a credit memo or a partial payment is usually the reason.
68**Never create a bill from a statement line.** A statement line has no invoice detail, no line items, and no tax breakdown. Entering one produces an entry nobody can audit later.
70---

Statements

Vendor statements are for finding gaps, not for creating entries.

Reconcile the statement's open items against what is in the ledger:

  • On the statement, not in the books → a bill the owner never received. Ask the vendor for a copy.
  • In the books, not on the statement → often already paid and applied. Confirm before chasing.
  • Amounts disagree → a credit memo or a partial payment is usually the reason.

Never create a bill from a statement line. A statement line has no invoice detail, no line items, and no tax breakdown. Entering one produces an entry nobody can audit later.


Raw lines 58 to 71
72## Escalation
74Some exceptions are the owner's problem and some are the vendor's. Sort them before presenting:
76- **Owner decides:** coding questions, whether to accept a price increase, whether to short-pay
77- **Vendor must answer:** quantity shorts, missing invoices, charges for undelivered goods
78- **Bookkeeper handles:** prior-period corrections, anything already closed
80Draft the vendor-facing message for the second bucket, but it does not send without approval. See `payment_run.md` for how disputes interact with a scheduled payment.

Escalation

Some exceptions are the owner's problem and some are the vendor's. Sort them before presenting:

  • Owner decides: coding questions, whether to accept a price increase, whether to short-pay
  • Vendor must answer: quantity shorts, missing invoices, charges for undelivered goods
  • Bookkeeper handles: prior-period corrections, anything already closed

Draft the vendor-facing message for the second bucket, but it does not send without approval. See payment_run.md for how disputes interact with a scheduled payment.

Raw lines 72 to 80