1. Home
  2. Knowledge Base
  3. WooCommerce Wholesale Pro
  4. Getting Started

Free E-Course: How to build an online wholesale store

This page contains a complete online course created by Barn2's Co-Founder Katie Keith. It will teach you everything you need to know about how to build an e-commerce wholesale store - either on its own, or running alongside your public online shop.

  • No technical expertise needed.
  • We'll use the free WordPress and WooCommerce platforms, plus the WooCommerce Wholesale Pro premium add-on. You'll also need to pay for a domain name (website address) and web hosting. These are small one-off or annual costs, and it works out much cheaper than hosted platforms like Shopify.
  • Fully featured, with everything your wholesale store needs - add unlimited wholesale user roles, 3 types of wholesale pricing, quick B2B order forms, wholesale shipping and payments, and more.
  • You stay in control and can choose the design of your website to suit your brand.
  • Ideal for store owners or web developers.

With nearly an hour of video tutorials, plus full written instructions, you'll be ready to start taking wholesale orders today. You'll even get a fun certificate at the end!


Lesson 1: About this course - You're in the right place!

Welcome to the free e-course on how to create an e-commerce wholesale website. If you need to add a wholesale store to any website - whether you're setting it up for your own company, or if you're a web designer or developer setting it up for a client - then you've come to the right place!

The objective of this course is to give you all the practical hands-on skills you need to create a wholesale website, or a wholesale area for an existing public shop - step-by-step.

We will use the free WordPress and WooCommerce platforms. WordPress will power your overall website, and WooCommerce will add the overall e-commerce functionality. We will add the WooCommerce Wholesale Pro plugin to transform it into a wholesale website.

You can either have a completely wholesale only store, or you can have separate areas for your public and wholesale users. Either way, wholesale users will have a tailored experience and pricing which are hidden from public view.

Let's get started - I can't wait to do the course with you!

Katie Keith
Co-Founder - Barn2 Plugins

Getting started

Lesson 2: Create a basic WordPress website

To do this course, you need a WordPress website. If you already have one then you can click 'Mark Complete' and skip straight to the next lesson - or if you don't have a website yet, keep watching.

In case you don't know, WordPress is a platform for building website. It's the biggest web building platform in the world, and about 1/3 of all websites globally are powered by WordPress.

WordPress makes it really easy for you to manage your website because you can easily add pages and other content without needing any technical knowledge. That's why WordPress is an excellent basis for any type of website.

Instead of showing you how to install WordPress directly, I'll recommend a web host which will come with WordPress pre-installed on it. That makes it a bit easier for you. This lesson is about buying a domain name, which will be your website address, and adding a web host that has WordPress on it.

1. Buy a domain name

Your domain name is your website address. If you already own one then you can edit the DNS settings for your existing domain name and point it to your WordPress website so that when people type that into their web browsers or look for it on the internet, then they will view your website with the online ordering that you have set up on it.

If you haven't got a domain name yet, then you can go to any website that sells domain names such as Namecheap.

2. Sign up for web hosting

Once you've got a domain name, you also need web hosting. This actually keeps your website on the internet. We recommend a manage WordPress host called Kinsta, which we use for all the Barn2 websites. Kinsta is great because it makes everything easy for you. It automatically installs WordPress for you and it has loads of extra features like:

  • Daily backups, so you can very easily roll back to your latest backup if anything ever goes wrong.
  • Free staging sites where you can test out any changes without affecting your live site.

Kinsta has various plans. Most people doing this course would be fine with their Starter plan which is just $30/month. If you want to go even cheaper then there are cheaper hosts, and we would recommend Siteground. However, with a managed host like Kinsta that specializes in WordPress, the whole process will be easier for you and your website will load faster and generally be more reliable and easier to manage. Standard hosts like Siteground are perfectly good and will keep your website online no problem, but I would say go for Kinsta because it's that much easier for you. That's why we use them.

Sign up to a hosting plan with Kinsta and once you've done that, they will give you a Dashboard. If you're using a different host then just follow their instructions. This is how to do it in Kinsta.

