15.1 Purchase Orders, Receiving, Over-Receipt & Undo
Key Takeaways
- Purchase Quotes allow organizations to negotiate and stage vendor pricing without creating financial or inventory commitments, converting seamlessly into Purchase Orders via the Make Order action (Codeunit 96).
- The Purchase Order architecture separates document header metadata (vendor, dates, locations, currency) from line details supporting six distinct types: Comment, G/L Account, Item, Fixed Asset, Resource, and Charge (Item).
- The receiving workflow separates physical stock intake from financial invoicing; posting a receipt updates Item Ledger Entries and creates interim expected cost Value Entries in the General Ledger if enabled in Inventory Setup.
- Over-Receipt Codes (Page 8000) configure percentage tolerances that permit warehouse personnel to receive quantities exceeding the original purchase order line, optionally triggering dedicated approval workflows.
- The Undo Receipt action on Posted Purchase Receipts generates negative corrective Item Ledger Entries and restores the original Purchase Order line quantities, provided the received line has not been invoiced or consumed.
15.1 Purchase Orders, Receiving, Over-Receipt & Undo
Quick Summary: In Microsoft Dynamics 365 Business Central, procurement execution begins with Purchase Quotes and Purchase Orders (Table 38
Purchase Header, Table 39Purchase Line). When physical goods arrive at a facility, posting a Receipt updates physical inventory in Item Ledger Entries (Table 32) and accrues interim liabilities in Value Entries (Table 5802). To accommodate supplier packaging variances, Over-Receipt Codes (Page 8000) allow receiving quantities exceeding original purchase commitments within defined tolerance thresholds. If errors occur, the Undo Receipt function reverses posted receipts by generating negative corrective entries and reopening the purchase order, provided the received stock has not been consumed or invoiced.
Purchase Quote Lifecycle & Order Conversion
A Purchase Quote (Alt+Q -> type Purchase Quotes, Page 49 / Table 38 with Document Type = Quote) serves as a preliminary document used to request bids, solicit pricing, and negotiate terms with vendors. Quotes have zero impact on physical inventory availability, item reservations, or general ledger accounts.
Purchase Quote to Order Conversion Workflow:
[Vendor Request / RFQ]
│
▼
[Purchase Quote (Page 49)] ──► Set Prices, Quantities, Vendor Quote No., Expected Receipt Date
│
├──► Send by Email (PDF Vendor Quotation)
│
├──► Archive Quote (Manual action or automatic via Purchases & Payables Setup)
│
▼
"Make Order" Action (Codeunit 96 Purch.-Quote to Order)
│
▼
[Purchase Order (Page 50)] ──► Retains original line details, dimensions, and quote references
Converting Quotes to Purchase Orders
When terms are finalized, selecting the Make Order action executes Codeunit 96 (Purch.-Quote to Order):
- A new Purchase Order is created, transferring vendor details, line items, pricing, discounts, and dimension sets.
- In Purchases & Payables Setup (
Alt+Q-> typePurchases & Payables Setup, Page 460), the Archive Quotes field dictates retention: setting this toAlwaysorQuestionensures an immutable snapshot is preserved in the Purchase Quote Archives before the active quote is deleted.
Purchase Order Architecture: Headers & Lines
A Purchase Order (Alt+Q -> type Purchase Orders, Page 50 / Table 38 with Document Type = Order) is the operational document for managing inbound goods, services, and vendor commitments.
Document Header Structure
The purchase header establishes commercial terms across four primary FastTabs:
- General: Captures
Buy-from Vendor No.,Vendor Order No.,Posting Date(financial ledger date),Document Date(calculates payment due dates),Order Date, andPurchaser Code. - Invoice Details: Contains
Pay-to Vendor No.(if billing differs from purchasing vendor),Payment Terms Code,Payment Due Date,Currency Code, andTax Area / VAT Bus. Posting Group. - Shipping and Payment: Defines
Location Code(destination warehouse),Ship-to Address,Expected Receipt Date, andInbound Whse. Handling Time.
Purchase Line Types
Each purchase line defines a specific transaction category via the Type field:
| Line Type | Core Purpose & Use Case | Ledger Impact Upon Invoicing |
|---|---|---|
| Blank (Comment) | Adds descriptive notes, handling instructions, or headers without financial value. | No ledger entries generated. |
| G/L Account | Direct operating expense purchases (e.g., office utilities, cleaning services, facility rent). | Debits G/L Expense Account, credits Accounts Payable. |
| Item | Tangible merchandise, inventory raw materials, non-inventory supplies, or service items. | Creates Item Ledger Entries (if Inventory) and Value Entries. |
| Fixed Asset | Capital equipment acquisitions or maintenance charges. | Creates FA Ledger Entries via FA Posting Type (Acquisition Cost, Maintenance). |
| Charge (Item) | Landed cost additions (freight, customs, marine insurance) allocated to item receipts. | Injects landed costs into Value Entries of referenced items. |
Operational Line Quantity Fields
Precision tracking across the procurement lifecycle relies on dynamic quantity fields:
- Quantity: Total units ordered from the vendor.
- Qty. to Receive: Units expected in the upcoming physical delivery (defaults to
Outstanding Quantity). - Quantity Received: Historical units already posted via purchase receipts.
- Qty. to Invoice: Units ready for financial voucher matching (defaults to
Quantity Received - Quantity Invoiced). - Quantity Invoiced: Historical units already matched to posted vendor invoices.
- Outstanding Quantity: Remaining units yet to be received ().
Receiving Workflow & Financial Accruals
When vendor shipments arrive at the dock, warehouse personnel verify contents and record receipt. In standard (non-warehouse) locations, receiving occurs directly on the Purchase Order card.
Purchase Receiving Posting Flow:
[Purchase Order: Qty = 10, Qty. to Receive = 10]
│
▼ Post (F9) -> "Receive"
┌───────────────┴───────────────┐
▼ ▼
[Posted Purchase Receipt] [Inventory / G/L Ledger Entries]
- Table 120 Header - Table 32: Item Ledger Entry (+10 Qty, Open = Yes)
- Table 121 Lines - Table 5802: Value Entry (Expected Cost)
- Table 17: G/L Entry (if Expected Cost enabled):
Debit: Inventory (Interim)
Credit: Invt. Accrual (Interim)
Posting Options on Purchase Orders (F9)
- Receive: Records the physical receipt. Updates
Quantity Receivedand decreasesOutstanding Quantity. Creates a Posted Purchase Receipt (Table 120 / Table 121), an Item Ledger Entry (Type:Purchase, positive quantity), and an expected cost Value Entry. - Invoice: Processes financial vouchers for quantities where
Quantity Received > Quantity Invoiced. - Receive and Invoice: Executes physical receiving and financial voucher processing in a single atomic database transaction.
[!IMPORTANT] If Expected Cost Posting to G/L is activated in Inventory Setup, posting a receipt prior to invoice generates balanced interim accruals: Debit: Inventory (Interim) (Balance Sheet asset) and Credit: Invt. Accrual (Interim) (Balance Sheet interim liability). This ensures management accounts reflect unbilled received stock.
Over-Receipt Functionality & Governance
Vendors in bulk material, fastener, chemical, or agricultural industries frequently deliver quantities slightly above the purchase order commitment due to packaging, weight scales, or production yield.
Over-Receipt Codes Setup
Business Central provides the Over-Receipt Codes page (Alt+Q -> type Over-Receipt Codes, Page 8000 / Table 8000) to govern permissible overages.
Over-Receipt Hierarchy Resolution:
1. Purchase Line Override (Manually selected on line)
▲
│ (Falls back to)
2. Item Card (Purchasing FastTab -> Over-Receipt Code)
▲
│ (Falls back to)
3. Vendor Card (Receiving FastTab -> Over-Receipt Code)
▲
│ (Falls back to)
4. Global Default (Code with "Default" checkbox enabled)
Over-Receipt Parameters
- Over-Receipt Tolerance %: The maximum allowable percentage above the initial line quantity (e.g.,
10.0allows receiving up to 110 units on a 100-unit order). - Default: When flagged, this code automatically applies to all items and vendors that lack an explicit over-receipt assignment.
Receiving an Over-Receipt Quantity
- A purchase order line is established for
100units with a10%over-receipt tolerance. - The vendor delivers
108units. The receiving clerk enters108directly into Qty. to Receive. - Business Central validates that 108 is within the 110-unit ceiling ($100 \times 1.10$).
- The system automatically updates the line's Quantity field to
108, populates Over-Receipt Quantity with8, and references the applied Over-Receipt Code. - Posting the receipt creates an Item Ledger Entry for
108units. The Posted Purchase Receipt line captures the over-receipt quantity for vendor audit trails.
[!NOTE] Organizations can activate the Purchase Order Over-Receipt Approval Workflow. When an over-receipt is keyed on a line, the document status shifts to require manager sign-off before warehouse personnel can post the receipt.
The Undo Receipt Action & Reversal Mechanics
When goods are received into the incorrect location, assigned the wrong item variant, or posted with erroneous quantities, users cannot simply delete the posted receipt. Instead, Business Central provides the Undo Receipt action.
Undo Receipt Execution Pipeline:
[Posted Purchase Receipt (Page 136)]
│
▼ Select Line -> Functions -> "Undo Receipt"
┌────────┴────────┐
▼ ▼
[Posted Receipt Updates] [Ledger Reversals & Order Restoration]
- Inserts negative - Table 32: Negative Item Ledger Entry (Correction = Yes)
corrective line - Closes original inbound Item Ledger Entry
on receipt document - Table 5802: Reverses Expected Cost Value Entries
- Purchase Order Line: Decreases Quantity Received,
restores Qty. to Receive and Outstanding Quantity
Strict Prerequisites for Undo Receipt
The system enforces three rigid operational constraints before allowing an Undo Receipt:
- Item Line Type: The action functions exclusively on lines where
Type = Item. It cannot be executed on G/L Account or Fixed Asset lines. - Uninvoiced Quantity: The line must have
Quantity Invoiced = 0. Once any portion of the receipt line is invoiced, the receipt cannot be undone; an adjustment or Purchase Return Order is required instead. - Available & Unconsumed Stock: The specific Item Ledger Entry generated by the receipt must not have been consumed by a production order, assembly order, negative adjustment, transfer shipment, or applied outbound sales shipment. The exact quantity must remain open and available at the receipt location and bin.
Reversal Results in the System
When Undo Receipt is executed:
- A new corrective line is inserted into the existing Posted Purchase Receipt with a negative quantity and the description
Undo receipt of %1 items. - An Item Ledger Entry is posted with a negative quantity and
Correction = Yes, applied directly to the original receipt entry to close it. - Corresponding expected cost Value Entries are posted to negate the interim asset and liability balances in the General Ledger.
- On the original Purchase Order, the Quantity Received is reduced, and Qty. to Receive and Outstanding Quantity are restored to their pre-receipt values, allowing warehouse staff to re-receive the correct goods.
Purchase Document Posting Comparison
| Posting Option / Action | Physical Inventory Impact | General Ledger Impact | Document State Outcome |
|---|---|---|---|
| Receive (PO) | Increases inventory on hand (+Qty in Item Ledger Entry). | Posts Interim Asset and Interim Accrual (if Expected Cost enabled). | Order remains open; Qty. Received increases. Posted Purchase Receipt created. |
| Invoice (PO) | Zero quantity change; updates Invoiced Quantity. | Reverses Interim Accruals; debits Inventory/Expense, credits Accounts Payable. | If fully received and invoiced, order is deleted or archived. Posted Purchase Invoice created. |
| Receive & Invoice (PO) | Increases inventory and updates invoiced quantity simultaneously. | Directly debits Inventory/Expense and credits Accounts Payable; skips interim accrual. | Order completes and moves to Posted Receipt and Posted Invoice archives. |
| Undo Receipt | Decreases inventory on hand (-Qty corrective Item Ledger Entry). | Reverses interim expected cost debits and credits in G/L. | Posted Receipt displays negative line; original PO line quantities are reopened. |
Step-by-Step UI Execution Workflows
Workflow A: Configuring Over-Receipt and Receiving Excess Inventory
- Press
Alt+Q, typeOver-Receipt Codes, and select the related link (Page 8000). - Click New, enter Code
OVER10, Description10% Receiving Tolerance, and set Over-Receipt Tolerance % to10.0. - Navigate to an Item Card (
Alt+Q->Items-> selectITEM-1000). On the Purchasing FastTab, assignOVER10in the Over-Receipt Code field. - Create a new Purchase Order (
Alt+Q->Purchase Orders-> New) for vendor10000. - Add a line: Type =
Item, No. =ITEM-1000, Quantity =50. - In the Qty. to Receive field, enter
54(an 8% overage). Verify that Quantity updates to54, Over-Receipt Quantity displays4, and Over-Receipt Code showsOVER10. - Press
F9, select Receive, and click OK.
Workflow B: Executing Undo Receipt on Erroneous Delivery
- Press
Alt+Q, typePosted Purchase Receipts, and select the related link (Page 136). - Locate and open the receipt containing the erroneous item intake.
- Navigate to the Lines FastTab and highlight the line to reverse.
- Click Functions -> Undo Receipt in the line menu.
- Confirm the system prompt: "Do you want to undo the selected receipt line?" Click Yes.
- Verify that a negative corrective line appears on the receipt, the Item Ledger Entry is reversed, and the original Purchase Order's
Outstanding Quantityis restored.
Common Configuration Pitfalls & Exam Traps
- Pitfall 1: Attempting Undo Receipt After Invoicing. If an accounting clerk posts a purchase invoice against a receipt (even for a single unit), the Undo Receipt action will fail with the error: "You cannot undo receipt of line... because it has already been invoiced." The user must instead create and post a Purchase Return Order or Credit Memo.
- Pitfall 2: Consumed Inbound Stock Blocks Undo Receipt. If received raw materials have been picked and consumed by a released production order, or if finished goods have already shipped on a customer sales order, Business Central blocks Undo Receipt because the underlying Item Ledger Entry is no longer open.
- Pitfall 3: Over-Receipt Tolerance Exceeded. If warehouse personnel attempt to key an over-receipt quantity that exceeds the configured tolerance percentage, the system raises a strict validation error and prevents document posting until either the quantity is reduced or a manager increases the tolerance.
- Pitfall 4: Missing Vendor Invoice Number on PO Invoicing. Attempting to choose Receive and Invoice without entering a value in Vendor Invoice No. on the Purchase Order header will fail if Ext. Doc. No. Mandatory is enabled in Purchases & Payables Setup.
A purchasing department creates a purchase order for 200 units of industrial grease from a supplier. When the shipment arrives, the delivery note indicates 220 units were shipped. The purchasing agent attempts to change Qty. to Receive to 220, but the system displays an error stating that the quantity cannot be received. How can the functional consultant configure Business Central to permit receiving this 10% shipment overage?
A warehouse clerk posted a purchase receipt for 50 specialized ball bearings under the wrong location code. Two hours later, the clerk attempts to execute the 'Undo Receipt' action from the Posted Purchase Receipt lines, but the action fails with an error. Which condition would prevent the Undo Receipt function from executing successfully?
When warehouse staff post a purchase receipt for inventory items on a purchase order (without invoicing), which entries and document updates are generated when 'Expected Cost Posting to G/L' is enabled in Inventory Setup?