top of page

Purchase Order Three-Way Matching in Business Central

Three-way matching in Business Central verifies a vendor invoice against the purchase order that authorised the spend and the posted receipt that recorded what was delivered. The three documents are the purchase order, the posted purchase receipt, and the purchase invoice.


Business Central implements matching through the document flow. A purchase invoice is created by selecting posted receipt lines, which link the invoice to the originating receipts and the PO behind them.


The Get Receipt Lines action is the standard mechanism for this. From the 2026 Wave 1 release (BC28), the Get Order Lines action adds flexibility for cases where the receipt is not yet posted.


The Purchase Orders list shows Quantity Received, Quantity Invoiced, and Amount Received Not Invoiced columns on every line. These let AP see which POs are received but not yet invoiced, which is where three-way matching happens.


How receipt-to-invoice matching works when you post a purchase invoice

The standard flow is to release the purchase order as a commitment, post the receipt when goods arrive, then post the purchase invoice with reference back to the receipt.


On a new purchase invoice, the Get Receipt Lines action opens the list of posted receipts for that vendor. Select the receipts you want to invoice. The selected receipt lines are copied onto the invoice with the quantities, unit costs, and dimensions from the receipt. Adjust the unit cost or other fields to match what the vendor's invoice says.


Add item charges if the invoice includes freight, duty, or other allocated costs. Post.

Posting the invoice links it to the PO and the receipt, updates Quantity Invoiced on the PO line, posts the AP entry, and posts the inventory cost adjustment from the receipt's expected cost to the invoice's actual cost.



The Payables Agent is the AI-powered layer on this. It identifies the corresponding PO and receipt lines for incoming invoices, even when the invoice has no clear PO reference, and presents a suggested match for human review. The agent does not auto-post. The matched invoice goes through the standard posting flow.


The Get Order Lines action (BC28) extends the standard mechanism for cases where matching to the order is more useful than matching to the receipt. It opens a list of order lines, received or not. You can match the invoice line to any number of PO lines. The Receipt on Invoice toggle on the order makes the posting create the required receipts automatically.


Setting up quantity tolerances and handling cost variances

Finance teams coming from Dynamics 365 Finance & Operations often look for a price tolerance percentage on the AP parameters page. Business Central does not have one. Quantity tolerance on invoice to receipt is not configurable. Cost variance is handled by the item's costing method rather than blocked by a setting.


Quantity tolerance works on the order-to-receipt match and is configured through Over-Receipt Codes. Create the code on the Over-Receipt Codes page with a tolerance percentage in the Over-Receipt Tolerance % field, then assign it to either the Item Card or the Vendor Card. Once assigned, receipts for that item or vendor can exceed the ordered quantity by up to the tolerance percentage.


The over-receipt quantity is recorded in the Over-Receipt Quantity field on the receipt line. The Approval Required checkbox on the Over-Receipt Codes page can trigger an approval workflow for over-receipts. Over-receipts do not apply to orders created from blanket purchase orders.


Cost variance is not configurable. What happens depends on the item's costing method.

For items with a Standard costing method, BC values the receipt at the standard cost. When the purchase invoice posts at a different unit cost, the difference posts to the Purchase Variance Account configured on the General Posting Setup. The item ledger entry retains the standard cost.


For items with FIFO, LIFO, or Average costing, the invoiced cost becomes the actual cost of the inventory layer. The expected cost from the receipt is reversed when the invoice posts, and the invoiced cost is posted in its place.


For costs that should apply to the receipt but are not part of the unit cost (freight, duty, customs, broker fees), use Item Charges. They are added as separate lines on the purchase invoice and assigned to specific receipt lines via Item Charge Assignment, which spreads the cost across the assigned items.


BC has no setting that blocks posting when the invoice price differs from the PO price. The variance is captured, not prevented. If you need a hard block before posting, a custom approval workflow on the purchase invoice to route it for review whenever a variance is present.


What happens when a purchase invoice does not match the receipt

BC handles a mismatched invoice through document-level corrections rather than blocking posting.


  • Invoice quantity less than the receipt: the invoice closes part of the receipt. The remaining quantity stays on the PO as Amount Received Not Invoiced and can be invoiced later.

  • Invoice quantity more than the receipt: with the standard Get Receipt Lines mechanism, you cannot invoice more than has been received. Either post an additional receipt first or use the over-receipt mechanism if the items arrived in excess of the ordered quantity.

  • Invoice unit cost different from PO unit cost: BC accepts the invoice and posts the variance according to the item's costing method. The invoice does not need to match the PO price.


For over-billed amounts already posted, the correction is a vendor credit memo applied to the original invoice, posted from the Purchase Credit Memos page.

If you are rolling out Business Central and need your AP team handling three-way matching with confidence from go-live, see our employee training plan template.

Sources

Subscribe to our newsletter to receive our articles in your inbox, invites to our free training webinars and special offers for our training courses.

Comments


Viscontis Limited

Canada Street

SE16 6BH, London, UK

Company Registered in England and Wales 

© 2026 by Viscontis Limited. All rights Reserved

  • LinkedIn
Microsoft Cloud Partner Logo

Legal Notice: D365 Training is a Trademark of Viscontis Limited, a Microsoft Training Services Partner; all rights reserved.

This website is neither owned nor sponsored by Microsoft©. Any reference to Microsoft, Dynamics365, Microsoft Teams, Microsoft Business Central, Azure or any other Microsoft software is purely for illustration, training and demo purposes.

 

You must perform due diligence before purchasing, implementing and setting up any technology mentioned on this website. By navigating this website, you acknowledge that we owe no responsibility if your business experiences losses, disruption or loss of data following the implementation of suggestions, guides or training material accessed from or mentioned on this website.

bottom of page