3. Create a WordPress site

  1. In the Kinsta Dashboard, click on the 'Sites' link on the left, and then on the 'Add Site' button in the top right corner.
  2. This opens a window which you'll use to create the general settings for your website, and also install WordPress:
    • Leave the 'Install WordPress' option ticket and this will install WordPress for you.
    • If you already have a domain name then enter it there, for example mywebsite.com. If not, don't worry - Kinsta will create a temporary website address for you and you can get a proper one later.
    • Add a website name.
    • Choose the location that is nearest to where your customers are based. For example, if you're in the UK and targeting the US market then you should choose a US data center. If you're in the UK and targeting the UK market then choose 'London, UK' and so on. This affects the speed of your website. If the website data center that stores the data for your website is nearer to your customers then it will load more quickly.
    • The WordPress site title, username and password are only used for you to load into the WordPress Dashboard and won't be seen by your customers. You will use the username and password to log into the WordPress admin area.
    • Enter your email address, which will be used for admin-related notifications such as new comments if you have comments enabled on your site; information about errors; etc.
    • Choose a language.
    • Ignore the multisite option unless you specifically want that.
    • Ignore the 'Install WooCommerce' option because we will do that later in the course along with some extra steps to make it easier for you.
    • Tick 'Install Yoast SEO' because this will help with your search engine position.
  3. Next click 'Add Site'. Kinsta will then set up your website, which will then appear on your list of sites.
  4. Now, click on the site in the Kinsta Dashboard. This displays information about the website. You don't need to know most of this, but if you already have a website address then you'll need to add a domain to the 'Domains' section, if you didn't do this in the setup process.
  5. You need to point your domain name to the website in order for it to work at that address. To do that, go into the 'Info' tab in Kinsta and copy the Site IP Address to the clipboard. You need to enter this into the DNS settings for your domain. I recommend that you look at the documentation or ask for help from your domain name company to find out exactly what the record should say. Tell them that you want to point your name to the website at the IP address you just copied. They will help you to get this set up so that when people visit it, that domain name will show your website.

4. Log into the WordPress admin

To log into your WordPress website, go to your domain name followed by /wp-admin, for example https://mywebsite.co.uk/wp-admin. If you don't have a domain yet, then you can find the temporary website address in the 'Domains' section of Kinsta. You should then enter the username and password that you chose when you created the site a minute ago. You can then start adding information to your website!

Lesson 3: Choose a theme

Once you've got your overall WordPress website setup, it's time to install a theme. If you've already got a theme set up on your website, then you can click 'Mark Complete' and skip to the next lesson, otherwise keep reading.

A WordPress theme controls how your website looks. There are thousands of themes available, and you can use any theme that is listed as being compatible with WooCommerce.

For this course, I'm going to use the free Storefront theme which is the official theme from the company behind WooCommerce itself. It's really good because it has the features you need without any extra bulk or unnecessary features to confuse you. It's a nice clean design and we use it for all our plugin demos. If you like the idea of Storefront but don't know how it looks then you can use one of its child themes to change the design. Alternatively, you can go to any theme company website or a marketplace like ThemeForest, and get a theme from there.

You can use any theme you want. Find one you like the look of, and use that. Whatever theme you choose, it will work with everything else in this course. Just make sure it says that it's compatible with WooCommerce. Most themes are, but it's worth making sure.

Install a theme

  1. Log into the WordPress admin for your website.
  2. Go to Appearance → Themes and click 'Add New'.
  3. You'll see an 'Upload Theme' option. If you bought a premium theme, then upload the zip file here. Otherwise, type the name of the free theme that you want to search for, e.g. 'Storefront'.
  4. Click 'Install' and then 'Activate'.
  5. When you go to the front end of your website, you'll see a very basic version of the theme. You can then customize it. Most themes either have a theme options panel in the WordPress admin, or you can customize it under Appearance → Customize.
  6. For the Storefront theme which I'm using for this course, there are lots of options in the Customizer. You can go through each section and configure them as needed, for example adding your company name to appear at the top of your website or uploading a logo; uploading a site icon which will appear at the top of the browser tab; changing details such as the header, link and button color to match your company branding.

