An eighteen-month thread
Atlas Teeco Projects (ATCO) designs, fabricates and installs material handling equipment: flap and diverter gates, transfer chutes, vibrating screens, feeders, idlers and pulleys. Its customers are some of the largest steel, power and mining operations in the country, and their purchase orders are precise about one thing above all: when ATCO gets paid.
A typical order pays in stages. An advance arrives with the purchase order. Another share is released when the customer approves the general arrangement drawings, another when raw material reaches the works, a large share against dispatch documents, more when the equipment reaches site, and more after erection and commissioning. A slice, often ten percent, is held back as retention for a year or more after that.
From first enquiry to final retention release, a single job lives for around eighteen months. The money at the end of it is the easiest to forget, because by then the team that built the equipment is three projects further on.
The work was always done well. The money came in late, because a claim depended on somebody noticing that a stage had been reached.
How it worked before
Before StageVO, the thread was held together by an Excel tracker, a folder of PDFs, a long email history and a few people’s memories. It worked, mostly. But each part of the business saw a different version of the truth:
- Sales knew what was quoted, but revisions lived in separate files and the reason for each change lived in someone’s inbox.
- The shop floor knew what was being cut and welded today, but not which payment the work would unlock.
- Purchasing raised orders from WhatsApp messages, and nobody could say which project a sheet of plate was bought for.
- Accounts knew what had been invoiced, but not what could have been invoiced and wasn’t.
- Retention release dates were worked out by hand, if they were worked out at all.
Nothing was broken. It was simply that nothing connected a stage reached on the shop floor to the money it had just unlocked.
What we built
StageVO follows an order from the first enquiry to the last retention payment. It has eight modules, each one a part of the business ATCO already ran:
| Module | What it does at ATCO |
|---|---|
| Enquiries | Logs what the customer asked for, their reference and the date an offer is due. Overdue enquiries show on the dashboard. |
| Offers | Numbers each offer the way ATCO always has, prints it on the letterhead, and keeps every revision with the reason it changed. |
| Orders and projects | Books the customer’s purchase order against the live offer, freezes the scope and payment terms, and creates the project. |
| Jobs | Breaks each project into pieces of work, each with its own shop-floor operations and the people assigned to them. |
| Purchasing | Requisitions, approvals, vendor purchase orders and material receipts, with rejected material recorded separately. |
| Money | Claims that fall due as stages are reached, invoices recorded against them, receipts, retention and bank guarantees. |
| Performance | Workshop scores, plus office measures the system works out by itself, such as enquiry-to-offer turnaround. |
| Admin | Every list of choices, numbering series and approval rule, editable without touching code. |
The idea everything hangs on
One rule runs through the whole system: the scope ticked on the offer decides everything downstream.
If design is in scope, the project gets “drawings submitted” and “drawings approved” stages, the jobs get a design operation, and the offer can carry a payment against drawing approval. If design isn’t in scope, none of those exist. If third-party inspection is in scope, the project gets an inspection call and an inspection clearance instead of a plain final inspection. Nothing has to be kept in step by hand, because nothing is duplicated.
- Enquiry
- Offer
- Customer order
- Project
- Jobs
- Dispatch
- Claims fall due
- Invoice
- Receipt
- Retention
When the order is booked, the scope and payment terms are frozen onto the project. Editing the offer afterwards cannot move a live project’s stages. What was sold is what gets built, and what gets billed.
The moment that pays for the system
Booking an order does three things at once. It creates the project. It freezes the terms. And it turns every payment stage that carries a percentage into a claim with an amount, waiting for its stage to be reached. If the terms hold retention, the retention is registered at the same moment, with a provisional release date.
From then on, reaching a stage and a claim falling due are the same event. When a supervisor marks a project “Dispatched”, the share payable against dispatch documents appears on the receivables list immediately, and the screen says how many claims the change has just made claimable.
Decisions that shaped it
Seven numbering series, from offers to job-work challans, follow the formats already printed on paper. The offer serial runs across all customers, exactly as before. People trust a system that speaks their language.
An amendment is recorded underneath the original, with its own date, reason and change in value. A year later, when retention is being discussed, the order history still reads correctly.
A plate is bought by size and cut across several jobs. Asking for a per-project quantity at requisition time would have been a fiction, so cost lands when material is used.
Sometimes material has to be ordered at 9 p.m. An approver can override with a written reason. Recording the override is better than people routing around the system, because once they do that, they stop using it.
A job’s current operation and percentage complete are derived from the status of its operations. Nobody has to remember to update a headline figure, so it is never wrong.
StageVO does not raise tax invoices or replace the accounting system. It says what to invoice and when, and records the invoice once it exists.
By the numbers
Who uses it, and how
People sign in with their existing Microsoft 365 accounts, so when someone leaves, switching off their account locks them out of StageVO at the same moment. Access comes in four levels, and the rules are enforced on the server, not by hiding menu items:
| Level | What they can do |
|---|---|
| Viewer | Read everything except money. Sees no rates or values. |
| Supervisor | Create enquiries, offers, jobs, requisitions, purchase orders and receipts. Sees rates on offers and purchase orders. |
| Approver | Everything above, plus approve or reject requisitions. |
| Admin | Everything, including money, performance and configuration. |
A welder is a person in the system, assigned to operations, but not a user. Three welders on one operation is normal, and the system expects it.
Built inside a live business
ATCO is our sister company: Yudiserve’s founders also lead customer operations and operations there. That is why StageVO exists. It was designed with the people who use it every day, on live orders, rather than in a meeting room. The supervisors told us which stages mattered and which screens they would actually open on a phone at eight in the morning. The office told us how offers are really worded. Every release was reviewed by a person before anyone used it.
AI wrote most of the routine code, the test data and the first drafts of the screens. People made the decisions above. That combination is what made a 46-screen system practical for a business of ATCO’s size.
Safe by default
- Every night, the whole database is exported as one Excel workbook, one sheet per table. If the software ever went away, the data would walk out intact and readable.
- ATCO runs on its own dedicated deployment, with its data kept in India.
- Documents stay in SharePoint. StageVO holds the reference and the link, and prints the folder structure and file-naming rule for each project.
What comes next
ATCO is the first business running on StageVO. Older jobs with retention still outstanding are being added first, because they are the most valuable rows in the system. The same platform, set up for each company’s own stages, terms and numbering, is now open to other project businesses at getstagevo.com.