Wholesale pricing Pro
Pro: trade tiers with their own prices, evaluated for the buyer rather than for whoever is looking.
Updated August 26, 2026
Wholesale pricing gives trade customers their own prices: a percentage off a category, a fixed price on a product, or a mix.
Tiers
A tier is a WordPress role with StoreMaster metadata beside it. Tiers are stored against an immutable key, so renaming "Trade" to "Wholesale" does not orphan every rule that targets it.
Where the price sits
Role pricing is stage two of StoreMaster’s pricing pipeline — after WooCommerce’s own price, before discount campaigns and before any configured-product charges. The pipeline decides the order, not the module.
That is why a trade customer’s price and a running campaign combine predictably, and why the explain tool can show you both. A wholesale price that bypassed the pipeline would be invisible to the tool you reach for when a merchant asks why a customer saw a particular number.
Manual orders
A shop manager placing an order on behalf of a trade customer gets that customer’s price. StoreMaster evaluates a price for the buyer, not for whoever is signed in — which is what makes a manual order match what the customer would have paid themselves.
Targeting a tier in any rule
Once this module is enabled, Wholesale tier becomes available as a condition in every StoreMaster rule editor — quantity rules, lead times, notification routing. It is the same shared condition language, so a tier you define once is usable everywhere.
What a tier hides
A tier decides more than the price. It can also set how prices are shown — including or excluding tax — and hide three things a trade customer should not be offered:
- Coupons. Hiding them removes the coupon box and refuses a code typed anywhere else, including through the Store API. Hiding only the box would be an invitation rather than a setting, so it is one switch for both.
- Shipping methods. Tick the ones a tier should not be offered. Ticking a method hides every instance of it across your shipping zones.
- Payment gateways. The same, for how a tier may pay.
The last one is never hidden. If what you have ticked would leave a customer with no way to choose a delivery method, or no way to pay, nothing is hidden and the shop behaves as it did before. A misconfigured tier should cost you a setting that did not apply, not a checkout nobody can finish.
The methods and gateways offered are the ones your store actually has installed, read from WooCommerce when the screen loads — so you cannot tick something you do not run, and a gateway you add later is visible to everybody until you say otherwise.
Previewing a tier
From the wholesale screen you can preview the shop as any tier. Open your storefront afterwards and the prices, and what you are allowed to see, are that tier’s. A bar along the bottom of every page says which tier you are previewing and offers to stop.
Nothing signs you in as anybody. You stay yourself for every purpose WordPress cares about — your capabilities, your account, your admin bar. The only thing that changes is the roles StoreMaster’s own evaluators are told the shopper has.
Preview is for looking, and it stops at the basket. It applies to the catalogue, product pages, quick view and tables. It does not apply to your basket, the checkout, the Store API, or anything in wp-admin — so a trade price you are previewing cannot end up on a real order, including a manual one you are writing at the time. If your basket shows retail totals while the shop shows trade prices, that is the feature working.
Preview ends by itself if you lose the capability or the tier is deleted, and a previewed page is never cached for anybody else.
Health
A tier pointing at a WordPress role that no longer exists is reported as a failing health check, because customers on it would silently be charged retail.
Still stuck? Email [email protected].