Save your changes. In the next lesson, we'll start creating pages and a menu to go across the top of the website.

Lesson 4: Add your main pages and menu

Next I'm going to show you how to create the basic navigation structure for your website, before we start adding more advanced features such as online ordering. In WordPress it's really easy to add content to your website. You can do really nice things with text, images and different layouts just using WordPress as it comes.

Create pages

  1. In the WordPress admin for your website, go to Pages → Add New.
  2. Add a title to the top of the page.
  3. Add some content which will appear on the page. You can use the Gutenberg editor, which is the name of the page builder that comes with WordPress itself. You can use this to add lots of different types of blocks and common layouts such as headings, paragraph text, images, bullet lists, multiple column layouts, and more. To add a block, click the little + icon and choose from the different options.
  4. Publish your page in the top right hand corner, and then click 'View Page' to check it on the front end of your website.
  5. To set the page as your homepage, go to Settings → Reading and select it as the homepage from the list of static pages.
  6. Also on Settings → Reading, it's a good idea to temporarily tick the 'Search Engine Visibility' box to hide the site from search engines while you're working on this. However, it is essential that you remember to disable this when the site goes live!
  7. Go to Pages → Add New and continue adding as many pages as you like, for example your 'About' and 'Contact' pages.

Add a navigation menu

When you've added some pages, it's time to add a navigation menu which will allow people to find their way around your website. Most themes display this across the top, but some display it elsewhere such as on the left hand side.

  1. Go to Appearance → Themes.
  2. Click 'Create Menu' and select the display location to make sure it appears in the correct place on your website. Your theme may have multiple locations where menus can appear.
  3. You will see a list of pages on the left. Select the ones that you want to add to the menu, and click 'Add to Menu'. This will move them to the right.
  4. On the right, drag and drop to re-order the items in your menu. You can also indent menu items under other menu items to create dropdown lists in your menu.
  5. Once you've installed WooCommerce later in this course, you will be able to see more options on the left so that you can add products, categories etc. to the menu.
  6. Click 'Save Menu' to publish it on your site, then view your website to see what it looks like.

As we go through the course, we'll start adding more links to your menu so that it grows over time and creates a comprehensive navigation structure for your website.

Lesson 5: Add E-Commerce

So far in this course, we've learned how to create a website and install WordPress, how to add some pages and a navigation menu, and how to install a theme to control the design of our website.

Next, we're going to transform it into a proper e-commerce website so that people can actually make purchases online.

First, I'll show you how to set up WooCommerce itself, which you can use to create a public online shop. Later in the course, you'll learn how to create a private wholesale area, or make your entire store private so that only wholesale users can access it.

Install WooCommerce

  1. In the WordPress admin, go to Plugins → Add New.
  2. Search for 'WooCommerce' by Automattic.
  3. Find the plugin and click 'Install Now'.
  4. Once installed, click 'Activate'. This will open the WooCommerce setup wizard. This is really useful because it takes you through the main settings that we need for our online shop:
    1. Enter your address details.
    2. Select your industry.
    3. Enter what you're going to be selling. Most wholesale stores sell 'Physical products' which will be posted to the customer. You might also sell virtual or downloadable products.
      WooCommerce are also using this opportunity to upsell some other extensions, such as subscriptions or memberships. Only tick those if you actually need them because they are chargeable. You don't need these for this course.
    4. Select from the remaining options as needed (only enable things you definitely need!). Skip the page about themes because you already installed a theme earlier in the course.
Other WooCommerce settings

