A typical order runs for months. A contractor accepts a quote for a building's worth of steel, blocks or cement, then calls off deliveries as the site needs them. Prices change, quantities change, and goods leave from whichever yard has stock. Each of these steps needs a record that links back to the original quote.
This guide covers quotations, partial deliveries, multi-yard stock and unit conversion, then follows one project order from quote to final invoice. It ends with a checklist for evaluating software and an FAQ.
How should building materials quotations work?
In building materials, the quote is where margin is won or lost. Most traders run three kinds of price at once:
| Price type | Who gets it | How long it lasts | What to control |
|---|---|---|---|
| Standard price list | Walk-in and cash customers | Until the list changes | Who can edit the list, and when changes take effect |
| Customer price list | Regular contractors with an account | Usually reviewed quarterly or yearly | Which customers are linked to which list |
| Project quotation | A contractor for a named project | A validity date, often 7 to 30 days for steel and longer for blocks or aggregates | Approved discount, validity, quantities, and whether prices are fixed or linked to a market price |
Three controls stop most quotation problems.
Validity dates that the system enforces. Steel rebar and cement prices can move within weeks. A quote accepted after its validity date should not convert into an order at the old price without approval.
Discount limits by role. Salespeople can offer up to an agreed discount; anything below the floor price, or below cost plus a minimum margin, goes to a manager. The approval should be recorded on the quote.
The quote carries through to the order. When the contractor accepts, the quote should become the sales order with the same prices and quantities, and every delivery and invoice should refer back to it. If staff retype quotes into orders, prices drift.
For large projects, also record whether the price is fixed for the life of the order or reviewed when the supplier's price changes. Disputes over steel price rises during a project usually come down to what the quote said.
How do you handle partial deliveries and invoicing?
A contractor rarely takes a full order at once. A 120-tonne rebar order may go out in 15 truckloads over four months, sometimes from different yards. Each load needs its own delivery note, and the order needs to show what is delivered, invoiced and still outstanding.
The usual sequence is:
- Call-off: the site asks for a quantity against the open order, often by phone or WhatsApp. Record it against the order, not as a new sale.
- Delivery note: goods leave the yard with a delivery note that names the order, the items, the quantity and the vehicle. The site signs it on receipt.
- Invoice: raise a tax invoice for the delivered quantity, referring to the order and delivery note.
- Balance: the order's open quantity falls by the delivered amount. When it reaches zero, or the contractor confirms no more is needed, close the order.
Timing matters for VAT. In the UAE, the date of supply for goods is generally the earliest of delivery, payment or the tax invoice, and the FTA expects the tax invoice within 14 days of that date. In Saudi Arabia, the tax invoice is due by the 15th day of the month after the supply, and standard B2B invoices must be cleared through ZATCA's Fatoora platform under Phase 2. Invoicing deliveries in batches at month end is common, but check that the batch still meets these deadlines.
Two practices protect cash. First, get the site's signature or a photo of the signed delivery note into the system the same day; unsigned delivery notes are the most common reason contractors dispute invoices. Second, check the customer's credit limit against undelivered order value as well as unpaid invoices, so a large open order does not hide the real exposure.
How do you track stock across yards and units?
Building materials are bought in one unit and sold in another, and the stock sits in several places. The system needs to handle all of it without staff converting units on a calculator.
| Item | Bought in | Sold in | Conversion to record |
|---|---|---|---|
| Rebar, 16 mm | Tonnes | Bars of 12 m, or tonnes | 16 mm bar weighs about 1.58 kg per metre, so one 12 m bar is about 18.96 kg and one tonne is about 52.7 bars |
| Cement | Tonnes or pallets | 50 kg bags | 20 bags per tonne |
| Concrete blocks | Pallets or truckloads | Pieces or pallets | Pieces per pallet, by block size |
| Plywood and boards | Crates | Sheets | Sheets per crate |
| Pipes | Bundles | Lengths or metres | Lengths per bundle, metres per length |
Theoretical and actual weight. Steel is often sold by theoretical weight but bought by weighbridge weight, and the two rarely match. Record both, and review the difference monthly. A steady gap is either rolling tolerance or stock loss, and you should know which.
Cut lengths and offcuts. If you cut and bend steel, or cut pipes and boards to size, the offcut is stock with a lower value. Book it back into stock as a separate item, or write it off, but do not let it vanish. Otherwise the yard shows a shortage that is really unrecorded waste.
Transfers between yards. Moving stock from one yard to another should be a transfer with a sending and a receiving step, so goods in transit are visible. If the system moves stock instantly, a truck that never arrives leaves no trace.
Available, not just on hand. Stock reserved for open project orders is on the shelf but not free to sell. Salespeople need to see available quantity by yard, otherwise the same steel is promised twice.
What does one project order look like from quote to final invoice?
A Dubai trader with yards in Jebel Ali and Sharjah quotes a contractor 100 tonnes of 16 mm rebar for a residential building. The quote is AED 2,600 per tonne excluding VAT, valid for 14 days, with the price fixed for deliveries within 60 days of acceptance and reviewed after that. The contractor accepts on day 10, and the trader reserves 100 tonnes across both yards.
| Delivery | Day | Yard | Tonnes | Price per tonne (AED) | Invoice ex VAT (AED) | VAT 5% (AED) | Open balance (tonnes) |
|---|---|---|---|---|---|---|---|
| 1 | 14 | Jebel Ali | 24.0 | 2,600 | 62,400 | 3,120 | 76.0 |
| 2 | 28 | Jebel Ali | 24.0 | 2,600 | 62,400 | 3,120 | 52.0 |
| 3 | 49 | Sharjah | 20.0 | 2,600 | 52,000 | 2,600 | 32.0 |
| 4 | 80 | Sharjah | 22.0 | 2,750 | 60,500 | 3,025 | 10.0 |
| Total | 90.0 | 237,300 | 11,865 |
What happened along the way:
- Delivery 3 came from Sharjah because Jebel Ali had run low. Because the stock was reserved by yard, the dispatcher could see this before the truck was booked.
- Delivery 4 fell after the 60-day fixed-price period, and the trader's own cost had risen. The quote allowed a review, so the trader invoiced at AED 2,750, with the new price approved and noted on the order before dispatch.
- The last 10 tonnes were cancelled when the contractor's design changed. The trader closed the order and released the reservation, so the stock went back to being available for other customers.
The margin on the order was about AED 19,140, or 8.1% of sales, based on a cost of AED 2,380 per tonne for the first 68 tonnes and AED 2,560 for the last 22. Without the price review clause, delivery 4 would have earned AED 880 instead of AED 4,180, and the order margin would have fallen to about AED 15,840.
Every document in the chain, from quote to four delivery notes and four invoices, points to the same order. When the contractor's quantity surveyor queried delivery 3, the trader matched it to the signed delivery note in minutes.
What should you check when choosing building materials trading software?
Ask vendors to show each of these with your own items and a real project order, not a demo company.
Quotations and pricing
Orders, deliveries and invoices
Stock and yards
Reporting
If a vendor needs custom development for many of these, the system was probably built for general trading, and the spreadsheets are likely to stay.
What does HYP see at building materials traders?
Our implementation team works with steel, cement, block and general building materials traders across the UAE and Saudi Arabia. The same three gaps come up in almost every first meeting.
Quotes live outside the system. Salespeople build quotes in Excel or WhatsApp, so the order is keyed in by someone else, and the agreed price is not always the price invoiced. Moving quotes into the system is usually the fastest margin win.
Open orders are invisible. Accounts can see unpaid invoices but not the 60 tonnes still to be delivered on a project order. Credit decisions are made on half the exposure.
Yard stock is reconciled once a year. Theoretical and weighbridge weights, offcuts and unrecorded transfers build up until the year-end count shows a shortage nobody can explain. Monthly counts of fast-moving items, by yard, find the cause while it is still recent.
HYP's building materials trading solution links quotes, sales orders, delivery notes and invoices, with stock by yard and unit conversions per item. See how it works on our Building Materials Trading page.
Related reading: for traders who import, see Landed Cost for Importers: How to Add Freight, Duty and Clearing to Item Cost. For managing contractor exposure, see Customer Credit Limits and Overdue Accounts: A Collections Routine for Distributors.