Gross margin flatters the customer file
Once drops, returns, credits, rebates and carriage are attached, a meaningful part of the customer base is usually loss-making, and it is rarely the part anybody expected.

Distribution and wholesale
Distribution runs on thin margins and enormous SKU counts, which is exactly the combination that hides losses. Rebates, drops, returns, credits and carriage sit outside gross margin in most systems, so a customer can look profitable at invoice level and cost money by the time the year closes. We rebuild cost to serve properly and hold it against stock and service, so range decisions, terms and minimum order values are set from the same numbers.
Discuss your operationWhat we usually find
Once drops, returns, credits, rebates and carriage are attached, a meaningful part of the customer base is usually loss-making, and it is rarely the part anybody expected.
Slow movers are judged on cover rather than on the margin and service they support, so the range gets cut in the wrong places and the same lines are back within a year.
Supplier and customer rebate positions accrue on a spreadsheet outside the system, and the true landed cost of a line is not known until somebody reconciles it manually.
Where we start
Scope depends on the state of your systems. These are the pieces that recur in this sector.
Drops, picks, returns, credits, carriage and payment terms attached to the customer and the order, so profitability survives contact with the full cost base.
Margin, velocity, stock cover and substitutability held together, so range decisions weigh what a line supports rather than what it holds.
Supplier rebates, settlement discounts and inbound freight brought into cost of goods, so a line's real margin is visible before the year-end true-up.
On-time in-full measured the way your customers experience it, joined to the stock and supplier decisions that drive it.
What changes
You own all of it: the code, the written definitions and documentation aimed at whoever maintains this after us.
The builds behind it
Your finance, customer and operational records joined into one dataset, with each figure defined once and traceable back to the system it came from.
Reporting built on top of the joined data, aimed at the few revenue and cost drivers that actually change the result.
One defined task, automated inside a process that already exists, measured against whatever it replaced.
Driver-based models built on the same definitions as your reporting, so the forecast and the actuals stop disagreeing.
Worth asking