After the setup wizard, you'll be taken to the Home page of the WooCommerce Dashboard. You'll see some recommendations of what to set up next. We'll be covering adding products in the next lesson, so skip 'Add products' and go straight to 'Set up payments'.

  1. With WooCommerce, you can offer a choice of ways for customers to pay you. Add all the payment methods that you want in your store, and later in the course I'll show you how to restrict them to offer different payments to public and wholesale users.
    1. PayPal is a really simple way to take payments online because nearly everyone has a PayPal account. Even if they don't have an account or don't want to use it, then they can actually use PayPal to pay directly with credit or debit card. If you choose to set up PayPal, it will ask you for basic information about your PayPal account so that when customers pay on your website, this will send the money through to your PayPal account.
    2. You can also use Stripe, which is very easy to set up and allows customers to pay with credit or debit card. Go to stripe.com and create an account. You then pay a small percentage to Stripe for each transaction - it's similar or slightly less expensive than PayPal.
    3. It's a good idea to let customers choose between PayPal and Stripe. That's what we do on our own website barn2.com.
    4. You can also add other payment options such as 'Cash on delivery' so that people can place an order without paying online. Rename this to anything you like, such as 'Pay by invoice'.
  2. Once you've finished adding your payment methods, go back to WooCommerce → Home and click 'Set up tax'. Add any tax rates that you are required to charge in your country.
  3. Next, go back to WooCommerce > Home and click 'Set up shipping'. As with payments, later in the course we'll learn how to offer different shipping methods to different types of users, for example if you want to offer free shipping to public shoppers but not wholesale users. Enter your basic shipping options here. The WooCommerce shipping options are much more sophisticated than this, so use the official documentation to set up more advanced shipping options.
  4. Next, go back to WooCommerce → Home and click 'Personalize my store'. To get you started, can use this page to import some sample products to your store.

Add products

You can either add products manually or import them, e.g. from a spreadsheet. This is how to add them manually:

  1. Go to Products →Add New and enter the information about your product:
    • Add a product name and description.
    • On the right, choose a category - add new categories as needed.
    • Upload a product image.
    • Scroll down to the 'Product Data' section. If it's a simple product with no options, add the price in the 'General' tab. If you want to add multiple options for the product, such as a choice of sizes, then you need to set it up as a variable product:
    • In a separate tab, go to Products > Attributes and add
    • Change the 'Product Type' to 'Variable product' and then go to the 'Attributes' tab. Create attributes for all the options that you want to offer for your products. For example, if you are selling clothing with size and color options then you should create 2 attributes: Size and Color. Add all the size and color options as attribute terms.
    • Back on the 'Add/Edit Product' screen, go to the 'Attributes' tab and select the attributes that you will be using for this product. Tick the 'Used for variations' box for each attribute.
    • Next, go to the 'Variations' tab and use the option to 'Create variations from all attributes'. Accept the warning and WooCommerce will add each option as a variation, based on the attributes you just created.
    • Now enter a price for each variation and then click 'Save changes'.
  2. Click 'Publish' in the top right corner of the page.

That is how to set up WooCommerce itself. Next, let's add some pages to the menu so that people can navigate the public part of your website.

Adding a navigation menu

  1. Go to Appearance → Menus.
  2. Create a new menu and select the location as your primary menu.
  3. Select some pages on the left and click 'Add to Menu', for example your homepage and main Shop page (which was created automatically when you installed WooCommerce). These will appear on the right hand side, which is your menu.
  4. Use drag and drop to change the order of the links in the menu, and indent them to create multi-level menus with dropdowns.
  5. You can also add product categories to the menu by selecting them from the 'Product categories' section on the left. For example, you can indent them so that the categories appear as a dropdown under the main 'Shop' page in the menu.
  6. Click 'Save Menu' and check how it looks on your website.

When you view the main Shop page or a category on your website, this might be what your wholesale store will look like later in the course - but not necessarily! Now we've set up our public shop, the next step is to install a wholesale plugin to create a hidden wholesale area.

Create your wholesale store

Lesson 6: Install WooCommerce Wholesale Pro

Now it's time to install a wholesale plugin which will add the wholesale-specific website. WooCommerce Wholesale Pro will add the wholesale store features to the e-commerce website that you have already set up. For example, you'll be able to:

  • Add wholesale-specific pricing so that you can charge different prices for the same products to different types of user.
  • Control product visibility so that certain categories are only available to public users, wholesale users, or both.
  • Add quick wholesale-friendly order forms.
  • Use extra features such as offering different tax or shipping options to wholesale users.

