Sales Order

A sales order is a seller's confirmed commitment to supply specified goods or services to a customer at agreed prices and dates.

Also called SO · Confirmed order · Customer order · Order acknowledgement

Why it exists

Because "we agreed to supply this" and "we supplied this" are different facts, and a business that cannot separate them cannot tell what it owes its customers.

What it means to the business

The sales order is the promise, and the order book is the sum of promises outstanding. It is what production plans against, what procurement buys against, and what a salesperson is really selling when they quote a delivery date. Its accuracy sets the ceiling on how trustworthy every downstream plan can be.

01Lifecycle — walk the states

Draft. Being prepared. No commitment on either side.

State 1 of 6

02Relationships — walk the chain

Sales Order placed by Customer.

Open Customer
03What goes wrong — and why
  • It is a commitment, not a transaction. Booking revenue at order time overstates the period and produces the classic reversal when the order is cancelled or amended.

Rules that must hold

  • A sales order commits inventory or capacity; confirming one you cannot fulfil is a promise, not a record.
  • Delivered quantity may never silently exceed ordered quantity — over-delivery is a decision someone makes, not a default.
  • A sales order creates no accounting entry. Revenue arrives with delivery and invoicing, not with the order.

What commonly goes wrong

Orders get confirmed against stock that is already promised to someone else. The system reports availability without netting off commitments, two orders claim the same units, and the failure surfaces at the loading bay rather than at the point of sale — where it would have cost nothing to catch.

Edge cases

  • Partial delivery against a single order line, where the balance may or may not still be wanted by the time it is available.
  • Price changing between order and delivery — whether the order price or the current price applies is a commercial policy, not a system default.
  • Drop-ship orders, where stock never enters your warehouse and the delivery event is somebody else's.
  • Service orders with no delivery event at all, where invoicing is the only confirmation the work happened.

How ERPNext models it

DocTypeNote
Sales Order`per_delivered` and `per_billed` are percentages, so partial flows are first-class rather than an exception.
Delivery NoteThe goods event. Moves stock and posts the COGS entry; creates no receivable.
Sales InvoiceThe money event. Creates the receivable. Can be raised with or without a delivery note.

Last reviewed 2026-08-14

Machine-readable version

We implement this for a living — that’s where the mistakes above come from. See the service or request a discovery briefing