WooCommerce is awesome enough to form the basic structure of your store. However, as your store progresses, it’s functionalities too should advance. And that’s when the WooCommerce extensions come into the picture. WooCommerce offers several ways to setup a wholesale system.
Thanks to the number of useful WooCommerce extensions that has made it possible to setup stores to either sell only the wholesale products or both regular and wholesale products.
In order to understand the entire process of making it work, we need to first understand User Roles.
Pre-defined WordPress and WooCommerce User Roles
On installing WordPress, the available roles are –
When WooCommerce is installed, two additional roles are created –
- Shop Owner.
Further, additional capabilities are added to Administrator –
- Manage_woocommerce settings page.
An article on How to Understand User Roles and Capabilities would give you a detailed information on all the User roles and its capabilities.
When a new purchase is made at your store, the customer is required to create an account for that. Ever such account by default gets associated to the “Customer” user role. This ensures that their capabilities are limited to updating their account information from the frontend.
Creating a Wholesale role and assigning capabilities to it
In order to create and edit user role, a free plugin is available User Role Editor. This plugin would allow you to create new roles, assign capabilities to it and even edit the capabilities of the existing WordPress/WooCommerce roles (except the Administrator)
After installing and activating the plugin, go to Users -> User Role Editor. You would get the following options –
- Add Role
- Rename Role
- Add Capability
- Delete Role
Since you are now required to create a new role, so click on “Add Role”. This would open this popup-
This would enable you to create a user and assign it the capabilities of another role. In the above example, I have given the Wholesale Customers, the same capabilities as the Customers.
If you would want to give it a different set of capabilities, you can select “none”.
Creating Wholesale Pricing
In order to use wholesale pricing system, you can use the Dynamic Pricing and Discounts plugin. Using this plugin, you can create special discounts for your wholesale customers.
In the dropdown of “Allowed Roles”, you would get all the available roles, even the one created using the User Role Editor plugin. When you don’t mention any user role, the discount would be applicable to all the customers.
For details on how different discounts and prices be configured, you can refer a separate article on How to surprise your customers with Dynamic Prices and Discounts.
Creating Wholesale product catalogs
By now, you already have setup different prices for your wholesale customers. If your requirement is just to have different prices for wholesale customers, then you need not proceed further in this article. But, you may if you need the following functionalities. You would require the plugin WooCommerce Catalog Mode, Wholesale & Role Based Pricing.
- Hiding “Add to Cart” button for unregistered user and replacing it with a text “Login to purchase”.
- Hiding the “Regular Price” from unregistered user and replacing it with a text “Login to know the price”.
- Hiding “Add to Cart” and “Regular Price” for some specific user roles. This can also be done at the product level. If some of your products are specifically meant for the wholesale customers, you can hide the “Add to Cart” button for other customers.
- Assign tax classes and tax display options based on user roles.
- Globally hide the price and disable Add to Cart button on Shop and Product page.
- Controlling product visibility to specific users. You might want some products to be available only to your wholesale customers. Instead of hiding the “Add to Cart” button, you can choose to not show these products to the normal customers.
- Prioritize user roles. A particular user might have more than one user role. So, you are required to control which role based pricing would be followed. (Note: This can also be controlled using the dynamic pricing plugin)
Thus, with this plugin you can adjust the product visibility, button and price visibility at product level based on the customer role.
Other useful extensions for wholesale strategies
A cart notices plugin would help your customers to be aware of all the available discounts. You can choose to trigger product specific, category specific messages at the cart page in order to convey important messages to your customers. For an in-depth article on this, refer this article on Using Cart Notices plugin along with the Dynamic Pricing plugin.
Dynamic Pricing allows you to set min/max quantities or amount for discounts to be applicable. However, you would also want to set the min/max quantities or amount for a purchase to be made. In such cases, the Min/Max Quantities extension would be helpful. This plugin would restrict your customers from proceeding during the checkout process if his cart doesn’t meet the threshold quantity/amount. The plugin also allows you to make an exception to certain products.
Thus, a few plugins and some basic settings and your wholesale store is ready!