General settings

The plugin allows you to update dynamically product price, according to the role of the user who is going to purchase. You can either set a global rule, which applies globally to groups of products in your store, or it can be specifically created for a single item in the shop.
Before describing how to create a new rule in both cases, you should focus on some essential elements concerning plugin behaviour:

  • Each rule that you have created and configured will be applied to the “Regular price” or to the “sale price” (if set on the product) depending on the option settings in YITH Plugins -> Role Based Price -> General settings.

Remove transient

  • More than one price rule can be applied to the same product, at the condition that all of them have been specified either in section “Price Rules” in plugin option panel (so they are global rules) or in single product page (so they are product rules).

Role Based Prices Transient

Under “General Settings” you will also find the option to use a tool to clear the plugin transients cache as you can see in the image above.

YITH WooCommerce Role Based Transients API allow developers to store information in your WordPress database with an expiration time. This help speeds up your site and keeps your server loading time down, using this option you can remove the transients cache.

Role Based Prices doesn’t allow creating new roles. It only manages the ones already available. However, you can create new roles with the use of Members free plugin.

Create a new global rule

All global rules have to be created in YITH Plugins > Role Based Prices > Price rules.

price rules bulk

With the bulk actions you can either delete or trash the price rule(s).

In order to add a new rule, click on “Add new role based price”.

new role based price

To configure your rules assign a value to each of the following options:

  • “Apply rule to”: user role to which you want to assign the currect rule.
  • “Rule Type”: this option allows you to choose on which products it has to be applied or not:
    • on all products
    • on all products associated to the specified categories
    • on all the products associated to the categories not selected as excluded
    • on all products associated to the specified tags
    • on all the products associated to the tags not selected as excluded
  • “Discount or markup”: this option allows you to select the type of change you want to apply to the price. You can choose between “discount” or “markup” to current price.
    According to the selected type, the value that you can specify in “Value” field will apply as price amount or as percentage discount/markup on product price.
  • “Priority”: if more than one rule of the same type (Global, product category or product tag) are created for the same user role, priority allows you to create an order for rules to be applied. Ex. A priority-1 rule will be applied before a priority-10 rule.
  • “Activate rule”: by default, the rule is created and immediately enabled. Yet, if you uncheck this option, you can disable the rule without having to delete it and enable it only when needed.

In case more than one rule of the same type has been configured for the same user role, they will be sequentially applied according to the priority they’ve been given. Global rules are ignored if at least one product rule has been configured in the product.

If you are not ready to publish the new rule, you can use the “save draft” option.

Create a new product rule

The plugin allows to create custom-tailored price rules for user role, which are specific for each product of the shop.
The first step to take is to specify what behaviour the plugin must acquire on the current product.

  • Use only the rules below: apply on product only the rules available right inside the product, ignoring general rules
  • Override rules created for the same user role: apply on product the general rules, except those that have been overriden right inside the product


Now select the rule type you want to add between discount or markup.

  • name the rule;
  • select user role to which the rule applies;
  • set a value (percent or amount, according to rule type).

In the example shown in the above image, we have applied a 30% discount for all “Customers”.

If there are more than one rule for the same role, they will be sequentially applied according to the priority they have been given. To set priority for your rules, you can sort them by simply draggin and dropping them in the list (rules on top have higher priority).

All plugin features can be applied also to “variable products”.
Each product variation is treated as an individual product, so, what has been described above for simple product goes also for rules on each product variation.


Suppose we have these two products:

  • Product_1 in category “Poster” and its base price is €20
  • Product_2 in category “Poster, Photo” and its base price is €40

Suppose we want to create the following rules for the “Admin” role:

  • Rule 1
    • Rule type: “All Product”
    • Discount: 40%
    • Priority: 1
  • Rule 2
    • Rule type: Category “Poster”
    • Discount: 20%
    • Priority: 2
  • Rule 3
    • Rule Type: Category “Photo”
    • Discount: 50%
    • Priority 3

Which is the price shown to admins for Product_1?
The rule that applies in this case is Rule 2 (Rule 1 will not apply because there’s a more specific one).
So, 20-(20*20/100) = 16

Which price will be assigned to Product_2 for admins?
This time, Rules 2 and 3 will apply.
40-(40*20/100)= 32 this is the discount given by Rule 2.
32-(32*50/100) = 16 this is the discount they get after Rule 3 applies.

YITH Automatic Role Changer

YITH Automatic Role Changer for WooCommerce allows you to automatically assign a new role to your users or replace the one they had. Just configure the condition that will let them get a new role or switch from one to the other, choosing from the following ones:

  • the user purchases a specific product
  • the order total is within a certain price range
  • the customer’s total spend falls within a certain price range
  • the user purchases products from specific categories or tags.

The integration with YITH Role Based Prices allows you to forget about changing roles manually and automate your marketing strategies: your users will automatically see the updated price if they buy a given product, make a total spend etc.

To start using both plugins together, all you have to do is to activate both of them from the Plugins page in your WordPress dashboard.

