Set Up Wholesale Pricing by User Role

Give wholesale customers automatic role-based pricing in WooCommerce with Discount Master Pro, no coupons, using a User Roles condition and a percentage discount.

Search the docs

⌘ K
Try "heartbeat", "restore from S3", or "WP-

Popular

License activation

WP-CLI install

Restore a backup

Hooks reference

Wholesale buyers expect their own pricing the moment they log in, not a coupon code they have to remember. With Discount Master Pro you can give any user role automatic, role-based pricing across your WooCommerce store.

What you'll have when you finish

A discount that applies automatically to customers in a chosen role (for example Wholesale), with regular customers unaffected, no coupons, and the wholesale price shown wherever that customer shops.

  • Prerequisites: WooCommerce, Discount Master, and Discount Master Pro active (the User Roles condition is a Pro feature).
  • You'll need access to: a WordPress admin account, and a customer user role to target.
  • Time: about 10 minutes.
The walkthrough
  1. Make sure a wholesale role exists
  2. Create the discount rule
  3. Restrict it to the wholesale role
  4. Display it and test as a wholesale user
This uses Discount Master Pro Role targeting is the Pro User Roles condition. If you have not added Pro yet, see Installing Discount Master.

1. Make sure a wholesale role exists

Discount Master targets existing WordPress user roles. If you already assign a role such as Wholesale Customer (via your membership or wholesale plugin, or manually per user), you are ready. If not, create or assign the role first, then come back.

2. Create the discount rule

Add a discount: Discount Master › Discounts › Add New, and name it Wholesale 30% Off on the General tab. Activate it.
Set the discount: on the Actions tab, add a Product — Percentage off price action set to 30, and leave the products field blank to cover the whole catalogue.

3. Restrict it to the wholesale role

Add the condition: on the Conditions tab, click Add Condition and choose User Roles.
Select the role: set it to Include and pick your Wholesale role. Now only customers in that role receive the 30%.
Tighten it further Combine the role condition with others, for example a minimum Cart Subtotal so wholesale pricing only kicks in on qualifying order sizes. See Discount Conditions.

4. Display it and test as a wholesale user

Display: on the Display tab, enable single product pages, archives, cart, and checkout so wholesale customers see their price throughout.
Test with a real role: log in as (or impersonate) a user in the Wholesale role and confirm the 30% applies, then check as a regular customer that it does not.
Role-based pricing is per logged-in customer Because the discount depends on the customer’s role, it only applies to logged-in users in that role. Guests see standard pricing. If you sell wholesale, make sure buyers log in before checkout.

Where to go from here

Your wholesale tier now prices itself automatically the moment a wholesale customer logs in. Add more role-based rules for other tiers (for example VIP or Distributor), and use list order plus stop-processing so a customer only ever gets their best single rate.

Frequently asked questions

Do wholesale customers need a coupon?

No. The discount is tied to their user role and applies automatically once they are logged in, there is nothing for them to enter.

Can I set different discounts for different roles?

Yes. Create one rule per role, each with its own User Roles condition and percentage, then order them so the correct tier wins.

What if a customer has more than one role?

The rule matches if the customer has the included role. To prevent multiple wholesale rules stacking, order them and enable stop-processing on the higher-priority rule.

Was this article helpful?

On this page
Back to top
Copy link to article