Shipping could be a challenge for every online store owner who sells physical products. This could become more complicated if the product catalog is vast and different. For example, if you are selling coffee, coffeemakers, books, and t-shirts together in a store, you may need vastly different shipping strategies for each. WooCommerce shipping classes will help you categorize our products based on their unique shipping requirements.
For some, you may need to charge additional amounts, and for some others you may want to incorporate special packaging requirements. All this can be managed with the help of shipping classes.
Before getting into the steps of setting up WooCommerce shipping classes, let’s try to refresh the basics of WooCommerce shipping.
Overview of WooCommerce shipping classes
Shipping zones are geographical locations that determine the shipping strategy of your store. You can define different shipping zones based on different considerations like cost and convenience. For each shipping zone, you can add multiple shipping methods. And, for each of these shipping methods, you can add charges as well.
Now, shipping classes will come into the picture when you have two products with completely different shipping requirements. If you are shipping a coffeemaker, you may have to follow some unique approach in packaging and shipping. And from the same store if you are shipping a book, you would want to opt for another shipping approach for that.
A simple example
This difference is shipping approaches can be easily managed with the help of WooCommerce shipping classes. To give a simple example, you may be charging a flat shipping rate of $10 across all products in your store, except for coffeemakers. For coffeemakers, you want to charge an additional $20. So, you create a shipping class for them, and add it to all your coffeemakers. Now, go to the settings of your flat rate, and add an additional cost for the shipping class of coffeemakers.
That means, when a coffeemaker is in the Cart, the shipping charge will be $30 instead of $10, which will be the shipping charge with all other products.
When you have products from multiple shipping classes in the Cart, you can opt for ‘per class’ or ‘per order’. With per class, the charge of each shipping class will be added, and with per order, only the cost of the most expensive shipping class will be added.
This way, you can use WooCommerce shipping classes in different ways according to your store requirements. Now, let us look into the setting up process of WooCommerce shipping classes in more detail.
How to set up WooCommerce Shipping Classes?
Access WooCommerce shipping classes through WooCommerce > Settings > Shipping > Shipping Classes.
Click the Add shipping class button to create a new shipping class.
You can add a name, slug and description for the new shipping class that you create. Slug will be automatically created, if you leave the field blank. There is a column to denote the number of products that are part of a shipping class.
After entering the details, click the Save shipping class button to save it. To create another shipping class, click the Add shipping class button. You can create as many shipping classes according to the requirement of your store.
Once a shipping class is created, you can edit or remove it by hovering the cursor around the name.
Adding shipping classes to products
The next step of creating shipping classes is to add them to relevant products. You can manage this by accessing the individual product settings.
For example, say you want to add a shipping class ‘Light’ to t-shirts in your store. You can go to the product settings and add the shipping class.
On the product data meta box, go to Shipping tab, and select the shipping class from the Shipping class dropdown.
Now, you will be able to apply special shipping considerations for this product.
For variable products, shipping classes can be set for parent product as well as individual variations. So, you can set one shipping class for the parent product, and optionally choose another shipping class for one of its variations. By default, for all variations, the shipping class will be ‘Same as parent’.
Adding shipping classes to products in bulk
WooCommerce offers options to add shipping classes in bulk as well. For this, you can go to the Products page, and select the products you want to edit. Then, from the bulk actions dropdown, choose the Edit option.
In the next screen, you can add the shipping class to the selected products.
There are also plugins that will make you handle WooCommerce shipping classes more effectively.
For example, you can use the ELEX WooCommerce Advanced Bulk Edit Products, Prices & Attributes plugin, if you want to filter products more effectively. The plugin lets you filter products based on properties like price, attribute values, etc.
Once you filter a specific set of products, you can add or remove a shipping class, or change to another one in all of them simultaneously.
Setting up rates specific to WooCommerce shipping classes
The major advantage of WooCommerce shipping classes is that you can use them to set up specific rates, or for other fulfillment aspects like special packaging.
With the default WooCommerce settings, you can create flat rates in your shipping zones, and then add an extra charge for products from certain shipping classes.
For example, you are charging a flat rate of $10 for a particular shipping zone. Now, you have introduced a new product, which is heavier and therefore costlier to ship. If you want to charge an additional shipping cost of $5, you can easily set that up in the flat rate settings.
Setting up advanced rules based on WooCommerce shipping classes
Now, if you want to apply rates in a more specific fashion, you can get one of the advanced flat rate plugins. Flexible shipping plugin offers some innovative options to control shipping rates when you are selling products of different shipping classes.
Here is a scenario that could be easily managed when you are selling different products with varied shipping requirements.
For example, you are selling hoodies and posters on your store. You have set up hoodies under a shipping class ‘Heavy’, and posters under ‘Posters’. Now, if a customer is buying only the hoodie, you want to charge a shipping charge of 15. If only poster is purchased, you want the shipping charge to be 10. If both poster and hoodie are in the same order, you want to charge a shipping charge of 20.
You can use the Flexible Shipping Pro plugin, and manage this quite easily. See the settings below:
When a customer adds only a product from Heavy shipping class, the shipping rates are $15.
And, when products from both ‘Heavy’ and ‘Posters’ shipping classes are present in the Cart, the shipping charges are $15.
Displaying specific services of shipping carriers using WooCommerce shipping classes
A lot of eCommerce store owners prefer to integrate real time rates of popular shipping carriers, instead of setting up different flat rates.
For example, you can set up USPS real time rates on your store using the ELEX WooCommerce USPS shipping plugin.
Once you set up the plugin, your customers will be able to see the real time rates of different services of USPS as in the screenshot below:
Now, how will you display specific services based on different shipping considerations? We can consider some of the general shipping service preferences to understand this better.
To ship within the US, First Class Package is a preferred service of USPS for light weight items. However, for packages above 1 lbs, Priority Mail is preferred. Similarly, for music and CDs, media mail is a preferred option.
Now, let’s look into an example scenario. You are selling Hoodies, which you want to send through Priority Mail. Similarly, you are also selling music CDs, which you would like to go through Media Mail. Depending on the product added to the cart, you want to display only relevant shipping services, and hide the rest of them. Here is how you can manage this.
Create a shipping class ‘Heavy’, for products that you want to go by Priority Mail, and create another shipping class ‘Media’ for Media Mail. Add the shipping classes to relevant products.
Install the ELEX Hide WooCommerce Shipping Methods plugin, and configure the settings as described below.
Creating a hide shipping rule for ‘Heavy’ shipping class
You can first create a shipping rule for all the products under ‘Heavy’ Shipping class
Filter the products by ‘Heavy’ shipping class.
Now you can hide the shipping methods you don’t want to display. Also, there is an option to hide the USPS shipping services other than priority mail by adding their HTML value in the Shipping options section. You can find the specific HTML value of the specific shipping method by using the Inspect option of your browser.
Now, when a customer adds a product from ‘Heavy’ shipping class to the Cart, only Priority Mail will be displayed.
Now, when a product from the ‘Heavy’ shipping class is added to Cart, only Priority Mail will be displayed.
Add a second rule
Similarly, you can also create a rule to hide shipping methods when a product with ‘Media’ shipping class is in the Cart.
First, filter the products based on the shipping class, and then specify the shipping methods and specific services that you want to hide.
Now, when a customer adds a product from shipping class ‘Media’ to Cart, only Media Mail will be displayed as shipping option.
What happens when products of both the above shipping classes are present in the Cart together? For this scenario, you can create an advanced rule combining the rules for both the other shipping classes. Here too, you can specify the shipping methods and services that you want to hide. In this example, we are hiding all USPS shipping services, and displaying only a Flat rate of $15 when products from both shipping classes are in the Cart.
So, when customers add products products from multiple shipping classes, the Advanced rule that you have set up will come to play. As a result, only the specific shipping services or methods that you want to offer will be displayed. For this example, as you can see, only Flat Rate is displayed.
This way, you can achieve different use cases on your WooCommerce store with the help of different plugins.
Common scenarios where WooCommerce shipping classes can be applied
Now, let us discuss some of the common use cases, where WooCommerce shipping classes can be used:
- Heavy – You may be selling a few heavy items along with several products that are light in weight. In such a scenario, you can set an additional charge for those products using WooCommerce shipping classes.
- Bulky – Bulky products will take a lot of space in the shipping container, even if they are not heavy. So, you may need a different shipping approach for those.
- Fragile – Fragile items will often need special packaging, and extra care during transit. That could mean you want to use only a particular shipping carrier or service for that. This could be achieved through WooCommerce shipping classes.
- Perishable – You may want to make sure that any perishable products you are selling reaches the customer as soon as possible. Sending by an Express service at an additional cost may be the option. There might be requirements like an icebox, or dry ice for packaging. You can easily apply the special requirements to those products using shipping classes.
- Hazardous – Similar to perishable products, you might have special packaging approached for hazardous materials. Even perfumes and cosmetics beyond a certain quantity will be considered as hazardous material by shipping carriers.
- Special packing requirements – Art works, posters, etc., will have special packaging instructions. So, if you are selling those kinds of products, you may want to make good use of WooCommerce shipping classes.
WooCommerce shipping classes could be really helpful if your store features a set of products that require different shipping considerations. Leave us a comment if you have a query.