Shipping classes can be used to group products of similar type that are used by one shipping method (eg Flat Rate Shipping), to provide different rates for different classes of product. For example, with shipping classes and Flat Rate Shipping you can create different flat rate costs for large, bulky items and small items.
Shipping classes are used to group products – they are not used directly to offer shipping rates to customers. To set up shipping rates, configure Shipping Zones, and then add your shipping class costs to a shipping method, like Flat Rate.
To edit or remove a shipping class:
To apply these rates to a specific class of products (e.g., bulky or heavy items), you need to assign them.
If you would like to offer Free Shipping on some products but charge a Flat Rate for others, the best way to set this up is using Shipping Classes.
In this use case, we have set up three shipping classes: Free Shipping, Regular Shipping, and Expedited Shipping.
Once we have all the products added to their respective shipping classes, we can use the following settings to allow for the products in the Free Shipping class to not charge for shipping, while all the other products do.
By setting the Free Shipping class cost to use
0 * [qty], no matter how many products from that class are added to the cart, the shipping cost will not increase.
However, products in the Expedited Shipping class will cost $20 per product from that class (because we’re using
20 * [qty]) while Regular Shipping class products and products that have no shipping class will cost $10 per product to ship (as we’re using
10 * [qty] for each of those options).
This means that if you have one product from each of our three shipping classes, the total Flat Rate cost will be $30 ($20 for one Expedited Shipping product, $10 for one Regular Shipping product, and $0 for one Free Shipping product).
Note: For this to work as described above, it is important to set the Calculation Type to “Per Class: Charge shipping for each shipping class individually” and that the Cost field is left blank.