Procurement & Stores
Buying and receiving are separate acts by separate people, so they are separate records — and the gap between them is the thing worth being able to see.
One continuous chain, not two systems bolted together.
Requirement
Rate analysis × BOQ quantity says what the project needs.
Commitment
A human decides what to actually commit, and explains any departure.
RFQ
The same question to four vendors on their own expiring links.
Quote
Spec, rate, MOQ, stock and lead time — comparable side by side.
Order
Generated from the accepted quote. Nothing retyped.
Approval
An admin signs. The raiser cannot sign their own.
Dispatch
The vendor posts the lorry, the driver and the challan.
Receipt
The gate records what arrived, including what was damaged.
Issue
Out to a named activity, then reconciled against consumption.
Four vendors, one screen, one accepted price.
The database refuses a second accepted quote on the same request, so “who did we go with” has exactly one answer — and the order is built from that quote rather than retyped from it.
| Vendor | Rate | MOQ | Lead | Stock | |
|---|---|---|---|---|---|
| UltraTech Depot | ₹418 | 500 | 2d | 4,200 | Accepted |
| Deepam Hardware | ₹424 | 200 | 1d | 1,800 | |
| Coromandel | ₹412 | 2,000 | 5d | 9,500 | |
| SRC Supplies | ₹431 | 100 | 1d | 600 |
The cheapest rate is not the accepted one: Coromandel needs a 2,000-bag minimum and five days, and the pour is on Thursday.
Quantity
2,400 bag
Rate
₹418
Value
₹10,03,200
Terms
30 days
Received
2,400
Damaged
12
Consumed
1,750
On hand
638
| Date | Movement | Against | Qty | Balance |
|---|---|---|---|---|
| 04 Aug | Receipt | challan 8841 | +1,200 | 1,188 |
| 09 Aug | Consumption | Columns 1-6 | −940 | 248 |
| 21 Aug | Receipt | challan 9012 | +1,200 | 1,448 |
| 28 Aug | Consumption | Slabs 1-6 | −810 | 638 |
Balance is the sum of the ledger, never a stored column — so it cannot drift from its own movements.
The store is a ledger, not a number.
Every arrival and every issue is its own immutable row with who, when and why. The balance is derived from them, so it cannot quietly disagree with its own history — and an issue that would take a material negative is refused outright.
Damage is its own column
Twelve broken bags never enter stock, and stay visible against the vendor and the order.
Issued to an activity
So waste shows up where it happened rather than as a rounding difference.
Transfers can be outstanding
Material on a lorry between two of your sites is one record, not two unrelated adjustments.
We will show you planned, ordered, received and consumed side by side — usually for the first time.
Build smarter.Execute faster.Deliver better.
