ZuloOne
English
Sign in
Menu

📥 Auto-receipt on purchase order — business rule

Updated

Auto-receipt decides whether Place order is only a supplier commitment or both the commitment and the receipt. Use it when the client treats ordering and receiving as one physical action.

← Business processes

How the process works#

The setting lives on the singleton Purchasing → Settings → Purchasing settings card, field Auto-receive on order (PurchasingSettings.AutoReceiveOnOrder). The default is off.

With the flag off, a PurchaseOrder follows the ordinary path:

Draft -- Place order --> Ordered -- Receive order --> Received

With the flag on, Place order first validates the receipt while the document is still Draft, then saves Ordered, then saves Received. The double save is deliberate because the transition map does not allow a direct Draft → Received jump.

Settings#

Value Behaviour
Empty or off Place order creates an Ordered order. No stock, tax, payable or put-away task is posted yet. The user must press Receive order later.
On Place order posts the same receipt as Receive order. Stock, payable, input tax and the put-away draft are created immediately.

The line field Receive now is independent of the flag. On Receive order it receives only that quantity and leaves the rest on a new Ordered order. Zero on all lines means full receipt.

Example with numbers#

A supplier order has 10 bolts at 3 each, VAT 20%, and the receiving cell is valid.

Setup User action Result
Auto-receipt off, Receive now empty Place order state Ordered; Stock 0, Payable 0
Auto-receipt off, Receive now = 4 Receive order original receipt posts 4 bolts, Payable 14.40, a new Ordered order remains for 6 bolts
Auto-receipt on, Receive now empty Place order state Received; Stock +10, Payable +36.00

The boundary: if Receive now is greater than the line quantity, the receipt is refused and the subtype does not change.

Boundaries and edge cases#

  • Receipt checks are the same in both paths: a receiving cell is required when warehouse discipline is enforced, and an active tax rate must exist on the receipt date.
  • With auto-receipt on, a failed receipt leaves the order in Draft, not half-successful in Ordered.
  • The setting affects future command execution only. Orders already saved as Ordered are not received by changing the flag.
  • A payment is still a separate document. Auto-receipt does not pay the supplier.

What is posted#

Only the Received target state posts the accounting effects. It writes Stock for the received quantity, Payable for gross debt, input tax through the tax contour, and the GL legs configured in accounting settings. When store discipline is on, a draft PutAwayTask is created after receipt.

What's not there yet#

  • The received purchase order recognises the payable. The supplier's own paper is entered afterwards as a supplier invoice, which books only the difference from what the receipt accrued.
  • The flag is global for Purchasing, not per supplier or per item group.
  • There is no scheduler that receives old Ordered orders because the flag was turned on later.

Same topic for other readers: User · Developer

Where next#

Was this page helpful?