How to Stop Wholesale Customers Getting Sale Prices (Shopify B2B)

How to Stop Your Shopify Wholesale Customers From Getting Sale Prices

You priced your wholesale catalog the way a person prices things they actually intend to profit from. Carefully, with a margin you can live with. Then you ran a storefront sale, and Shopify decided your wholesale customers should get that sale too, stacked on top of the discount they already had. The one you already agreed to give them.

So the people paying your lowest prices are suddenly paying less than that, and you didn’t choose it. It happened on its own, quietly, while you were busy running the sale itself.

If you run Shopify B2B using native catalogs, this is the thing nobody warns you about until it has already cost you margin. Here is why it happens and how to stop it.

1. Why your storefront sale reaches your wholesale prices

Most B2B catalogs run on an overall percentage adjustment. You tell Shopify that a company location pays 20% below retail, and it applies that across the catalog. Clean and simple to set up.

The catch is that your 20% isn’t a fixed number. It’s a percentage of whatever the retail price happens to be at the time. Drop retail by 25% for a storefront sale and the wholesale price drops with it, because it’s still 20% below a number that just got smaller. Your discount and the sale don’t compete. They compound. The common name for this is discount stacking, and on a wholesale catalog it comes straight out of the margin you were counting on.

Nobody at Shopify built this to hurt you. It’s just what a percentage does when the thing it’s a percentage of moves.

2. You usually find out after the money is gone

The problem with this particular leak is that it’s invisible while it’s happening. Your retail storefront looks right. Your B2B storefront looks right. Orders come in and get fulfilled like any other week.

Then the sale ends, you sit down to reconcile, and the wholesale totals are lower than they should be across every order placed inside the window. By then the goods have shipped and the invoices are settled. There’s nothing left to do but note it and promise yourself you’ll handle it differently next time.

Next time tends to look a lot like this time.

3. The manual fix, and where it falls apart

There is a real fix inside Shopify, and it’s fixed prices. When you set a fixed price on a variant in a catalog, it overrides the overall percentage adjustment completely. A fixed price is a number rather than a calculation, so it doesn’t move when retail moves. Put one on a product and your storefront sale can’t reach its wholesale price.

The trouble is the labor. Before every sale you’d export the catalog, set fixed prices on everything going on sale, import it back, run the promotion, then unwind all of it afterward so your normal percentage pricing returns. Every sale, in both directions.

One merchant on the Shopify community forum described doing this on a catalog of 300,000 SKUs, redoing the fixed pricing by hand each time products were added or removed. That isn’t a workflow. It’s a second job you didn’t apply for.

4. Locking your wholesale prices so the sale can’t reach them

The version that scales is to keep those fixed prices in place automatically instead of hand-editing them around every promotion. That’s what Trade Lock in Metra does. It syncs your product prices into your B2B trade catalog as fixed overrides and holds them there, so when a storefront sale drops your retail prices, your wholesale prices stay exactly where you set them.

You don’t export anything. You don’t have to remember to switch the catalog back when the sale is over. For the length of the promotion the wholesale price is a locked number, which is what you assumed it was to begin with.

Metra has a free trial on the Shopify App Store, and Trade Lock is part of it. If you run regular storefront sales alongside a B2B catalog, it’s worth watching how it holds your prices against your own next promotion.