#1 Independent Seller of WooCommerce Plugins
Switch language

< Back to all articles

WooCommerce: How to change prices according to the role or group of a customer/user

We are used to consider sales as something static: I have a product, I assign a price to it, I put it on sale, customers buy it.

Truth is this basic structure can be revised: you could, for instance, sell the same product at different prices according to the type of customer.

But in which circumstances would such a function prove useful?

This function shows its maximum efficiency in websites that rely on a varied user base, each requiring specific prices.

A good example could be the one of retailers that require different prices than the final customers, both in order to have the chance to buy large amounts of products, and to establish a lasting relationship with your store.

This shouldn’t come as a surprise: retailers always could make deals with online store owners, but it’s the “how” that’s been improved over time.

Offering prices according to the role or group customers belong into

Until now offering custom prices has always been a convoluted process:

  • Customers had to find the product they were interested in.
  • They had to have the chance to ask the vendor for a quote (or, even worse, they had to contact them to request one)
  • And only then the quote would be calculated and sent to the customer, while risking that they would go ask elsewhere because of the long waiting time and the endless amount of emails or phone calls

Wasting time can really make the difference between success and failure for vendors, for this reason if you intend to offer custom prices to retailers, you need a quick and automatic way to do it.

Rather than relying on a single quote, for instance, you could establish a steady discount rate for all retailers, so that they could buy the amount of items that best suits their needs.

To make my point clear, let’s analyze a prototypical example:

  • Mike owns an electronics store with a customer base made both of final customers that only buy what they need and retailers who wish to stock up from his store.

The first thing he should do is to allow registration as retailers on his website, providing all the necessary documentation (which may vary according to the country).

Once users are accepted as retailers, they will be assigned a specific role (in this example “retailer”) which will differentiate them from common users.

Now the vendor can sell their product normally, as if there were no retailers among their customers, setting a base price as the one intended for final customers.

Now he should somehow change the price displayed to retailers on his website: the plugin required to implement and use this function is WooCommerce Role Based Prices.

This plugin allows you to create a “rule” thanks to which each customer that fall into a specific category or group (in this case retailers) get a specific discount on the store prices.

Once the plugin is installed and activated, just go to:

YIT Plugins > Role Based Prices > Price rules and create a rule that allows for a discount to a specific type of user. In this case, it’s going to be a 20% off for retailers:


This way retailers will only be displayed prices with a 20% off and can proceed to buy them without having to contact the shop managers.

This might seem like a small detail, but the chance to automate a process like this one is one of the basic aspects of WordPress based online stores (WooCommerce ones in particular).

There are thousands of WooCommerce plugins that allow users to speed up every single process, lightening your work load (say each process would take 20 minutes, by using 20 small processes it would take you 6 hours of work every day!) and allowing you to focus on the truly important aspects of your job.

And that’s how, in a single step, you made your store more efficient.

Suggested readings

Join our newsletter to get all news directly in your e-mail!