Should this bill be paid?
Before you pay, three documents should agree: what you ordered, what arrived, and what the supplier billed. This skill checks line by line that they agree. It tells you what to pay, what to hold, and what to return.
You give it the purchase order, the delivery record and the invoice, or let it read them from your books. It compares price, quantity and item on every line and applies your tolerance. It lists every difference with a reason and an owner. Then it recommends Pay, Hold or Reject. It never pays anything itself.
Ordered, arrived, billed: do they agree?
A purchase order says what you agreed to buy and at what price. A goods receipt says what actually arrived. The invoice says what the supplier wants paid. A different person writes each one at a different time, which is exactly why comparing them catches so much. The US government will not pay a supplier without a receiving report to back the invoice1. This skill applies the same discipline to a small business.
A PO number on the invoice is not a match
Suppliers print your purchase-order number on their invoices as a courtesy. In many offices that is enough: the number is there, someone approves the invoice, and someone pays it. But a printed number checks nothing until someone compares it with the order. The skill opens the order that the number identifies. Then it compares the two.
What the skill does
The skill opens the order and the delivery record. It compares every line.The common shortcut
"It has our PO number on it": approve and payMost differences the skill finds are honest ones: a price list changed, a delivery was short, an invoice arrived twice. It reports what it sees as amounts and counts, never as an accusation. People decide what it means.
It can only match the documents you actually have
The invoice is always in your books. The purchase order often is. In QuickBooks Online, purchase orders exist only on the Plus and Advanced plans3. QuickBooks closes a PO automatically once all its quantities are on bills, expenses or checks6. The delivery record usually isn't: receiving happens in a warehouse, on a clipboard, or nowhere. So the first thing the skill does is count the legs it has.
With all three, it runs a three-way match. With orders and invoices but no delivery records, it runs a two-way match and says so, in the report and in the file name. It does so because the missing leg is the one that proves the goods arrived. The five tests that depend on that leg did not run. Without that line, a test that never ran would look like one that passed.
It asks six questions before it looks at anything
- Use MosoFin as your data source, or upload the files yourself?MosoFin is the connection to your books (QuickBooks and the other platforms you link). With it, the skill reads the data from there. Without it, you upload the files and the checks are the same. You need no subscription.
- How much difference is acceptable on price, on quantity, on the total?The answer is your policy, not the skill's. If you do not give one, the skill expects an exact match and flags every penny.
- Who may approve an order, and up to what amount?A perfectly matching invoice on an unapproved order is still unauthorised spending.
- Do you buy services as well as goods? What replaces a delivery record?A signed "work completed" note serves as the receipt.
- Do you have any orders in a foreign currency? How do you convert them?A price difference that is really an exchange-rate move is the classic false alarm.
- Who resolves the exceptions?Every difference gets a named owner, not a pile.
Then it repeats your answers to you: "Matching September's invoices for Northbrook Trading against purchase orders and goods receipts, 2% price tolerance, exact on quantity. Go ahead?" It waits for your yes.
Connect once, or upload three kinds of document
Say yes, then fill the gaps
- It reads the invoices from your books. They are always there
- It reads purchase orders if your plan records them
- It checks whether delivery records exist in the system. If they do not, it asks you for them
- You still enter the tolerance and who may approve what
Bring the three documents
- Purchase order(s): PDF, spreadsheet or CSV
- Delivery record: goods receipt, proof of delivery, or a signed service confirmation
- Invoice(s): PDF, spreadsheet or CSV
- Helpful: your tolerance policy and approval limits, which you type in the chat
Pay, hold or reject, and why, line by line
- Never pays, holds or releases money. It recommends. A person acts.
- Never invents a tolerance. How much overbilling is acceptable is your decision.
- Never lets a test that couldn't run look like a pass. It lists what it couldn't check, and why.
- Never concludes fraud. It reports patterns with amounts and counts. People conclude.
- Never changes your books, and never reads anything before you say yes.
Six terms, in plain English
- Purchase order (PO)
- Your written order to a supplier: what, how many, at what price. In QuickBooks Online it is a Plus or Advanced feature3. It closes once all its quantities are billed6.
- Goods receipt
- The record of what arrived: how many, and in what condition. Government buyers call it a receiving report. They will not pay without one1.
- Tolerance
- The difference you're willing to accept without a question, for example 2% on price. The skill applies yours. Without one, it expects an exact match.
- Received, not billed
- Goods that arrived, but the invoice did not arrive. You already owe for them. Accounting standards treat an obligation you can't avoid, arising from something that already happened, as a liability4.
- Override
- Paying an invoice despite an exception. This is fine with a written reason and a named approver. A pile of unexplained overrides is the control disabled.
- Separation of duties
- The person who orders should not also receive, approve and pay. Splitting authority, custody and record-keeping is the basic control against fraud and error5. The skill flags one name across several steps.
Where the facts on this page come from
The sources are government procurement rules, the US internal-control standard, the fraud examiners' association, an accounting standard-setter and the software's own documentation. The list shows each source as published when MosoFin checked it on 21 October 2026. Follow the link for today's wording. What the skill does comes from the skill's own file.
- Federal Acquisition Regulation 32.905: Payment documentation and processA receiving report or other authorisation that shows quantities received and accepted must support invoice payments. A proper invoice carries the order number, description, quantity, unit price and extended price.
- ACFE: Occupational Fraud 2024: A Report to the NationsThe report analyzes 1,921 cases. Billing schemes appear in 22% of cases, with a $100,000 median loss, and are the most common asset-misappropriation scheme. Of all frauds, 32% occurred where internal controls were lacking.
- Intuit: Create and send purchase orders in QuickBooks OnlinePurchase orders are available on the Plus and Advanced plans. A new PO is Open. The article does not cover recording goods received.
- IFRS Foundation: Conceptual Framework for Financial Reporting, project summary (2018)A liability is a present obligation to transfer an economic resource as a result of past events. An obligation is a duty the entity has no practical ability to avoid.
- GAO: Standards for Internal Control in the Federal Government (Green Book), GAO-25-107721, ¶10.21–10.23Segregate authority, custody and accounting. Where that is not practical, design alternative controls.
- Intuit: Add purchase orders to expenses, bills, or checks in QuickBooks OnlineQuickBooks closes a purchase order automatically when all its quantities are added to bills, expenses or checks. Several transactions can draw on one purchase order.
No outside authority backs the fifteen exception types, their severities and the "exact match if no tolerance is given" default. They are the skill's own rules. They are sound accounts-payable practice, not a published standard.
This page explains three-way-match, from the MosoFin finance skills library, MosoFin/mosofin-finance-skills on GitHub. Read the skill on GitHub → Want the worked examples? Learn it step by step →