Woocommerce User Role Pricing

User and Role Based Pricing for WooCommerce

Requires WooCommerce version 6.0 or higher!
Integration with WooCommerce Wholesale Ordering requires WooCommerce Wholesale Ordering version 5.0 or higher.

Purchase the Wholesale Ordering and User Role Pricing bundle and save!

Save even more with the Wholesale Ordering and User Role extensions bundle (includes User Role Pricing and User Role Minimums)!

Check the bundle page for special bundle upgrade pricing information if you already own the Wholesale Pricing plugin.

This WooCommerce extension allows you to create any number of custom price fields for WooCommerce products, and then select which price to use as a base price, along with a price multiplier, for each role or individual user. Individual user settings take priority over user role settings. If there are no settings for a specific user, that user gets the settings for their role. The plugin also allows you to create as many custom roles as you need.

In addition to custom prices and price multipliers, you can also specify if the role/user is tax exempt, if shipping is disabled, if they should have a billing account, and if they should be treated as a wholesale customer (when used along with Woocommerce Wholesale Ordering).

For each custom price that you create, you can specify if the prices entered are entered including or excluding taxes.

Try before you buy on your own personal demo site.

Features List

  • Create custom prices and specify if those prices include or exclude tax
  • Custom prices can be entered/edited via regular product edit, quick edit, or bulk edit (including variation bulk editor actions for each custom price)
  • Custom prices are saved as post meta values for each product, and meta keys are shown for each, making it easy to map prices when using CSV importers or exporters
  • Create custom user roles
  • Specify which price to use as a base price for each role or individual user
  • Specify a price multiplier to use to adjust prices for each role or individual user
  • Sale prices can override custom prices when they are less than the calculated user/role price with the Member Sales option introduced in version 1.4
  • Can specify if multipliers should be applied to sale prices (introduced in version 1.4)
  • Create custom html price displays by user type (member, non-member, and guest) – introduced in version 1.4
  • Specify if roles, or individual users, are tax exempt
  • Disable shipping for roles or individual users
  • Add a custom billing account field that will be saved with the user’s billing address, and specify a custom label for this field (Account #, VAT Account, etc.)
  • Enable the custom billing account field on a role or individual user basis
  • Specify (globally) what to do if a particular custom price doesn’t exist for a product. Options are:
    • Revert (reverts to the WooCommerce Regular Price)
    • Hide (hides the products from the shop, and makes them non-purchasable)
    • Message (specify a custom message to show in place of the price, and makes the product non-purchasable)
  • Restrict single product page content from customers who are not allowed to order those products
  • Restrict WooCommerce coupon codes by user role

Integration with WooCommerce Wholesale Ordering:

For each role or individual user, you can specify if they are treated as a wholesale customer. If so, then all the features of the Wholesale Ordering plugin will apply to them. Allows you to split up your roles, or individual users, into “retail” or “wholesale” customers. Using the Wholesale Ordering plugin, you can specify separate tax classes, custom messages, custom price prefixes and suffixes, minimum order amount, separate wholesale order terms page, purchase order field, and more! Check the WooCommerce Wholesale Ordering page for more info on that plugin.

In addition to being able to use all the independent settings of WooCommerce Wholesale Ordering, you can still define different base prices and price multipliers for roles or individual users who are treated as wholesale customers. When WooCommerce Wholesale Ordering is active, the Wholesale Price field will also appear as a price that you can specify as the base price for ANY role or individual user (regardless of whether or not you have them set to be treated as wholesale).

New in version 2.1.6: You can now change the base price for the fixed Wholesale Customer role that Wholesale Ordering creates when using the two plugins together. Previously, the base price for the Wholesale Customer role was the Wholesale Price that Wholesale Ordering created.

Also, when you set a role or user to be treated as wholesale, but they are using a custom base price, if the base price does not exist for a product, and you have the User Role Pricing option set to “Revert”, then that price will revert to the Wholesale Price instead of the WooCommerce Regular Price.  Thus, you could have a special role set up for special Wholesale Customers who get a discount wholesale price (that you set up) for some products. Then, for any products where you don’t enter the discount wholesale price, the price would revert back to the regular Wholesale Price. In version 1.4 you can also specify if the multiplier should be applied to the Wholesale Price when a custom price doesn’t exist and using the revert option to revert to the Wholesale Price for customers treated as wholesale.

Role/User settings such as Tax Exempt and Disable Shipping can also be used to override the Wholesale Ordering settings for roles/users you set to be treated as wholesale.

The combination of the two plugins is quite powerful and flexible! Lots of potential settings combinations!

Please see the new Wholesale Ordering and User Role Pricing integration docs page for more details on using the 2 plugins together.

Example use:

For a simple example, suppose you use the WooCommerce “Regular Price” as your retail price for regular customers and guests. But, you also have one type of customer that you want to sell to at a discounted price. You could create a role (using this plugin) for that type of customer, that we will call Discount Customer for this example. If that customer gets a fixed percentage discount off of the Regular Price for each product, then you don’t need to create a new price field. Instead, you just set the Base Price for that role to “Regular Price” and then set the Price Multiplier for that role to adjust the price for the amount you want to discount. So, if they would get 20% off the Regular Price, you simply set their price multiplier to 0.8. However, if the discounted price is not a fixed percentage, and needs to be specified for each product, then you could create a new price, and call it something like “Discount Price”. Once you create that custom price, you will see that as a new price input field for each product or product variation. Then, you could set the Base Price for our Discount Customer role to the new Discount Price, and leave the multiplier set at 1.

Continuing on with our example, let’s say you have one Discount Customer who buys much more than your other discount buyers, and you want to give them a slightly bigger discount. To do that, you simply go into the WordPress User editor, and change the Price Multiplier for that specific user, which will then override the role settings just for that user.  If you were using Regular Price as the base price for that role, and the 0.8 multiplier, but you want this user to get a 25% discount, you just set their Price Multiplier on their Edit User page to 0.75. Or, if you are using a custom Discount Price field for each product, and the Discount Customer role is set with a default 1 Price Multiplier, but you want this user to get an extra 5% off that price, just set their individual User Price Multiplier to 0.95.

Similarly, you could also create a “Cost” price field, and then set certain roles or users to get a fixed percentage above your Cost by setting their Price Multiplier to some value greater than 1.  For example 1.2 would give a price 20% above Cost.

WPML Compatible

Screen Shots


Average rating: 5 out of 5 stars
5 reviews
5 stars
4 stars
3 stars
2 stars
1 star
  • Perfect Fit

    We needed the ability to have unique pricing for some Wholesale users on just some products and this plugin did it perfect. Just created the new user level, created the new price field, populated all or the existing wholesale prices into the new price field then edited the ones that needed a unique prices. It is so well thought out to handle so many special needs.
    We have been using Stephens Wholesale plugin for many years and this plugin really finishes it off.

  • Excellent plugin and support!

    Easy to configure, straight forward settings. The plugin does perfectly what it should. Specially thanks for the quick support. Stephen did get back to me immediately and he help me to solve my problem!
    Excellent plugin and Excellent support!!

  • What we needed

    This plugin does what its supposed to do in an efficient and clear manner. Most user role pricing plugins are complex and do not cover the features that we needed, so this was a great find.
    While the set-up was smooth and easy, Stephen was kind and responsive towards our additional questions.

  • Excellent

    Great plugin, does everything I need and works flawlessly. Highly recommended. Very fast and attentive support from Stephen too.

  • Brilliant plugin

    This is the only role based pricing plugin that works with the order admin page in woocommerce – I’ve tried many different ones. Stephen responded immediately to my queries and came up with changes resulting in version 1.3.4. This plugin essentially allows me to manage b2b and b2c pricing all in one place. Fab.

  • You must log in and be a buyer of this download to submit a review.

    Comments are closed.