Scenario
Bob, a shop owner based in London, United Kingdom sells t-shirts. Bob has a tricky shipping case whereby shipping to Northern Ireland costs a bit more and takes a bit longer. Ideally, Bob, would like to create a separate shipping zone for all customers that have a shipping/billing address in Northern Ireland. Additionally, Bob would also like to have “Express Shipping” for all orders over £100.
Traditionally, using just the core WooCommerce plugin, Bob would need to locate the postcodes for all of Northern Ireland and then create a custom shipping zone based on those unique postcodes. While this is perfectly feasible, the reality is that a postcode-based shipping zone is both cumbersome and difficult to maintain.
Requirements
For this use-case, the following extensions are needed:
- Shipping Locations Pro – Used for adding the states/locations for the whole of the United Kingdom, including Northern Ireland.
- Conditional Shipping and Payments – Used for conditionally showing/hiding shipping methods based on the value of the products in the cart
Configuration
Creating a New Shipping Zone for Northern Ireland
- Log in to the WordPress admin area
- Ensure that Shipping Locations Pro is installed & active
- Navigate to WooCommerce > Settings > Shipping
- Select Add shipping zone
- In the Zone name field, enter “Northern Ireland”
- In the Zone regions field, select the following states:
- County Antrim
- County Armagh
- County Down
- County Londonderry
- County Fermanagh
- County Tyrone
- Select Save changes
Adding a New Shipping Method for Northern Ireland
- Using the same shipping zone that was just created, select Add shipping method
- In the lightbox popup area, select Flat rate
- Once added, hover over the new shipping method and select Edit
- Change the Method title to Regular Shipping
- Add a Cost of £5
- Repeat steps #1 – #5, using Express shipping and £10 for the method title and cost respectively
Conditionally Show/Hide Shipping Methods Based on Cart Value
- Ensure that Conditional Shipping & Payments is installed & active
- Navigate to WooCommerce > Settings > Restrictions > Shipping Methods
- Add a new rule with the following restrictions:
Result
When configured correctly, the results are illustrated below:
Regular Shipping
Express Shipping