A construction company in Hetauda ordered 100 steel rods from a supplier. The truck arrived, the warehouse team unloaded, and the driver handed over a delivery challan showing 100 units. The supplier sent an invoice for 100 units two days later. The accountant paid it. Three weeks later, during a physical stock count, the warehouse manager found only 78 rods. The driver had delivered 78 and issued a challan for 100. Without a formal goods receipt process, the business had no way to verify the delivery at the time it happened. The 22 missing rods, priced at Rs 450 each, were simply gone - Rs 9,900 paid for goods never received.

This scenario is not unusual in Nepal. Trading companies, construction firms, and manufacturers all face the same vulnerability: if the invoice is paid based on what the supplier claims rather than what was verified as received, overpayment happens. Sometimes it is deliberate fraud. More often it is an honest discrepancy - the supplier shipped 78 and counted 100 in the rush of loading. Either way, the business pays for the discrepancy because it has no documented evidence of what actually arrived.

Three-way matching is the procurement control that prevents this. It compares three documents before any payment is released: the purchase order (what was ordered and at what price), the goods receipt note (what was actually received and when), and the supplier invoice (what the supplier is billing for). Payment is released only when all three agree within the configured tolerance. When they do not agree, the discrepancy is investigated and resolved before money leaves the business.

3 documents compared in three-way matching - purchase order, goods receipt note, and supplier invoice
18% of supplier invoices in businesses without structured receiving processes contain billing discrepancies above 2%
100% of invoices in a three-way matching system are verified against received goods before payment is authorised

What Three-Way Matching Is - The Logic Explained

Three-way matching compares quantities and prices across three source documents. The purchase order defines the agreement: this many units, at this price, delivered by this date. The goods receipt note records what actually arrived: this many units, received on this date, by this warehouse staff member. The supplier invoice states what is being billed: this many units, at this price, with this VAT amount.

For a match to be cleared, three conditions must be met: the invoice quantity must not exceed the GRN quantity (you cannot be billed for more than you received), the invoice price must match the PO price within the configured tolerance (typically 0-2% for price rounding differences), and the PO must be an open document - not previously cancelled or fully invoiced already. When all three conditions pass, the invoice is automatically cleared for the payment queue. When any condition fails, the invoice is flagged for review with a specific discrepancy message: quantity over GRN, price exceeds PO rate, PO already fully invoiced.

Two-way matching - the simpler version - compares only the invoice against the PO, without verifying what was received. Two-way matching catches price discrepancies but not quantity discrepancies. A supplier who delivers 80 of 100 units and invoices for 100 passes a two-way match because the PO was for 100. Only three-way matching - by requiring the GRN as the third document - catches the short delivery before payment.

lightbulb
Key Takeaway

The GRN is the document that makes three-way matching work. Without a formal goods receiving process that records actual quantities received, any matching system defaults to two-way - and two-way matching misses the most common form of procurement loss: paying for goods that were not fully delivered.

How Three-Way Matching Prevents Overbilling in Practice

The steel rod scenario from the introduction plays out differently in a business with three-way matching. The purchase order is created for 100 steel rods at Rs 450 each - Rs 45,000 total. When the delivery arrives, the warehouse team opens the GRN screen, selects the open PO, and enters the quantity received: 78. The system records 78 units received, updates inventory by 78, and posts the accounting entry for 78 units. The PO shows 22 units outstanding.

When the supplier's invoice arrives for 100 units, the accounts team links it to the PO and the GRN. The system immediately flags a discrepancy: invoice quantity 100, GRN quantity 78, overage 22 units. The invoice is placed on hold pending resolution. The accounts team contacts the supplier - who either issues a credit note for the 22 units, provides proof that 100 units were actually delivered (triggering a recount), or confirms a second delivery is coming for the outstanding 22. In all three cases, the resolution is documented in the system before any payment is released. The Rs 9,900 for the missing 22 rods is not paid until the business either receives the goods or receives a credit note.

location_on
Nepal Context

Quantity discrepancies between delivery challans and actual delivered goods are particularly common in Nepal's construction material supply chain, where goods are loaded and offloaded multiple times between the supplier's factory or warehouse and the construction site. Import businesses also face this risk at the customs clearing stage, where goods may be removed, damaged, or substituted during transit. Three-way matching creates a formal verification point at delivery - the construction site or warehouse staff count what arrives and record it in the GRN before the driver leaves. If the driver presents a challan for 100 and the count is 78, the GRN records 78 and the discrepancy is logged immediately rather than discovered weeks later during a stock count.

