What you'll build
A checkout configuration where Swedish customers are automatically routed to your Stockholm warehouse and Finnish customers to your Helsinki warehouse. You will choose how to handle orders that contain items from both warehouses — either consolidating them into one shipment or shipping them independently from each location.
Before you start
- You have warehouses registered in Shipit with their correct addresses: one in Stockholm (Sweden) and one in Helsinki (Finland).
- You have carrier services configured for each market (e.g., PostNord for Sweden, Posti for Finland).
- Your inventory system knows which items are stocked at which warehouse.
Step 1 — Create a shipping option per market
Create two standard home delivery options — one for each market. You do not need separate checkout configurations; both options can live in the same configuration.
Stockholm option:
| Field | Value |
|---|---|
| Name | Home Delivery |
| Service code | home-delivery-se |
| Carrier | PostNord (or your Swedish carrier) |
| Warehouse | Stockholm |
| Is active | true |
Helsinki option:
| Field | Value |
|---|---|
| Name | Home Delivery |
| Service code | home-delivery-fi |
| Carrier | Posti (or your Finnish carrier) |
| Warehouse | Helsinki |
| Is active | true |
Using the same customer-facing name for both options means customers always see "Home Delivery" — they never need to know which warehouse fulfils their order.
Step 2 — Set the multi-warehouse mode
On each shipping option, locate the Multi-warehouse mode setting and choose your strategy.
Option A: Single shipment (recommended for most merchants)
| Field | Value |
|---|---|
| Multi-warehouse mode | single_shipment |
Shipit waits for all items to be gathered at one location before dispatching. The customer receives a single parcel with one tracking number.
Option B: Split by origin
| Field | Value |
|---|---|
| Multi-warehouse mode | split_by_origin |
Each warehouse ships its portion of the order separately. The customer receives multiple parcels, potentially on different days, each with its own tracking number.
Step 3 — Add country-based visibility rules
Add rules to each option so only the relevant one appears per destination country.
On the Stockholm option — hide for Finnish customers:
| Rule field | Value |
|---|---|
| Condition type | destination_country |
| Operator | sameAs |
| Value | FI |
| Action type | disable_method |
| Priority | 10 |
| Is active | true |
On the Helsinki option — hide for Swedish customers:
| Rule field | Value |
|---|---|
| Condition type | destination_country |
| Operator | sameAs |
| Value | SE |
| Action type | disable_method |
| Priority | 10 |
| Is active | true |
Tip: If you expand to more markets, add additional hide rules per country or consider using a
notInoperator to list all countries a warehouse does not serve.
How it works
When a customer in Sweden reaches checkout, the destination country is SE. The Helsinki option's hide rule matches and that option is removed. The customer sees only the Stockholm-based carrier. The reverse is true for Finnish customers.
For mixed-warehouse orders with single_shipment mode, Shipit coordinates the pick-and-pack across warehouses before handing off to the carrier. The customer gets one delivery, one tracking number, one delivery experience. The trade-off is lead time: consolidation requires waiting for the slowest warehouse.
Mode comparison
| Single shipment | Split by origin | |
|---|---|---|
| Customer receives | One parcel | Multiple parcels |
| Tracking numbers | One | One per warehouse |
| Delivery fee shown | Single charge | May show multiple charges |
| Lead time | Longer (waits for all stock) | Faster (ships from each warehouse immediately) |
| Customer experience | Simpler | Can cause confusion with multiple deliveries |
| Best for | Fashion, gifting, premium brands | Bulky goods, time-sensitive items |
Warning: In
split_by_originmode, some checkout providers display a separate shipping line per warehouse, which can surprise customers who expect a single delivery fee. Check how your checkout provider renders multi-parcel orders before enablingsplit_by_originmode in production.
Testing it
- Create a test cart with items stocked only in Stockholm. Set the delivery address to Sweden. Confirm only the Stockholm option appears.
- Create a test cart with items stocked only in Helsinki. Set the delivery address to Finland. Confirm only the Helsinki option appears.
- Create a test cart with items from both warehouses. Set the delivery address to Sweden. Confirm the Stockholm option appears and that the consolidation or
split_by_originbehavior matches your configured mode.
