Every stockholder has sat through the same demo. A polished salesperson, a generic ERP, and the line that ends every objection: "we can configure that."
Ask about catch-weight. We can configure that. Ask about mill certs. We can configure that. Ask how it tracks an offcut back to its cast. Pause. We can configure that.
I have built software for a living for a long time, and I built MetlSys specifically for this trade. So let me be straight about what "we can configure that" actually means. It means a consultant will bolt fields onto a system that was designed for boxes on shelves, and hand you the gaps to manage in a spreadsheet. For four things in steel stockholding, that is not a shortcut. It is the whole job, done badly.
The four things you cannot configure in
A generic ERP starts from a part number and a quantity. Steel does not work like that. A stockholder's data model starts from a batch: a physical lot with a heat number, a certificate, an actual weight, a cost and a bin. Everything below flows from that difference, and no amount of custom fields closes the gap.
Catch-weight and dual units
You buy a bar at its theoretical weight and sell it at its actual weight. Both numbers are real, both matter, and they rarely agree. A generic system holds one quantity per line. Bolt a second weight field onto it and you have data, but nothing that uses it: no variance check, no choice of invoice basis, no rule that stops unweighed stock being sold.
MetlSys is built around this. Every batch carries a theoretical and an actual weight. Prices work per kg, per metre, per each or as a lump sum. Invoices can raise on either weight basis, and a variance over 2% is flagged for review before it becomes a margin leak or an awkward credit note.
Heat genealogy through cutting
This is the one that breaks configured systems for good. A cut does not create a new product. It creates a child of the same cast, with the same heat number, the same certificate and a share of the parent cost. Split a bar, saw a plate, send material out to the platers and back, and every piece has to keep that thread.
A generic ERP treats a cut as a stock adjustment: quantity out here, quantity in there, link broken. To rebuild the chain for an auditor you rely on memory and a folder. In MetlSys the genealogy survives splits, cuts, remnants and subcontract loops by design. A works order consumes a parent batch and produces outputs, remnants and scrap that inherit the heat and certificate automatically. The offcut on the rack is still certified, sellable material, not scrap with a chalk mark.
Cert-gated despatch
Your customer's order says 3.1 minimum. The batch you are about to load only ever had a 2.2. In a configured system, nothing stops that despatch except the person doing it noticing in time. On a Friday afternoon, at volume, people do not always notice.
A rule you have to remember is not a control. MetlSys ranks certificate types 2.1, 2.2, 3.1, 3.2, lets each customer carry a minimum acceptable type, and gates allocation and despatch on it. If the batch does not hold a good enough certificate, the despatch paperwork does not print. A manager can override for a genuine reason, and the override is logged. That is the difference between a policy and a control: one lives in someone's head, the other lives in the system.
Cut-piece pricing
Quote a cut length and the price is not the length times a rate. It is the cut length plus the kerf plus a facing allowance at each end, with the kerf set by the saw type, and a check that you are not promising an offcut too short to exist. This is ordinary trade arithmetic. It is also arithmetic a generic pricing engine has never heard of.
MetlSys does the saw maths where the order is priced. Chargeable length is cut length plus kerf plus facing allowance, kerf per saw type, with minimum-usable-length flags so you do not sell a remnant that cannot be made. Nobody has to keep a side spreadsheet of cutting allowances that only one person understands.
What each gap costs when it lives in a spreadsheet
None of this is fatal on its own. Stockholders have run for decades on the ERP-plus-spreadsheet arrangement, and most still do. The cost is quieter than a crash, and it adds up.
The shadow spreadsheet is a second system nobody admits to owning. It holds the weights the ERP cannot, the cutting allowances the pricing screen cannot, the cert requirements the despatch screen does not enforce. Every order is keyed twice, once into each system, and the two drift apart the moment someone is busy. The divergence is silent. You find it at the worst time: an audit, a weight query, a customer who received material against the wrong certificate.
Then there is the person. The shadow spreadsheet always belongs to one person who understands how it hangs together. When they are on holiday, the office slows. When they leave, part of how your business works walks out with them. That is a real operational risk hiding inside a file called stock_v3_final.xlsx.
And there is the margin. Weight variances nobody reconciles. Offcuts weighed in as scrap because the record died even though the material did not. Cut pricing that quietly under-recovers the saw. These are small leaks. In a low-margin trade, small leaks are the margin.
What steel-native actually means
Steel-native is not a longer feature list. It is a data model that starts where the trade starts, at the batch, so heat, cert, weight and cost travel together from the first purchase order to the signed proof of delivery without anyone stapling them back on.
When the system starts from the batch, catch-weight is not a bolt-on, it is how stock is counted. Genealogy is not a report you rebuild, it is preserved by every cut. The cert gate is not a reminder, it is a wall. Cut pricing is not a spreadsheet, it is the order screen. You can see the full feature set on the features page.
A configured generic ERP can be made to store these things. It cannot be made to start from them. And in this trade, where you start is the whole game.
See it on your own material
If your office runs on an ERP plus the spreadsheet nobody will admit to, the fix is not more discipline or another custom field. It is a system that knows what a heat number is because it was built around one.
Bring your own worst example: a cut that went out for machining, a batch with a weight variance, a cert requirement that nearly slipped. Request a demo and we will trace it in front of you.