Price discrepancies are the second category of protection. If a PO was created at Rs 450 per unit and the supplier invoices at Rs 480 per unit - a 6.7% price increase applied informally - the matching system flags the price deviation on every line item affected. The accounts team cannot release payment until someone explicitly approves the price change. This approval is logged with user attribution and timestamp. In businesses without price matching, informal price increases accumulate undetected across dozens of invoices until someone notices the total spend is higher than expected - by which point months of overpayment may have occurred.

lightbulb
Key Takeaway

Three-way matching protects against two distinct types of supplier billing error: quantity discrepancies (paid for goods not received) and price discrepancies (paid more per unit than agreed). Both require different resolution steps, but both are caught by the same matching control before payment rather than discovered through reconciliation after payment.

Handling Partial Deliveries and Split Invoices

Most real-world procurement involves partial deliveries. A PO for 100 units often arrives as 60 units on week one and 40 on week two. Some suppliers invoice per delivery; others invoice monthly for all deliveries in the period. Three-way matching in a well-designed system handles both patterns without requiring workarounds.

For partial deliveries, each GRN records the quantities received for that specific delivery. The matching system tracks the cumulative GRN quantity against the PO quantity. When an invoice arrives for the first delivery of 60 units, it matches against the GRN for 60 units - which passes because 60 units were received and 60 are being billed. When the second delivery arrives and a second invoice is issued, it matches against the second GRN. The system tracks that the PO for 100 has now generated two GRNs totalling 100 and two invoices totalling 100 - and closes the PO as fully delivered and invoiced.

Tolerance configuration in three-way matching is a practical necessity. If a PO specifies 100 units at Rs 450 per unit and the invoice shows Rs 451.50 per unit due to currency rounding on an import transaction, a zero-tolerance system would flag a discrepancy on every line of every import invoice. Most businesses configure a 1-2% price tolerance that allows minor rounding differences to pass without manual review while still flagging genuine price changes. Quantity tolerances are typically set lower - 0% for discrete items (you cannot receive 0.5 of a steel rod) or a small percentage for bulk goods where weighing variation is inherent (cement, grain, liquid goods).

A more complex scenario is when a supplier issues one invoice for multiple deliveries made over a month. In this case, the accounts team links the invoice to multiple GRNs. The system sums the quantities across all linked GRNs and compares the total to the invoice quantity. If three GRNs recorded 35, 40, and 25 units and the invoice is for 100 units, the match passes. If the invoice is for 105, the 5-unit overage is flagged. The ability to link one invoice to multiple GRNs - rather than requiring a one-to-one relationship - is what makes three-way matching practical for businesses that batch-invoice their deliveries.

lightbulb
Key Takeaway

Three-way matching must support partial delivery patterns - multiple GRNs against one PO, and multiple GRNs against one invoice - to be usable in real procurement operations. A system that only supports one-to-one PO-GRN-invoice matching requires workarounds that negate the control benefit for most businesses that receive goods in partial shipments.

The Audit Trail Three-Way Matching Creates

Beyond preventing overpayment, three-way matching creates an audit trail that serves multiple purposes: financial controls, supplier dispute resolution, and regulatory compliance. Every matched invoice has a linked PO number, one or more linked GRN numbers, the name of the person who created each document, the name of the person who approved each document, and the date and time of each action. This chain of evidence means that any payment can be traced back to the original purchase decision, through the approval, through the delivery, through the invoice, and through the payment release - in a few clicks, not a filing search.

For IRD purposes, the audit trail demonstrates that payments recorded in the accounts payable system correspond to actual goods received - not fictional purchases. In an era where IRD audits of VAT input credit claims are increasingly common for trading and manufacturing businesses, the ability to produce a GRN linked to a VAT invoice linked to a PO linked to an approved purchase requisition is the clearest possible evidence that a claim is genuine. Businesses without this documentation trail are more vulnerable to input credit disallowance during IRD assessments.

Internally, the audit trail changes accountability. When an invoice is approved despite a price discrepancy, the approval is documented with the approving manager's name and the reason recorded. When a supplier disputes that a return was processed, the GRN reverse entry shows the date, quantity, and approver. When a supplier claims an invoice was not received, the system shows the date it was entered, who entered it, and its current status. These records exist as a natural output of the matching process - no extra documentation effort required.

lightbulb
Key Takeaway

The audit trail created by three-way matching has direct financial value beyond the discrepancies it catches. It reduces IRD assessment risk by documenting the link between VAT input claims and verified goods receipts. It resolves supplier disputes with evidence rather than recollection. And it creates internal accountability that deters informal procurement decisions that bypass the documented process.

closeThe Old Way
check_circleThe MISAC Way
Invoice paid based on supplier's claim

Accounts team receives a supplier invoice and pays it. No check against what was actually delivered. Discrepancies discovered during stock counts - weeks too late.

Invoice verified against GRN before payment

