Appearance
Sales Order field guide
The Sales Order is the commercial promise between quotation and delivery. It is not an invoice, stock issue, or cash receipt. OSERP carries the order through fourteen controlled stages so that price, quantity, tax, inventory, credit, fulfilment, revenue, and customer communication remain traceable.
Header fields
Open Sales → Workspace → New Order.
| Field | Demo entry | Purpose and impact |
|---|---|---|
| Order number | SO-2026-004281 | Immutable document key |
| Company | Demo Retail Group LLC | Legal ledger scope |
| Branch | DXB-MAIN | Responsibility and tax location |
| Customer | Al Noor Hospital | Receivable, price, and credit |
| Order date | 2026-09-17 | Commercial event date |
| Requested date | 2026-09-22 | Promise and planning |
| Currency | AED | Price and settlement |
| Exchange rate | 1.0000 | Functional conversion |
| Price list | Hospital contract | Default rates |
| Payment term | Net 45 | Due date and exposure |
| Salesperson | Maya Rao | Commission and ownership |
| Warehouse | DXB-COLD | Reservation and picking |
| Ship-to | Al Noor Hospital, Dubai | Delivery and tax jurisdiction |
| Bill-to | Al Noor Hospital Finance | Invoice address |
| Channel | B2B portal | Reporting and workflow |
| Tax date | 2026-09-22 | Tax reporting |
| Status | Draft / approved | Stage gate |
The header also stores customer PO, contract, incoterm, carrier, route, service level, project, campaign, shipping instructions, notes, attachments, and external reference. External reference plus company scope should be unique to prevent duplicate imports.
Detail fields
Each line represents an item or service promise.
| Field | Example | Purpose and impact |
|---|---|---|
| Line number | 10 | Stable detail reference |
| Item | MED-INS-100 | Inventory or service identity |
| Description | Insulin Pen 5-pack | Printed line text |
| Ordered quantity | 120 | Customer request |
| UoM | PACK | Quantity interpretation |
| Base quantity | 120 | Stock ledger quantity |
| Warehouse/bin | DXB-COLD/A-03 | Allocation and picking |
| Unit price | AED 85.00 | Commercial value |
| Discount | 5% | Approval and margin |
| Tax code | STANDARD | Tax calculation |
| Requested date | 2026-09-22 | Fulfilment promise |
| Batch policy | FEFO, 180 days | Eligible stock |
| Cost centre | Hospital channel | Margin dimension |
| Project/WBS | HOSP-2026 | Contract reporting |
| Line status | Open / reserved | Downstream readiness |
The line should show list price, negotiated price, discount amount, tax base, net amount, allocated quantity, delivered quantity, invoiced quantity, and remaining quantity. A partial delivery leaves the balance open; it does not rewrite the original order.
Pricing and discount control
Pricing resolution should be visible: customer contract, price list, item, UoM, currency, effective date, quantity break, campaign, and manual override. If the hospital price is AED 85 and a 5% discount applies to 120 packs, net product value is AED 9,690 before tax. A discount beyond salesperson authority routes to approval with reason, margin impact, and expiry.
Do not copy a price from a previous order without checking currency, tax, UoM, and validity. Price-list versions preserve historic invoices. A manual price change records old value, new value, user, reason, and approver.
Tax, freight, and totals
Totals should expose merchandise, service, freight, discount, taxable base, tax by code, rounding, deposit, and grand total. Tax uses transaction date, item category, ship-to, company, customer tax status, and override permission. A tax-exempt customer requires certificate reference and expiry.
Freight lines may be order-level or detail-level according to policy. Rounding differences use the configured account and are not hidden in price. The order total must reconcile to line totals and tax summary before approval.
Credit and availability checks
Approval validates customer active status, credit limit, overdue balance, blocked status, duplicate PO, item active status, price validity, tax, available stock, minimum shelf life, warehouse, and requested date. A customer with AED 240,000 exposure and AED 250,000 limit should warn or hold a new AED 20,000 order.
Availability separates on-hand, reserved, quarantine, in-transit, and available-to-promise. A line requiring 180 days remaining cannot reserve an earlier-expiring batch. Overrides require role, reason, and audit event.
The fourteen stages
- Draft — capture header and lines; no reservation or accounting.
- Validated — required fields, customer, tax, price, and scope pass.
- Credit checked — exposure and risk decision recorded.
- Commercial approval — discount, margin, and contract exceptions approved.
- Confirmed — customer promise fixed; changes become amendments.
- Reserved — eligible stock held by warehouse, batch, or serial.
- Pick released — warehouse task and priority created.
- Picked — scan evidence confirms actual quantity and batch.
- Packed — carton, weight, seal, and carrier data recorded.
- Dispatched — inventory issue and delivery document posted.
- Delivered — proof of delivery or exception attached.
- Invoiced — invoice references delivered or approved billable lines.
- Settled — receipt allocated; disputes remain visible.
- Closed — all quantities, documents, credits, and approvals complete.
Backward movement requires a reason and permission. Cancelled or rejected stages retain who, when, and why. A stage is not complete because a button was clicked; required evidence and downstream impact must exist.
Delivery and invoice linkage
The delivery header records order, warehouse, ship-to, carrier, route, dispatch date, driver, tracking, temperature, and proof. Detail records actual quantity, batch/serial, bin, pack, and variance. Posting relieves stock and debits COGS according to valuation.
Invoice header records customer, order/delivery, tax date, due date, currency, branch, and billing contact. Detail carries delivered quantity, price, discount, tax, revenue account, and dimensions. A credit note references the original invoice and reason; it never edits delivered history.
API and audit mapping
Use order ID, external reference, company, customer, warehouse, currency, lines, and idempotency key. Store response stage, totals, reservation IDs, delivery IDs, invoice IDs, and correlation ID. Retrying a timed-out create uses the same key. A webhook such as sales.order.confirmed must be signature-verified and deduplicated by event ID.
Practice checklist
Create a hospital order with two items, a contract price, discount approval, tax, shelf-life rule, partial reservation, pick, delivery, invoice, partial receipt, credit note, and close. Explain every header and detail field, format/precision, owner, permission, status, stock impact, journal, tax result, API ID, and audit event. Then attempt to confirm a credit-held order and allocate quarantine stock; prove the controls block both.
Related: 14-stage Sales Field Guide, Inventory field guide, Business Partner field guide, Advanced GL Mapping, and API cookbook.