How to Set Up Multisite Shipping for WooCommerce Stores (with Video)

Last updated - October 18, 2021

Do you have a multisite WooCommerce store where each subsite needs a different shipping configuration? You might want customers to see different shipping options depending on which subsite they visit.

For example, an American visitor will not be able to ship products from a .eu site. Similarly, a European customer won’t find shipping options for their address on the .ca site. You can use such a system to showcase and ship region-specific products on your WooCommerce store.

In this article, you’ll learn how to set up multisite shipping for WooCommerce stores.

Creating and Configuring WordPress Multisite

If you’re starting from scratch, below is a quick setup process to convert your WordPress website into a multisite. However, if you need an in-depth walkthrough, check out our complete guide on WordPress multisite here.

Before you create a multisite network and configure the subsites, make sure to backup your website and disable all the plugins.

Then, access your wp-config.php file through FTP and add the following code at the bottom.

/* Multisite */
define( 'WP_ALLOW_MULTISITE', true );

Save the file and head to Tools > Network Setup in your WordPress admin area. Here, complete the following steps to create a multisite network:

  1. Choose whether the multisite should be created using subdomains or subdirectories. You can choose either one if you’re starting with a new WordPress installation, but you must use subdomains for an established site.
  2. Provide a name for the network in the Network Title field.
  3. Provide an email address in the Network Admin Email field. The user linked to this email will get the administrator role for the Network.
  4. Click “Install” when you’re done.
Creating a WordPress multisite network.
Creating a WordPress multisite network.

You’ll then get a set of instructions to be followed, though they may slightly differ from site to site. You’ll probably need to add some code snippets to the wp-config.php and the .htaccess files. Click the “Log In” button under the instructions provided after you’ve completed them.

You’ll then be able to access the “My Sites” options in your sidebar and the toolbar. Your site has been converted to a multisite and you can now activate all the plugins.

Head to My Sites (Toolbar) > Network Admin > Sites to start configuring your multisite. Your main website will be listed here. You can add as many subsites as you want by clicking “Add new” and providing basic details like URL, title, default language, and admin email.

After creating a subsite, head to My Sites (Toolbar) > Subsite Title > Dashboard > Settings > General to localize the subsite. To match the subsite to its targeted demographic, set the proper language, time zone, and the local time and date formats as well.

WooCommerce subsite settings.
Configuring a subsite’s settings.

When you’re done, save the settings at the bottom. Then, repeat this process for all your subsites.

Shipping in WooCommerce

You need to understand the basics of WooCommerce shipping before you can configure woocommerce multisite shipping settings. Head to WooCommerce > Settings > Shipping to access the shipping options.

Under the “Shipping zones” section, you’ll find options to create zones consisting of cities, states, countries, and continents. You’ll then assign certain shipping methods that are available to those shipping zones. When a customer’s address falls within a shipping zone on your website, they’ll be able to choose from the shipping methods available for that zone.

WooCommerce shipping zone
Creating a shipping zone.

To create a shipping zone, click “Add shipping zone”. Then, provide a Zone name for your reference in the first field. Next, you need to select the locations that will be included in this zone. Just search in the field and select from the dropdown. You can choose from cities, states, countries, and even continents. Plus, you can add as many locations as you want.

Below, click “Add shipping method” to add shipping methods that you want to provide in this particular zone. Be default, you have three options:

  • Flat Rate Shipping: This method allows you to set a standard rate per item, per shipping class, or per order.
  • Local Pickup: This method allows the customer to pick up the order themselves.
  • Free Shipping: This is a great way to encourage customers to spend more. For example, you could let customers get free shipping for orders above $150.

You can enable one or all three of these shipping methods for a zone depending on your services. After enabling them, you can configure each shipping method by clicking the “Edit” button that appears when you hover over it.

Configuring the Flat Rate Shipping Method

To configure the flat rate shipping method, you need to provide the Tax status and Cost. In the Tax status dropdown, you can choose whether to apply taxes on this shipping method or not. In the Cost field, simply type the amount you want to charge for customers using flat rate shipping.

WooCommerce Flat rate shipping method
Configuring the flat rate shipping method.

Apart from a fixed cost, you can also placeholders to charge on the basis of quantity and fees. WooCommerce supports the following placeholders for flat rate shipping:

  1. [qty] – Number of products in the cart
  2. [fee] – An additional fee. This fee has two optional arguments.
  • percent – A percentage based on total order cost.
  • min_fee – A minimum amount. Useful when using percentages.
  • max_fee – A maximum amount. Useful when using percentages.

Here are two examples for using these placeholders:

  • 15 + ( 3 * [qty] ) – A base shipping cost of $10 plus $2 for each item in the cart.
  • 10 + [fee percent=”10″ max_fee=”35” min_fee=”4″] – A base shipping cost of $10 plus 10% of the order total, where the final amount is limited between 4 and 35.

Configuring the Local Pickup Shipping Method

WooCommerce local pickup
Configuring the local pickup shipping method.

