Insights
What the evidence says is going wrong, ordered by what it costs, each with the action that closes it. Every number names the file it came from.
MSC are selling part of the range at a loss and the system does not stop them.
A margin floor on the price record, checked at the point of sale. It turns silent defects into a queue somebody clears once.
Ranked first: it loses margin on every affected line today, and nothing stops it.
MSC pay for a forecasting engine and then buy almost none of what it recommends.
Every recommendation that does not land is stock bought late or cash tied up in stock nobody needed.
Bring the recommendation in as a working queue rather than a download. Close the transfer gap first, it is the cheapest stock MSC already own.
Ranked second: the licence and three planners are paid for, then overruled by hand.
Two customers can hold two different prices for the same product and nothing in Business Central raises it. The pricing work already built finds them, and it treats a ten per cent spread as the point where somebody should look.
Two buyers comparing notes is how this gets found today. The rule to find it first already exists and it is ours.
Run it on a schedule, group it by SKU and put the output in front of the person who owns the price. Carry the caveats with it: the rule buckets on the SKU alone, so unit of measure, currency, quantity break and effective date are not yet part of the key.
Ranked third: it is the defect the pricing project was built to find, and the rule is already written.
The pricing estate behind the ladder runs to roughly 650,000 sales price lines, and the comparison that checks them holds no tolerance at all.
An exact comparison at that scale is honest but unforgiving. A rounding difference of a hundredth of a penny reads the same as a real conflict, so the tolerance is a business decision that has not been taken yet.
Set the tolerance where the business wants it, in one place, and state it on every report that uses it. The platform carries the figure so a finding cannot be argued with.
Ranked fourth: it sizes every other pricing finding on this page.
Underneath the ladder the live system prices from the site account, then the company account, then falls back to a default category without saying so.
Two sites of one customer can be charged differently and nothing on the order says so.
Make the fallback fail loudly. Every priced line names the record that priced it, and a line that reached the default waits for a person.
Ranked eleventh: narrower than the ladder, and the fallback posts without asking.
A margin floor checked at the point of sale. Highest value change on this page, and it is a rule, not a rebuild.
Name the winning level on every line. Thirteen levels of precedence stop being a liability and start being the asset they should be.
Moving stock MSC already own between two sites they run is the cheapest service fix available. Today none of it happens.
Late orders, uncounted quotes and stalled approvals all fix the same way: the work goes back on a screen with a name against it.
Two sources, and every card names its own. The pricing work already built at gitlab.personify.tech/msc/msc-data-project, read directly, file and line quoted. And the read only audit of the live MSUPPLY LIVE Business Central tenant of 11 Aug 2026, the Netstock UI audit of the same day, the AL source read from the tenant's own extensions, and Product Scope chapter 14.
The data project publishes rules, not results. Its findings tables are declared and never written, its seed creates nothing and every count it shows is computed live and discarded, so what it contributes here is its thresholds, its comparison rules and its own record of what is still to build. Its mock fixtures are never shown as findings.
Two caveats travel with the audit numbers and both stand on their cards. The 999 plus open quotes is a display ceiling, so a floor rather than a count. The 400 delayed orders was recorded at medium confidence. The 650,000 price lines is the data project's own working figure for the size of the job, written to size a page cap, not a verified count.
The order is a commercial judgement, not a measurement. Each finding states the basis for its placing, built only from the figures cited on it. No pound value is attached to a finding the source did not price.