WooCommerce Role-O-Matic

The WooCommerce Role-O-Matic plugin (WCRA) is a powerful tool that allows the shop admin to create “assignment rules” that dinamically assigns role(s) to the customers according to the amounts spent during the configured time periods or according to thepurchased products.
This tool can be very useful because can be use togheter with the WooCommerce Pricing! (or any 3rd party plugin) to assign dynamic prices or discounts according to the assigned roles.

Note: The plugin, as WordPress, requires a minimum 5.5 PHP version.

LIVE DEMO

http://www.codecanyon.eu/wcra/wp-admin
user: demo
pass: demo

user: demo2
pass: demo

user: demo3
pass: demo

HOW IT WORKS

It’s very straight-forward. Once installed and activated, a new “WooCommerce Role-O-Matic” voice will appear in the main menu from where the shop admin can access to the Amounts configurator or the Products configurator menus by which the “role assignment rules” can be configured.

By the Amounts configurator can be defined rules by which roles can be assigned according to the amounts spend during the configured time periods, according to the user roles, minimum amount spent (and optionally a max amount spent) and products/categories restrictions.
Every time a customer places an order or if the shop admin saves an order or if he changes an order status (using the WC_Order method or the admin area), the plugin will check if exists any “amount role rule” matching the current time and amount spent appling it to the customer. Optionally every rule assignment can be deferred specify another date in which the role assignment has to take place.

By the Products configurator roles can be assigned according to the purchased products. Furthermore can be also configured expiring dates, products pruchase restriction an more.
This can be very useful to manage subscription plans.

AMOUNTS CONFIGURATOR – ASSIGNMENT RULES

Using the Amounts Configurator menu can be created assignment rules with the following options:

  1. Rule name: used to identify the rule
  2. Time period type: Fixed time period(s) (You can define multiple dates) or Dynamic (To define time span like “Last 6 month” or “Last 24 hours”)
  3. Dates (if fixed time period(s) has been choosed): you can configure multiple date used to compute the amount and during which will be assigned the selected role(s)
  4. Effective computation date: This option is useful if you want to assign roles in a deffered date. For example you can use Febraury spent data to assign special roles during June
  5. Time range span (if dynamic time period has been choosed): The span of the time range from “now” (where now is the moment in which the user places the order) to be used for orders retrieval to compute the amount spent. During this period if a rule match is detected selected roles will be applied
  6. Time type (if dynamic time period has been choosed): it can be minutes/hours/days/months/years
  7. Role(s) restriction: You can choose to apply rule of if the customer already has one or more roles.
  8. Products/Categories restriction: You can choose to apply rule only if the customer has spent the desidered amount range in the selected products/categories.
  9. Minimum/Max Amount: these are the min/max amout spent value that the customer must spend in one of the configured period. If so, the selected role(s) (in next step) will be assigned.
  10. Role(s) to assign(1): Roles to assign to the customer if the amount has been spent during the configured periods.
  11. Role(s) removal: If an user already has one of the roles to assign but he has not spent the configured amount during the period, roles are removed.

(1)Role has to be created befor creating the rule. To create a role use the Embedded Role Editor or any other 3rd party plugin.

PRODUCTS CONFIGURATOR – ASSIGNMENT RULES

Using the Products configurator the shop admin can easily associate to products one or more user roles. Therefore customers that will buy those products will be assigned the associated role(s). This could be useful to manage subscription plans based on roles.

Optionally the shop admin can also set an expiring date that once reached will trigger the user role removal. The expiring date can berelative or fixed.
The first one is relative to the purchasing time, this mean that the expiring time could be for example 1 month later the purchase. The second one is a fixed date, like “March, 2nd 2016”.
Furthermore you can also restric products purchasing if the current customer already have the selected roles. You can also deny rebuying the products if the expiration date has not been reached.

Roles are assigned and removed automatically according to the purchasing date and expiring date. The purchasing date is the date in which the latest order (by date not by id) marked with one of the allowed statuses has been placed.

Example: if you set as allowed statuses “processing” and “completed” and if the default status when an user places an order is “payment pending”, the purchase time and roles will not be assigned until the order is marked as “processing” or “completed”.
NOTE: Changing latest order date will automatically update puchasing date for the order items that have roles associated.
You can set the allowed order statuses by the General options menu.

Expiration date extension: The plugin allows the shop admin to let customer to rebuy or not a product. In this way, in case e relative expiration date is associated to the product, after placing an order the purchase date is updated to the date the order has been placed.

