This is the early access documentation preview for Custom Views. This documentation might not be in sync with our official documentation.
Data structure
Learn how Zones relate to Shipping Methods and shipping rates.
After completing this page, you should be able to:
- Describe the relationships between Zones, Shipping Methods, and shipping rates.
Shipping your products is a crucial step in providing a good shopping experience, and with Composable Commerce, it's possible to handle a diverse range of shipping options.
In this page, we describe the relationships between Zones, Shipping Methods, and shipping rates in Composable Commerce, and how they can be mapped to carrier shipping options. Understanding how these concepts are structured will help you setup a seamless shipping experience for your customers.
Zones
In Composable Commerce, a Zone is a grouping of countries (or states within a country) used to specify shipping rates. Zones are commonly created to span business regions (APAC, EMEA, LATAM, etc.), continents, or even distance from a particular location, such as a distribution center.
Here we can see a representation of a Zone which contains two countries:
To learn how to manage Zones in the Merchant Center, see our Project Settings documentation.
- Each Project has a soft limit of
100
Shipping Zones. - A country can only belong to one Zone at a time.
When you think about how to group countries into Zones, it is important to consider how your shipping carrier's options, including rates, relate to locations. For example, in larger countries, you may choose to create Zones for specific states or areas that have higher shipping costs.
Shipping Methods & Rates
Now that we understand the concept of Zones, we can talk about Shipping Methods.
Shipping Methods allow us to define a courier's delivery options (for example, Standard, Express, Collect in Store) and the cost for each option in a specific Zone.
Before you create a Shipping Method, you'll need to first configure at least one Zone within Composable Commerce. While a Shipping Method can have multiple Zones, each individual Zone can be referenced only one time per Shipping Method.
Each Project has a soft limit of 100
Shipping Methods.
Within each Zone, you can add currency-specific shipping rates. A shipping rate consists of a currency code and value, for example, 5 EUR. You can use each currency within a Zone Rate, one time.
Example
Let's say that we have a Zone called EU Trade West
, which contains the countries Germany, France, and Denmark. We also have a second Zone called UK
, which contains the United Kingdom.
In this case, we can create a Shipping Method called Standard Home Delivery
and add individual shipping rates for each Zone:
- Inside the
EU Trade West
Zone, we can add a shipping rate for Germany and France in EUR and a shipping rate for Denmark in DKK. - Inside the
UK
Zone, we can add a shipping rate for GBP (United Kingdom).
In some countries, the cost and availability of shipping may vary dramatically based on the delivery location. In these cases, you can define different delivery rates and options within a single Zone using Shipping Method predicates. We will cover these options a bit later in the module.
Shipping rates are defined individually and not tied to a specific exchange rate. This gives you the flexibility to charge different prices, depending on your business costs. In our example, we've decided to charge more for deliveries to the UK, because it takes a bit more paperwork and effort.
Shipping rate types
In Composable Commerce, we categorize shipping rates as either fixed or tiered. This module focuses on fixed shipping rates and will not go into tiered shipping rates in detail. At this point, it’s enough for you to understand the basic difference between the two types of shipping rates.
- Fixed (default): The price of the Shipping Method always stays the same, regardless of Cart information.
- Tiered: The price of the Shipping Method is dynamic and its value changes based on the Cart Value, Cart Classification, or Cart Score.
If shipping needs to be calculated by an external service, then you may consider using tiered shipping rates or API Extensions.