A Cairo-based supermarket chain opens its ninth store and gets moved from the distributor's Regional Partner tier into Strategic. Nobody reviews the contract price override sitting on the account from the old tier. The next invoice reflects that stale override stacked on top of the new tier's base price list — a net price nobody in the room agreed to, on an order the buyer's procurement manager will dispute the moment finance reconciles it against last month's number.
The tier sets one price. The contract sets another.
Commercial tiers and contract pricing exist for different reasons, which is exactly why they collide. Tiers — Standard, Growth, Regional Partner, Strategic, Enterprise — give a distributor a base price list that scales with the size and value of the relationship, without negotiating every SKU individually. Contract pricing exists for the opposite reason: specific customers with specific history need specific terms that a tier-wide list cannot capture — a two-year volume commitment, a launch incentive, a legacy rate carried over from before the tier structure existed.
Both mechanisms are correct in isolation, but neither one by itself tells you what a buyer should actually pay. A contract override written against a Regional Partner base price does not automatically make sense against a Strategic base price six months later — it was calculated as a discount off one number, and nobody recalculated it against the new one.
When tier assignment and contract overrides are managed as two disconnected settings — one on the customer record, one on a pricing spreadsheet — this drift is not an edge case. It is the default outcome of any customer relationship that grows.
Five tiers, five different pricing behaviors
The five commercial tiers are not just labels for account size. They are a seed list that each distributor configures, and may rename, to fit its own structure, but each tier typically implies a different pricing posture, and conflating them is where a lot of the drift starts.
A buyer moving from Regional Partner to Strategic is not just getting a better base price — they are entering a tier where contract overrides are expected to be actively managed, not set once and forgotten. Treating the move as a label change on the customer record, without reviewing every override on that account, is where the next dispute originates.
The net price waterfall: base, contract, volume
The way to reason about this correctly is to treat net price as a waterfall with a fixed order, not a single negotiated number. Price passes through five layers in a fixed order: base price list, contract override, volume tier break, promotional override and manual customer override. This article concentrates on the first three, because that is where tier and contract drift lives. Base price comes from the tier's price list. Contract pricing applies a customer-specific override — a flat rate or a percentage discount — on top of that base. Volume tier breaks then apply based on order quantity, on top of whatever price the contract step produced. Net price is the output of all five layers, not a layer of its own: the rate the buyer sees at checkout and the rate finance invoices against.
Example: a Strategic-tier base price of EGP 340 per case, a contract override of 6% off base (EGP 319.60), then a volume tier break of 5% for orders of 500 cases or more, bringing the net price to EGP 303.62 per case, with no promotional or manual override in this example. Change the tier's base price without touching the contract override, and every number downstream shifts without anyone deciding it should.
The waterfall only produces a defensible number if each step is recalculated whenever an upstream step changes — a base price update should trigger a review of every contract override built against it, and a tier reassignment should trigger the same review across the account. When the steps are managed independently — tier in one screen, contract terms in a spreadsheet, volume tier breaks in a third place — nothing triggers that review, and the waterfall silently reflects an outdated combination of inputs.
Where tier and contract mismatches actually come from
Mid-to-large distributors in Egypt and Saudi Arabia rarely lose track of pricing through carelessness. The mismatches are structural, and they recur in a small number of predictable patterns.
The override was correct the day it was written. Nobody revisited it the day the tier changed. That gap is where the dispute lives.
One net price, computed the same way every time
The fix is not a stricter review calendar or a reminder to check overrides after every tier change. It is making tier assignment, contract overrides and volume tier breaks into steps of a single, deterministic calculation — rather than three settings maintained in three different places that happen to combine at invoice time.
In the Emdaad Admin Console, the pricing engine resolves all five layers as one waterfall, in the same fixed order, against the current state of the customer record and the rules in effect — not a snapshot from whenever the contract was last written. Contract overrides are ERP-sourced and locked, so the contract terms the waterfall applies are the ones held in the ERP, not a second copy re-keyed into a separate pricing sheet. Conflict detection runs across all five layers as a guarantee rather than a layer of its own, and every overlap ends in one of three outcomes: Precedence, where a documented rule decides silently, the order proceeds and the decision is logged; Warning, where the overlap is resolved and the order proceeds but is flagged for a human; or Conflict, where the system cannot choose and blocks until a person decides. The rate resolved at checkout is the rate applied on the invoice, and no pricing rule changes between the two.
A distributor that finds pricing mismatches before the invoice rather than at it narrows the gap between when a pricing decision is made and when it is actually reflected in what the customer is charged. That gap is where these disputes come from, so fewer of them reach the invoice.
Log your last batch of credit notes against the layer that caused each one, and see where tier and contract mismatches actually rank.
Get the free workbook