Menu Close

WooCommerce: How to Set Different Prices Based on User Role?

default

B2C WooCommerce stores can also have a B2B section. Wholesalers can offer different prices based on different criteria. Subscription stores can offer lower prices to current members.

Either way, setting different WooCommerce prices for different users (“based on user role”) is not that difficult. All you need is a plugin (or a stack of plugins, depending on your custom requirements), and you can immediately show different prices if the logged in user has a specific role or “capability”, as well as targeting active memberships, active subscriptions or other criteria.

If you want to learn more about user roles and capabilities, I suggest to take a look at the WordPress documentation: https://codex.wordpress.org/Roles_and_Capabilities – you’ll know WordPress has 6 default roles (administrator, editor, etc.) and that WooCommerce adds another one (customer). Other plugins can set additional roles – for example https://wordpress.org/plugins/members/ by Justin Tadlock, a very popular WordPress developer.

So, while “targeting” user roles is quite easy, the only difficult part is to choose the right “user role based pricing” product. As usual, when picking a plugin, you always need to consider its functionalities as well as the quality of its support team, long-term reliability, code cleanliness, frequent updates and total number of sales.

Today, we’ll take a look at the plugins I recommend, together with their pros and cons. If you use different stacks or custom functionalities, feel free to interact via the comments.

1. YITH WooCommerce Role Based Price

Now that you’ve chosen to assign different prices to a certain user role, with this plugin you can do even more than that. There are also nice third party plugin integrations (such as currency switchers).

Here are some of the best functionalities offered by YITH WooCommerce Role Based Price:

  • Edit price (percentage or amount) for a single product, product category or product tag, based on user role
  • Apply different pricing to either regular or sale amount
  • Toggle visibility of Add to Cart button, price, role based price, based on user role
  • Show/hide product price tax depending on user role
  • Works with variable products
  • Works with Currency Switcher for WooCommerce by Aelia

Typical scenarios:

  1. 10% off to all customers with user role “wholesaler”
  2. $20 off (category “wholesale”) to all customers with user role “resellers”
  3. Hide product prices unless logged in (wholesale shop only)
Adding a new pricing rule to a single product (% or amount) – YITH WooCommerce Role Based Price Plugin
Adding a new pricing rule to a whole product category – YITH WooCommerce Role Based Price Plugin

2. YayPricing – WooCommerce Dynamic Pricing & Discounts

To enhance your dynamic pricing based on user roles, you can use YayPricing to run advanced promotion campaigns on your WooCommerce store.

It allows you to specify user roles, and also add further Any/All conditions to tailor the discounts. For example, the customer has to be a “VIP Customer” and use the payment method as “Direct bank transfer” to enjoy the discount.

Not only user role based discounts, YayPricing also helps you quickly add discounts based on customer purchase history. 

  • Customer order count: Used for first-time order discount, 10th-order discount, or loyalty rewards.
  • Past orders’ product/category: Give a discount if the customer has bought items from your specified products/categories.
  • Order history’s purchase date: You can set a discount applied to those who are early birds or have bought in a custom date range.

Exclusively, YayPricing allows you to display custom notice only to those user roles that match the conditions.

With YayPricing, you can add dynamic messages with variables, rich text, and images to the product page. This is super helpful to let your customers know which products are offering sales.

You can add user role conditions to other types of WooCommerce dynamic pricing rules as in these scenarios:

3. WooCommerce Dynamic Pricing

Dynamic Pricing by WooCommerce can not only be used to change the pricing of target user roles – it can also do bulk discounts (based on quantities). Here’s the reason of its cost – when you have different prices or discounts for wholesalers, you usually also want to give bulk discounts (e.g. buy 5 get 10% off) to all users.

This plugin has the following functionalities:

  • Edit price (percentage or amount) for a single product or product category, based on user role and/or product quantity and/or cart total
  • Works with variable, composite, grouped, etc. products
  • Integrates with other WooCommerce.com plugins

Typical scenarios:

  1. 10% off to all customers with user role “wholesaler”
  2. $20 off (category “wholesale”) to all customers with user role “resellers”
  3. 5% off when a customer buys 5 items or more
  4. 10% discount to all items in the “chairs” category
  5. $10 off if cart total > $100
  6. Buy product X, get 5% product Y
Adding a new dynamic pricing rule to a single product (% or amount) – WooCommerce Dynamic Pricing Plugin
Adding dynamic pricing rules to user roles – WooCommerce Dynamic Pricing Plugin
“Buy one, get one free” scenario – WooCommerce Dynamic Pricing Plugin

4. WISDM Customer Specific Pricing

This product allows you to quickly set different pricing by user role – and you can even define a custom group of products this applies to.

Besides, you can define dynamic pricing by WooCommerce product category, bulk pricing (price changes based on purchased quantity), run B.O.G.O. campaigns and also quickly bulk edit prices with a nice price dashboard.

Discounts can be set as a fixed amount or price percentage.

Here are some interesting screenshots:

Setting up per-customer quantity discounts
Product dynamic pricing editor
View Source
Posted in WooCommerce, WooCommerce Tutorials