Install WooCommerce Wholesale Pro

  1. Buy the plugin, then check your email.
  2. Download the plugin zip file from the email, and copy the license key to your clipboard.
  3. In the WordPress admin, go to Plugins → Add New and click 'Upload plugin'. Select the zip file that you downloaded from the email.
  4. Click 'Activate Plugin'.
  5. Go to the plugin settings page at WooCommerce → Settings → Wholesale.
  6. Paste the license key that you copied in step 2, and click 'Activate'.

General settings

Right now, we'll look at the General settings tab. We will go through the other tabs in later lessons:

  • The plugin has already created a 'Wholesale Login' page for you. You can choose whether this will just display a login form, or whether it will also include a wholesale registration form.
  • Decide whether to hold new registrations for moderation by an administrator. This allows you to prevent people from accessing the wholesale area until their application has been approved.
  • The plugin has also created a 'Wholesale Store' page for you, which is also available in the 'Pages' section of the WordPress admin. When a wholesale user logs into their site, they will automatically be redirected to the Wholesale Store page. If you prefer, then you can enter any other address for them to be taken to instead - for example, a specific category, or a static page where you have manually listed the wholesale products.
  • You can also choose whether or not to show or hide prices from logged out users. This is useful if you want non-wholesale users to be able to browse your catalog, while only allowing wholesale users to buy. This is quite common in a wholesale-only store where everyone can see your products, but only distributors can actually buy them.
  • You can also choose whether or not to disable tax for your wholesale users. You can do it globally here, and in a future lesson we'll learn how to do it for specific roles too.
  • Choose whether to disable coupons for wholesale users. For example, if you're running a Black Friday sale then you might only want public customers to be able to use the coupon codes from your sale.
  • After choosing your settings, click 'Save Changes'.

Lesson 7: Add wholesale user roles

Now we've installed WooCommerce Wholesale Pro, we can start looking at wholesale roles. These are the groups that your wholesale users will be in.

When you first installed the plugin, one wholesale role was created for you. You can see this in the WordPress admin under WooCommerce → Settings → Wholesale → Roles. You will initially see one role called 'Wholesale'.

When someone registers using your wholesale registration forms, they will be added to this role. You can also add users yourself by going to Users → Add New and selecting this role. Users with this role can see the products and pricing for the default wholesale role.

Next, I will show you how to create additional wholesale roles so that you can give different discounts to different people, show different payment and shipping options to different groups of wholesale users, and so on.

  1. Click 'Add new role' and give it a name, for example 'Gold'.
  2. Ignore most of the options for now because we'll cover these in other lessons later in the course. For now, just choose whether or not you want the role to have the same tax settings as your wider store.
  3. If you want new registrations to be added to this role, then you can tick the box to make this the default wholesale role.
    Click 'Add role'.
  4. Repeat steps 1-4 to add as many wholesale roles as you like.

Lesson 8: Set wholesale pricing

Now we've got some wholesale roles set up, we can start adding pricing for our wholesale users.

To do that, you need to choose which pricing options in WooCommerce Wholesale Pro you will use, and combine them as you wish:

Global discounts

At the most simple level, you can take a fixed percentage discount off the price for every product. This is done per role:

  1. Go to WooCommerce → Settings → Wholesale → Roles.
  2. Click on the role that you want to add a global % discount for.
  3. All users with this role will see these prices.

Product category discounts

The next level of wholesale discount is at the product category. Again, you can set this separately for each role.

  1. Go to Products → Categories and edit a category.
  2. Add a percentage discount which will be taken off the price for all products in this category.

The category discount will override the global discount. For example, let's say that you have set a 30% global discount for your Wholesale role, and 35% discount for the Clothing category. Wholesale users will be given 35% discount off clothes, and 30% off everything else.

Individual product pricing