Invoice quantity and price checked against the goods receipt record and the purchase order automatically. Payment releases only when all three agree.

Short deliveries billed at full amount

Supplier delivers 78 of 100 units, invoices for 100. Business pays for 22 units it never received because no GRN records what actually arrived.

Invoice capped at received quantity

GRN records 78 units received. Invoice for 100 is flagged immediately. Payment released only for 78 until the remaining 22 arrive or a credit note is issued.

Informal price increases go undetected

Supplier applies a 6% price increase without notification. Accounts team pays the new price because there is no system check against the PO rate.

Price deviations flagged for approval

Any invoice price above the PO price by more than the configured tolerance is flagged and held. The increase must be explicitly approved and recorded before payment proceeds.

Duplicate invoices paid inadvertently

A supplier sends the same invoice twice with a different date. Without matching, both are entered and paid before the duplicate is noticed.

Duplicate invoices caught automatically

When a second invoice references the same PO and the PO is already fully matched, the system flags the potential duplicate before entry is completed.

No audit trail for IRD scrutiny

VAT input credit claims are backed by invoices alone. No documented link between the invoice, the goods received, and the approved purchase - vulnerable to IRD disallowance.

Complete chain: requisition to payment

Every payment links to an invoice, which links to a GRN, which links to a PO, which links to an approved requisition. IRD audit trail complete from first click to payment.

Frequently Asked Questions

When a match fails, the invoice is placed in a discrepancy queue visible to the accounts team and the purchase manager. The discrepancy shows the specific variance: invoice quantity 100, GRN quantity 78, over by 22. The purchase manager owns resolution: contact the supplier, request a credit note for the 22 units, or arrange a second delivery for the outstanding quantity. Once the resolution is confirmed - a credit note is received or a second GRN is recorded - the original invoice (or the revised invoice after the credit note is applied) is cleared for payment. Every resolution step is logged with user and timestamp.

Yes. Tolerance thresholds are configurable by percentage or absolute amount. A common configuration: price variance within 1% auto-approves (rounding differences on imported goods); price variance 1-5% requires purchase manager approval; price variance above 5% requires CFO or owner approval. Similarly, quantity variance within 2% of GRN quantity auto-approves (weighing tolerance for bulk goods); quantity variance above 2% goes to the discrepancy queue. These tolerance levels are set per purchase category or per supplier, not as a single global threshold, so import tolerances can differ from local purchase tolerances.

Service invoices follow a two-way match process rather than three-way, because there is no physical goods receipt to record. A service PO - for consulting, transport, maintenance, or professional fees - is matched against the service confirmation (the internal approval that the service was rendered as agreed) and the invoice. The service confirmation serves the same function as the GRN in the goods matching process: it documents that what was invoiced was actually delivered. Without a service confirmation step, service invoices are effectively self-certifying, which creates the same vulnerability as goods invoices without a GRN.

auto_awesomeHow MISAC Solves This

Automated Three-Way Matching with Full Accounting Integration

check_circleAccounting-First Architecture check_circleNepal Compliance Built In

MISAC's procurement module enforces three-way matching as the standard invoice processing path - not an optional control that can be bypassed. When an accounts team member creates a purchase invoice, the system requires them to link it to the relevant PO and GRN records. The match is calculated automatically: any quantity or price variance outside the configured tolerance blocks the invoice from the payment queue and places it in the discrepancy resolution workflow. The matching status is visible on the invoice record at all times - matched, partially matched, or discrepancy flagged.

The accounting posting happens in the right sequence. The GRN posts the goods receipt entry (debit inventory, credit GRN clearing) when goods arrive. The matched invoice reverses the GRN clearing and creates the payable (debit GRN clearing, credit accounts payable). The payment clears the payable (debit accounts payable, credit bank). Each step in the accounting sequence is triggered by the matching action, not by a separate posting decision. The books reflect the actual state of the purchase cycle at every point - received but not invoiced, invoiced but not paid, paid in full - without any manual accounting intervention.

For VAT-registered businesses, MISAC's IRD-format purchase register records every matched invoice with its VAT input amount, automatically included in the periodic VAT return preparation. The audit trail from the purchase requisition through the GRN, the three-way match, and the payment record satisfies the documentation standard that IRD assessors look for when reviewing input credit claims. MISAC Intelligence Pvt. Ltd. has helped businesses across Nepal implement procurement controls that have materially reduced overbilling losses and strengthened their position in IRD interactions.

Ready to See MISAC in Action?

If your business has ever paid a supplier invoice for goods that did not fully arrive, talk to us about how three-way matching can close that gap before the next invoice reaches accounts payable.

phone+977-9843657489
businessMISAC Intelligence Pvt. Ltd.