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 system. WooCommerce wholesale 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 – Administrator. Editor. Author. Contributor. Subscriber. When WooCommerce is installed, two additional roles are created – Customer Shop Owner. Further, additional capabilities are added to Administrator – Manage_woocommerce settings page. View_woocommerce_reports. An article on would give you a detailed information on all the User roles and its capabilities. How to Understand User Roles and 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 , a free plugin is available . 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) create and edit user role User Role Editor After installing and activating the plugin, go to -> . You would get the following options – Users User Role Editor Update 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 , the same capabilities as the . Wholesale Customers 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 . Using this plugin, you can create special discounts for your wholesale customers. Dynamic Pricing and Discounts plugin In the dropdown of “ ”, you would get all the available roles, even the one created using the . When you don’t mention any user role, the discount would be applicable to all the customers. Allowed Roles User Role Editor plugin 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 button for unregistered user and replacing it with a text “ ”. “Add to Cart” Login to purchase Hiding the “ ” from and replacing it with a text “ ”. Regular Price unregistered user Login to know the price Hiding “Add to Cart” and “Regular Price” for some . 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. specific user roles Assign tax classes and based on user roles. tax display options Globally hide the price and disable Add to Cart button on Shop and Product page. Controlling product . 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. visibility to specific users . 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) Prioritize user roles 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 , 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 . product specific category specific Using Cart Notices plugin along with the Dynamic Pricing plugin Dynamic Pricing allows you to set or 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 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. min/max quantities amount Min/Max Quantities Thus, a few plugins and some basic settings and your wholesale store is ready!