The final level of wholesale pricing is at the individual product or variation level. Instead of being calculated as a percentage, you add the exact price that you want to charge each wholesale role for that product/variation:

  1. Go to WooCommerce → Settings → Wholesale → Roles.
  2. Click on the role that you want to add product-specific wholesale prices for and tick the 'Product Specific Pricing' box.
  3. Next, go to the main list of Products in the WordPress admin and click to edit the product that you want to add exact wholesale prices for.
  4. Scroll down to the 'Product Data' section and open the 'General' tab if it's a simple product, or the 'Variations' tab if it's a variable product. You will see a separate price field for each wholesale role. Enter the exact price that you want to charge each role here.

Product-specific wholesale prices override global or category discounts. For example, let's say that you're selling a TV that normally costs $100, and your store has a 30% global discount for wholesale users. If you set the exact wholesale price for this product to $55.25 then customers will be charged $55.25 and the global discount is ignored.

Testing your wholesale pricing

It's important to test your wholesale pricing and make sure it is correct. Logged in administrators will see the same pricing as your default wholesale store, so this is easy to do.

Simply view your store in the front end and make the prices are as you expect. The main price is crossed out, with the wholesale price alongside. This makes it very clear to the wholesale user what they will pay, and how much they are saving compared to the retail price.

Lesson 9: Create wholesale order forms

At the end of the previous lesson, we saw what the store page might look like for wholesale users with the correct pricing. But as you can see, if we analyze the layout of the page more closely, it's not really suitable for wholesale users.

By default, each product takes up a huge amount of space. Very little information is displayed about each product. If you're buying a variable product, you have to click through to a separate page to choose your options and add to the cart. You also can't choose quantities on the main list of products, so you visit a separate page to buy more than one of a product.

This is completely unsuitable for wholesale buyers who are already familiar with your products. They buy from you on a regular basis, and want a one-page order form layout where they can select quantities, variations and buy multiple products at once - all from one page.

That's why we recommend using WooCommerce Wholesale Pro with our other plugin - WooCommerce Product Table. This adds the perfect wholesale order form layout to your B2B area.

WooCommerce Wholesale Pro prices 1

It's a much quicker way to buy. Wholesale users can:

  • Use the filter dropdowns and widgets to find what they're looking for.
  • Choose quantities and variations directly from the one-page order form.
  • Search by data such as as SKU.

When you buy WooCommerce Wholesale Pro, you can choose whether to get it on its own or in a bundle with WooCommerce Product Table. For the rest of this lesson, I will assume that you're using both plugins together.

Install WooCommerce Product Table

  1. In the order confirmation email, download the WooCommerce Product Table zip file and copy your license key - just like we did with WooCommerce Wholesale Pro earlier in the course.
  2. Go to Plugins > Add New.
  3. Click 'Upload' and select the zip file for WooCommerce Product Table. Click 'Install Now'.
  4. Once installed, click 'Activate'.
  5. Go to WooCommerce > Settings > Products > Product tables and activate your license key.
  6. On the same page, go through all the options and choose how you want your wholesale order forms to work. They're pretty self-explanatory and there are links to more information about each option. In particular:
    • Shop templates - Depending on the type of products you sell, think about whether your public customers would benefit from the table layout as well as your wholesale users. If so, then you can tick these boxes. However, for this course, I'm assuming that you will keep the default layout for your public customers and use the table layout for your wholesale users - in which case you should leave these options unticked because they will affect all your users.
    • Columns - There is a wide range of columns available for you to choose from. To start, for a wholesale store, I suggest adding this to the columns option: sku, image, stock, price, buy
    • Lazy load - If you have lots of products, enable the lazy load option which will speed up the load times. Otherwise, leave this disabled.
    • Adding products to cart - For a wholesale store, I recommend either having 'Add to cart buttons and checkboxes' or just 'Checkboxes'. That way, customers can select multiple products and add them all to the cart at once.
    • Quantities - This is really important for wholesale because people often want to buy large quantities so that they can resell your products.
    • Variations - Either show them as dropdown lists in the Buy column of the table, or you can list each variation on a separate row of the table.
    • Filters - Most wholesale stores will want to add filter dropdowns above the table so that customers can narrow down the list of products. Select 'Custom' and type the names of the filters that you require, such as: categories, tags. You can also add various other filters such as attributes (e.g. color/size) etc.
    • Click 'Save Changes'.
  7. Now we'll enable the product table layout for wholesale users. Go to WooCommerce > Settings > Wholesale > Layout. This is where you need to enable the order form layout for your wholesale users. Most wholesale stores should enable it on both the 'Wholesale Store' and 'Wholesale Product Category & Tag' pages.
  8. Now go to the main list of Pages in the WordPress admin and click the 'View' link for your main Wholesale Store page.

