Quick answerSO (Sales Order) records what a customer has confirmed to buy. PO (Purchase Order) is what you order from your supplier to fulfil it. GR (Goods Receipt) records the stock you actually received. Then a DO (Delivery Order) sends goods to the customer and an Invoice bills them. A good system links all of these so data is entered once.
The flow in one line
Quotation → Sales Order (SO) → Purchase Order (PO) → Goods Receipt (GR) → Stock → Delivery Order (DO) → Invoice → Payment
Each document explained
| Document | Who it is for | What it does |
|---|---|---|
| Quotation | Customer | Offers a price before they confirm. |
| Sales Order (SO) | Internal / customer | Confirms what the customer will buy. |
| Purchase Order (PO) | Supplier | Orders the items you need from your supplier. |
| Goods Receipt (GR) | Warehouse | Records what actually arrived — quantity and condition. Stock increases here. |
| Delivery Order (DO) | Customer / driver | Sends goods out. Stock decreases here. |
| Invoice | Customer / accounts | Bills the customer for what was delivered. |
Why “SO to PO” and “PO to GR” matter
SO to PO means creating a purchase order directly from a sales order, so you only buy what customers have confirmed. PO to GR means receiving goods against a purchase order, so you can see what is still outstanding from suppliers and catch short deliveries.
What goes wrong without a system
- The same item and quantity is typed 4–5 times
- Partial deliveries are hard to track
- Stock in Excel does not match the warehouse
- Nobody knows which SO is still waiting for supplier goods
Senang Code builds this full flow as a custom system. See Inventory System Malaysia, Order Management System and systems for wholesale & trading.