Shorcode: To let you customer know when their products will expire you can add the [wcra_show_expiring_dates] shortcode in any page. It will display the products expiring date for the current user.

AUTOMATIC ROLE RECOMPUTATION

The plugin gives the ability to autmatic recompute roles at regular time intervals. The shop admin usin the General options menu have to enable this option and choose a time span interval (ex.: every 2 hour, every 7 days, etc.) and a starting time and the plugin will recompute user role according to the existing rules!
User roles based on products are also automatic recomputed when the customer access the site.

NOTE: You can set the allowed order statuses considered during the computation by the General options menu.

ROLE RE-CALCULATOR TOOL

By default roles assignment rules are checked after a customer has placed an order, after one of its order has been edited in the admin page, after one of its order status has been update (using the WC_Order method or the admin area) or during a recomputation schedule.
If the shop admin would like to computer roles without waiting, he can use the “Roles re-calculator”. He simply have to click on “Roles re-calculator” menu voice and then hit the “Recompute” button and the plugin will do the rest. That’s it! :)

NOTE: You can set the allowed order statuses considered during the computation by the General options menu.

EMBEDDED ROLE EDITOR

The WCRA plugin have a inbuilt role editor that allow the shop admin to easily create new roles or delete old or inused ones. Roles can be used to assign special discount or prices using the WooCommerce Pricing! or any 3rd party plugin.

AMOUNTS CONFIGURATOR – RULE ASSIGNMENT EXAMPLES

Would you like to assign a special “Premium user spring 2016” role to all the customers who have spent at least 100 during spring season? it’s simple:

  1. Create a new rule and assign a name/id
  2. Time period type: Fixed
  3. Create new dates where (3):
    1. starting date: 20/03/2016
    2. end date: 21/06/2016
    3. Would you like to compute role assignment during a different period?: No(4)
  4. Role restriction: leave unselected
  5. Amount: 100
  6. Max Amount: leave empty
  7. Role(s) removal: Yes (2)
  8. Role to assign: “Premium user spring 2016”(1)

Would you like to assign a special “Month premium users” role to all the customer which have spent at least 100 during the current month? Would you like to apply this special offer only for first 3 month of the year? Here you are:

  1. Create a new rule and assign a name/id
  2. Time period type: Fixed
  3. Create new dates where (3):
    1. starting date: 01/01/2016
    2. end date: 29/06/2016
    3. Would you like to compute role assignment during a different period?: No
    1. starting date: 01/02/2016
    2. end date: 28/02/2016
    3. Would you like to compute role assignment during a different period?: No
    1. starting date: 01/03/2016
    2. end date: 31/03/2016
    3. Would you like to compute role assignment during a different period?: No
  4. Role restriction: leave unselected
  5. Amount: 100
  6. Max Amount: leave empty
  7. Role to assign: “Month premium users”(1)

(1) Role has to be created before creating the rule. To create a role use the Embedded Role Editor or any other 3rd party plugin.
(2) Role are assignment/removal is computed when a customer has placed an order, after an order save on admin page, after an order status update (using the WC_Order method) and during a Schedule. If none of this events take place, you have to start the roles assignment recomputation using the Roles re-calculator at the start of the month (or whenever you whish) in order to remove the roles.
(3) Date rules with starting time greater than “now” are ignored.
(4) If setted to yes, You differ the role(s) assignment using the “spring data” to a different date. This assignment for example could be done of another season (ex: September).

COMPANION PLUGIN: WOOCOMMERCE PRICING!

Would you like to assign custom prices or discounts to the roles used by the WooCommerce Role-O-Matic plugin? You can!
WooCommerce Pricing is what you need! Give a try!

WCTBP

WANT TO KNOW ABOUT USER STATS? TRY WOOCOMMERCE CUSTOMERS MANAGER!

Would you like to have much detailed stats about customers, which products have they bought during a specific time range or discover which customers have bought a specific product? Try using the WooCommerce Customers Manager. It enanches admin area adding new “Customer” menu voice by which have more detailed customer info.

WCTBP

WOOCOMMERCE ROLE-O-MATIC SCREENSHOTS

WCRA
WCRA
WCRA

WCRA
WCRA
WCRA

Product configurator WCRA

[wcra_show_expiring_dates] shotcode in action WCRA

puchasing date on user admin profile WCRA

Pin It on Pinterest

Share This