Instead of having the default shop page layout, you will see a quick order form. As you can see, it's a much faster way of shopping.

Lesson 10: Control product visibility

At the moment, all of our products are available for everybody to see - whether they're a guest, a logged in public customer, or a logged in wholesale user. In this lesson, I'm going to show you how to restrict the visibility of your products so that only certain people can see them.

  1. In the WordPress admin, go to Products → Categories.
  2. Add or edit a category, and look for the 'Visibility' options. These are added by WooCommerce Wholesale Pro.
  3. Choose from 3 visibility options for the category:
    • Public and wholesale
    • Wholesale only
    • Public only
  4. Click 'Update'.

Restricting products by role or user

For more fine-grained control than just public/wholesale/both, then you can use WooCommerce Wholesale Pro with our other plugin - WooCommerce Protected Categories. This has extra options so that you can choose exactly which user roles can access each category and its products. You can also restrict categories to individual users if you want to.

Let's say your wholesale store sells branded workwear with the logo of each individual customer. You can create a category for that one customer and restrict access so that only that user, or that user and their colleagues from the same company, can access it at all.

  1. Get the WooCommerce Protected Categories plugin.
  2. As usual, you should copy your license key and download the plugin from the confirmation email.
  3. In the WordPress admin, go to Plugins → Add New, upload the plugin zip file and activate the plugin.
  4. Now go to WooCommerce → Settings → Products → Protected categories and activate your license key.
  5. Untick the 'Catalog visibility' options because you want to fully hide the protected categories and their products from the public parts of the site.
  6. Click 'Save Changes'.
  7. Go back to Products → Categories and add or edit a category. Now you'll see two visibility sections, with an option to choose which plugin you will use to edit the visibility for that category. When you select WooCommerce Protected Categories here, you will see the more advanced visibility options in that plugin.

Lesson 11: Navigating the wholesale store

Now you know how to set up wholesale products and pricing, and restrict the visibility of your categories and their products so that only certain people can see them.

Now we're going to edit the menu which we created earlier, so that people can navigate the wholesale store more effectively.

  1. Go to Appearance → Menus and edit the main menu for your site.
  2. In the 'Pages' list on the left, select all the pages that are specific to your wholesale store - such as your Wholesale Store and Wholesale Login pages. You should also use the 'Product categories' section on the left to add any wholesale-only categories that you set up in the previous lesson. This will add the pages to the menu.

Your menu will contain links that are aimed at both public and wholesale users. That's fine - WooCommerce Wholesale Pro will automatically show the correct links to each type of user. You can read more about how this works in the plugin knowledge base.

Lesson 12: Set up shipping & payments

Lots of wholesale stores need to offer different options to different types of user. This often applies to both shipping and payments.

Let's say that you want to offer a PayPal payment option to your public customers but not wholesale. Perhaps you want to offer free shipping to public customers and weight-based shipping to wholesale.

I'll show you how to do all of this.

Restricting shipping methods to public or wholesale users

  1. Go to WooCommerce → Settings  Shipping.
  2. You'll see a 'Shipping roles' page, which is added by WooCommerce Wholesale Pro. The shipping options are part of WooCommerce itself, and the ability to restrict them to specific roles come from the wholesale plugin.
  3. Every shipping option that you have set up is listed here, and is available to everyone possible role. To prevent certain roles from seeing a shipping method, simply click the 'X' for the role.


  • I recommend keeping 'Administrator' enabled for all shipping methods, as this makes it easier for you for testing purposes.
  • When setting public-only shipping options, remember to select 'Guest' (for logged out users) as well as 'Customer' (for logged in customers).
  • If you wanted more advanced shipping methods, for example to offer weight-based shipping or value-based shipping for wholesale users, then you can use the Product Shipping extension.