Then, start configuring automatic change rules as explained in detail on this page.

Note: to make the role-based price show correctly, please, make sure that your users have no more than one role assigned. If they happen to have more than one user role at the same time, no role-based prices will be shown.


Configure three custom rules with YITH Role Based Prices plugin.

  1. 10% off for the role New customer
  2. 20% off for the role Returning customer
  3. 50% off for the role Loyal customerprice rules role based prices

Then, create the switch rules from YITH Automatic Role Changer settings panel:

  1. Switch from New customer to Returning customer if the customer’s total spend exceeds £500.
  2. Switch from Returning customer to Loyal customer if the customer’s total spend exceeds €1,000.Automatic role changer rule

If you want to read more about how to configure YITH Automatic Role Changer for WooCommerce, please, refer to the plugin official documentation.

YITH Dynamic Pricing and Discounts

YITH WooCommerce Dynamic Pricing and Discounts is a plugin conceived to create advantageous purchase conditions for your users. In an easy and intuitive way, you can configure ad hoc discount rules for your users and create convenient offers that will highly increase the sales of your products.

The integration between these two plugins allows calculating discounted prices based on role-based ones automatically rather than on WooCommerce prices.

After installing and activating both plugins, you only need to create your own role-based price rules with YITH Role Based Prices and the discount rules with YITH Dynamic Pricing and Discounts.

Role-based discounted price

For further details about YITH Dynamic Pricing and Discounts settings, please refer to the official documentation.


YITH Multi Vendor

With YITH WooCommerce Multi Vendor you can turn your WooCommerce-based shop into a marketplace, where users can register and start selling their own products. The earnings will be split between the admin and the vendor based on the agreed commission percentage.

The integration between YITH Multi Vendor and YITH Role Based prices allows your vendors to create their own role-based price rules and apply them on their own products only.

So, the admin can create global rules per user role, but the vendor can override these rules on the product level.

To let your vendors start creating their own rules, make sure you enable the add-on from YITH > Multi Vendor > Add-ons:

Enable plugin for vendors

Vendors will be able to create two types of rules:

  • Global vendor rules: these apply to their own products only. All global rules created by the site global administrator won’t cause any effect on vendor products.

    Global vendor rule settings

  • Product rules: Read more about this type of rules on this page.

product settings

rule settings

For further details about the plugin YITH WooCommerce Multi Vendor, please, refer to the official plugin documentation.

YITH Product Add-ons

YITH WooCommerce Product Add-ons allows you to configure additional product options that will be added to one or more product in your shop. For each option, it’s possible to choose a title, an image and a price, which will add up to the basic ones the product has.

You’ll have at your disposal many different types of add-ons, conditional logic etc.

The integration between this plugin and YITH WooCommerce Role Based Prices allows changing the base product price according to the role of your users, while keeping the add-on prices unchanged for all users.

All you have to do is to activate both plugins from the Plugins menu and then start configuring your role-based prices rules from this page, which apply to the product regular price.

After that, you can start configuring your add-ons to let your users have custom options and, if you want to, charge a fee for each selected add-on. Learn more about how to configure the add-ons on this page.


All your users will be able to customize their own products thanks to the add-ons you’ve added to the product page. The product price will be calculated starting from their role-based price. The add-on prices will be the same for every user and will regularly add to the product role-based price.

If you want to learn more about how to properly set up YITH Product Add-ons, please, refer to the plugin official documentation.

YITH Product Bundles

YITH WooCommerce Product Bundles allows you to create bundles of products of your shop. You can assign a fixed price to the bundle or get the price as the sum of the single elements in the bundle with custom discounts.

YITH WooCommerce Role Based Price can be perfectly integrated into YITH Product Bundles and set a different price also on bundle products. 

To start setting dedicated role-based discounts on Bundles, you just have to install and activate both plugins (premium versions) from the menu Plugins.

Everything will go through automatically. Just make sure you set the correct discounts from Role Based settings and they will also apply to the bundle.

This is an example of how the discounts of YITH Role Based Prices and YITH Product Bundles plugin combine on a bundle product, where for the Polo bundled product:

  • £12 is the role based price and
  • £6 is the role-based price with the bundle discount.

Read more about YITH Product Bundles in the official plugin documentation.

User settings

In the “User settings” of plugin option panel, you can choose which price will be shown to each user role.

users settings role based

You can choose to show, for each user role:

  • regular price
  • on-sale price (if available)
  • role-based price (if available)

If you disable “Add to cart”, you can activate catalog mode on every product in your shop.

Please, note: if you have decided to show no prices for the product (and so yu have disabled all options), the plugin will automatically show an alternative text on the product, which you have previously configured in section “Label settings” in plugin option panel.

alternative text

product detail page

In the example above, the alternative text is shown on all products only to users registered as “Editors”.

“Show price for a different user role” let the user know what price he would pay if he would have another role type.

For example: If you become Supplier you’ll be able to buy at this price $2.50

example frontend