You can configure the local pickup shipping method using two parameters: Tax status and Cost. In the Tax status option, choose whether you want to apply the tax when customers choose this shipping method. Below, you can assign a fixed cost value for local pickup.

Configuring the Free Shipping Method

woocommerce free shipping
Configuring the free shipping method.

Though you can offer free shipping on certain zones, you can set certain parameters to make the most of this shipping method. The “Free shipping requires…” option lets you set minimum requirements that customers must meet to avail free shipping.

WooCommerce offers the following requirements:

  • N/A – No requirement necessary; free Shipping is an option for all customers
  • A valid free shipping coupon – A coupon created that enables free shipping
  • A minimum order amount – Free shipping is only available if a minimum amount is spent. Set this amount in the Minimum Order Amount field which will appear if you choose this option.
  • A minimum order amount OR a coupon – Free shipping is available if a minimum amount is spent or the customer has a coupon that offers free shipping.
  • A minimum order amount AND a coupon – Free shipping is offered only if a minimum amount is spent and the customer has a coupon that offers free shipping.

Advanced Shipping Configurations

You can add as many shipping zones as you want. However, you don’t need to create a shipping zone for every single delivery location. WooCommerce offers a preset zone called “Locations not covered by your other zones” that’s at the bottom of the list of your existing shipping zones.

WooCommerce shipping zones
A preset zone called “Locations not covered by your other zones” helps you create shipping zones.

You can click on it to set shipping methods for it on the next page. This way, you can save time while creating shipping zones on your WooCommerce store.

NOTE: If you don’t want to provide any shipping methods for addresses located outside the shipping zones created by you, simply don’t add any shipping methods to the “Locations not covered by your other zones” option.

You can use the same idea to exclude specific areas from your shipping zone as well. Simply create a shipping zone for the locations you want to exclude and don’t add any shipping methods. When a customer’s address falls within that zone, they won’t get any shipping methods to choose from, thus indicating that you don’t ship to that address.

Examples of Multisite Shipping Configurations

In the previous section, you learnt how to set up shipping for a single WooCommerce site. You can use the same options and methods to set up multisite shipping. However, you’ll need to head to the shipping options of each of the subsites and configure it according to its target demographic. Below are some examples of multisite shipping configurations of some imaginary subsites.

Local Shipping

woocommerce multisite shipping
A local shipping example

For small mom-and-pop online stores that deliver within to nearby neighborhoods, a local shipping can be set up by providing specific pin codes. All other locations are excluded from shipping as no shipping methods are provided for the “Locations not covered by your other zones” option.

National Shipping

woocommerce multisite shipping
A national shipping example

In this example, the subsite offers flat rate and free shipping only in the United States. However, for some reason, the website doesn’t wish to ship to the states of Alabama, Alaska, and Hawaii. Therefore, a “No shipping available” zone can be created for these 3 states. Then, it will not add any shipping methods to this zone to prevent customers in this location from placing orders.

Global Shipping

woocommerce multisite shipping
A global shipping example

You may have a subsite that delivers internationally except some remote countries like Iceland and Samoa. In such a case, create a “No shipping available” zone for these remote countries and don’t add any shipping method. Then add the shipping methods you’re offering globally to the “Locations not covered by your other zones” option. This way, you can exclude specific locations from a global shipping zone.

WooCommerce Shipping Extensions

If WooCommerce’s default shipping capabilities are insufficient, you can use WooCommerce extensions to add many more shipping features to your store. There are a ton of free and premium extensions on the WooCommerce store. So we’ll only list some of the most important ones here.

  • Table Rate Shipping: Define multiple shipping rates based on location, price, weight, or item count.
  • Per Product Shipping: Define different shipping costs for products based on customer location.
  • Order Delivery: Let your customers choose their preferred delivery date and time.
  • WooCommerce Advanced Shipping Packages: Split a cart into multiple packages, each with its own shipping configuration.
  • Conditional Shipping and Payments: Provides a streamlined way to restrict the shipping, payment gateways, and shipping destinations on your store.
  • Local Pickup Plus: Provides a robust pickup system for retailers with multiple distribution centers along with scheduled pickups and product availability at pickup locations.
  • WooCommerce Shipping: Print labels for domestic and international shipments quickly and effortlessly.
WooCommerce shipping extensions
Shipping Extensions on the WooCommerce store.

The store also offers extensions for carrier integrations so you can get shipping rates from carriers like FedEx, Canada Post, UPS, and Australia Post. You can install these carrier extensions on the Network admin site and activate only on the region-specific subsite where it’s useful.

Apart from the WooCommerce store, you’ll find many more useful shipping extensions on sites like CodeCanyon, PluginRepublic, and Elextensions.

If you need help with configuring your multisite or setting up multisite shipping, shoot us a question in the comments below and we’ll be happy to help.

If you prefer a video version, please check out the below video:

Further reading

LEAVE A REPLY

Please enter your comment!
Please enter your name here