Restricting payment gate to public or wholesale users

You can do the same with your payment options. For example, if you wanted to offer a 'Check', 'Cash' or 'Invoice' payment method to wholesalers only, then you can do this. If you want to offer PayPal to public customers but not wholesale, then you can do that too.

  1. Go to WooCommerce → Settings  Payments.
  2. You'll see a 'Payment roles' page, which is added by WooCommerce Wholesale Pro.
  3. Every payment gateway that you have set up is listed here, and is available to everyone possible role. To prevent certain roles from seeing a shipping method, simply click the 'X' for the role.


  • I recommend keeping 'Administrator' enabled for all payment methods, as this makes it easier for you for testing purposes.
  • When setting public-only payment gateways, remember to select 'Guest' (for logged out users) as well as 'Customer' (for logged in customers).

When someone uses your store, they will only see the shipping and payment options that are available for their role.

Lesson 13: Speed up wholesale ordering

As we saw earlier, in the lesson about wholesale order forms, it's really important to provide quick ways for wholesale users to buy your products without having to visit lots of different pages and click lots of times for each option they wish to buy.

In this lesson, I'm going to share 3 plugins with you which will speed up the buying process even more.

WooCommerce Bulk Variations

Horizontal images

There are 2 ways in which WooCommerce itself makes product variations a pain for you and your customers:

  • Problems for you - If you've ever created variations in WooCommerce then you'll know how time-consuming it is to set them up, add prices, images, etc.
  • Problems for customers - With product variations, you normally have to select from a dropdown and add each variation to the cart one at a time. You then have to repeat the process for each variation you wish to buy. This takes ages for wholesale store users wanting to buy multiple variations at once.

The WooCommerce Bulk Variations plugin solves both problems. It lets you quickly filter variations and configure them in bulk. In addition, it displays variations in a grid layout on the front end. Customers can enter the required quantity for each variation and add them to the cart all together. A great time-saver for WooCommerce wholesale stores. 

WooCommerce Quick View Pro

The other plugin that can really speed up shopping is called WooCommerce Quick View Pro.

It adds a lightbox for each product so that customers can view extra product data, choose options and add to the cart without having to visit a separate page for each product. For example, you might need this if:

  • Customers need to see more information than you can realistically fit in the order form/product table view (e.g. additional product images or a longer description).
  • You have too many variations to fit in the order form.
  • You're using WooCommerce Bulk Variations to create a quick buying grid for each variable product, but don't want to inconvenience your buyers by taking them to a separate page for each product.

All of this extra information can fit within the quick view lightbox. The customer simply clicks the 'Quick view' button, where they have everything they need. They add the product to the cart and close the lightbox without losing their place in the wholesale order form.

WooCommerce Fast Cart

WooCommerce side cart drawer layout

The plugins featured above are all about adding products to the cart more quickly. To speed up the full customer journey, you also need to provide an optimized cart and checkout experience. You can do this with the WooCommerce Fast Cart plugin.

When customers add products to their cart, the cart immediately pops up. They can review their order, make changes, and complete the full WooCommerce checkout without leaving the page. It's much faster than visiting separate cart and checkout pages.

Lesson 14: Conclusion and next steps

And that's it! Congratulations on completing the course on how to create an e-commerce wholesale website. You can download a certificate from this link (please note that the certificate is just for fun and is not certified by any official training bodies).

By now, you should know everything you need to know about how to do the same and build your own site, with your own wholesale area.

If you have any questions, feel free to get in touch. We offer full support with all our plugins.

It's also worth having a detailed read through the rest of the plugin knowledge base. The knowledge base and documentation have a huge amount of information. They cover everything that you have seen in this course, as well as lots more in-depth information such as how to create a customized wholesale registration form with extra fields, and so on.

When you're ready, get WooCommerce Wholesale Pro and start setting it up!

Related Articles

If searching the knowledge base hasn't answered your question, please contact support.