Skip to content

Just launched — ask us anything — usually answered within a working day

For online shops

Shopify Markets shipping in Europe: rates per country

Set one Shopify shipping zone per EU country and price it on real label costs: €5.38–€7.63 domestic vs €9.35–€13.38 cross-border, measured in 2026.

· 12 min read

Contents

In short

  • Give each EU country its own shipping zone under Settings → Shipping and delivery and price it on what a label really costs there: measured on 29 September 2026, the cheapest small parcel cost €5.38 to €7.63 domestically in Belgium, Germany, France and the Netherlands, against €9.35 to €13.38 for the same parcel sent from the Netherlands across the border.
  • In Shopify a country can sit in only one zone per shipping profile, and a fixed rate in local currency only works when every country in that zone uses the same currency.
  • Weight-based rates need a weight on every product, and your highest weight tier should have no maximum — otherwise the checkout shows a shipping error.
  • What the customer pays in Shopify and which service the label is bought with are two separate settings. Airpost Order Link handles the second; it is listed in the Shopify App Store, so you install it there.
  • AirPost is a peer-to-peer fulfilment network: online shops have their orders packed and dropped at a parcel point by verified people near their customers, who earn a fee per parcel from home. No warehouse, no minimum order volume.

Most Shopify stores that start selling abroad copy one domestic rate into a zone called "Europe" and hope it averages out. It does not. A parcel to France can cost twice what a parcel to Belgium costs, and one rate for both means you lose money on one country and look expensive in the other.

This guide covers the Shopify side step by step — zones, rate types, currencies, free-shipping thresholds — with the menu names from the Shopify Help Center. The numbers to type in come from our own rate card, measured on 29 September 2026.

How do Shopify Markets and shipping zones fit together?

A market in Shopify decides who can buy: language, currency, prices, domain. A shipping zone decides what they pay to receive it. Shopify defines a zone as "a group of countries or regions, such as Europe or North America", and the rates inside it are what the customer sees at checkout.

The two are configured in different places. Markets live under Markets; zones live in shipping profiles under Settings → Shipping and delivery. Shopify is testing a way to set shipping options directly per market, but its help page describes that as early access, "available only to certain stores". For most stores in 2026, the zone is still where the price is set.

A market without a zone cannot check out

If a customer’s address is in a region you do not ship to, Shopify tells them no shipping option is available. Every country you add to a market needs a zone with at least one rate, or the market exists on paper only.

What does a parcel actually cost per country?

Before you type a rate, know your cost. Below is the cheapest service for a small parcel (up to 5 kg, 35 × 25 × 15 cm) per destination, once from stock inside that country and once from the Netherlands across the border. Prices come from our shipping options, measured on 29 September 2026, and include our €0.85 platform fee.

DestinationFrom local stockFrom the NetherlandsDifference
Belgium€5.38 (Mondial Relay, point)€9.35 (DPD, point)€3.97
Germany€5.55 (DPD, home)€9.75 (DPD, point)€4.20
France€7.63 (Colis Privé, point)€13.38 (DPD, point)€5.75
Netherlands€6.85 (DPD, point)——
Measured on 29 September 2026, small parcel, cheapest service per route, platform fee included. Carrier rates without our fee for 2, 5 and 10 kg in every country are in the European shipping rates index.

Two things follow. The spread between countries is too wide for one "Europe" rate: from the Netherlands, France cost €4.03 more than Belgium for the same box. And a domestic parcel inside the customer’s country was €3.97 to €5.75 cheaper than the cross-border one. That gap is what decides whether free shipping is affordable in a country, not your margin alone.

The full per-country picture, including the Nordics and Eastern Europe, is in parcel shipping costs in Europe in 2026 and the European shipping rates index.

How do you set up a shipping zone per country in Shopify?

  1. Open your shipping profile

    Go to Settings → Shipping and delivery and click the profile. The general profile applies to every product that is not in a custom one; you can add up to 99 custom profiles for products that need different rates.

  2. Add a zone per country

    Under Shipping zones, click Add zone, name it after the country ("Germany"), tick that country under Regions and click Done. A country can be in only one zone per profile, so take it out of any "Europe" zone first.

  3. Add a shipping option

    Click Add shipping option, give it the name the customer sees ("Parcel point, 2–3 working days"), and pick a Rate type: Flat, Order amount, Weight, or Carrier or app calculated.

  4. Add delivery details

    Under Add delivery details, set a Transit time. Use the service level of the carrier you actually ship with, not a hope; the table further down has them.

  5. Close the gaps and save

    For order-amount or weight tiers, leave Maximum empty on the highest tier. Shopify says an order outside your tiers gets no rate and the customer sees a shipping error.

Flat, weight-based or order-amount: which rate type?

Rate typeHow it worksFits whenWatch out for
FlatOne price per order in the zoneYour products are similar in sizeA heavy order costs you the same flat rate
WeightPrice per weight rangeYour catalogue mixes small and bulky itemsEvery product needs a weight in Shopify
Order amountPrice per order-value rangeYou want a free-shipping thresholdLow-value heavy orders still cost the full label
Carrier or app calculatedLive rate from a carrier or appYou ship yourself with one carrierShopify converts these to your base currency
Rate types as named in the Shopify Help Center. You can combine them in one zone, for example a flat standard rate plus a free option above a threshold.

Weight tiers map well onto how carriers price. Our parcel sizes run up to 2 kg (letterbox), 5 kg (small), 10 kg (medium) and 30 kg (large), so the same four breakpoints make sensible Shopify tiers. Here is Germany worked out, with a sender near your customer packing from local stock:

Weight tierLabel in GermanySender fee (recommended)Your cost per parcel
0–5 kg€5.55€2.25€7.80
5–10 kg€5.55€3.00€8.55
10 kg and up (no maximum)€12.32€5.50€17.82
DPD home delivery within Germany, measured on 29 September 2026, platform fee included. Sender fees are the app’s recommendation; your sender sets their own.

Whatever you charge the customer on top of that cost is a pricing decision. Rounding up to a clean number per tier is common; charging exactly your cost and building shipping into the product price is the other route.

Ship locally without your own warehouse

No minimums, no fixed fees. Free to sign up.

Sign up free

Can you charge shipping in the local currency?

Yes, with two conditions from Shopify’s help page. Local-currency shipping rates are "only possible when configuring fixed rates", and "if multiple countries are in one shipping zone, then they must all share the same currency". Calculated carrier rates are converted to your store’s base currency.

  • Eurozone countries can share a zone if they share a price. Belgium and Germany at the same flat rate is fine; Belgium and France usually is not, because their costs differ.
  • Poland, Czechia, Sweden, Denmark each need their own zone for a fixed złoty, koruna or krona rate. Otherwise Shopify converts your euro rate and the customer sees an odd number.
  • Local currencies must be enabled for the market first, under Markets.

What should you type in for each country?

A worked example for a store that keeps a batch of stock with a sender in each country and ships small parcels. Cost = the cheapest measured label plus the recommended €2.25 sender fee. Transit time is the carrier’s stated service level on our rate card, not a promise.

Shopify zoneOption nameYour costTransit time to enter
BelgiumMondial Relay point€7.63Within 3 working days
GermanyDPD home delivery€7.80Within 2 working days
FranceColis Privé point relais€9.88Within 4 working days
NetherlandsDPD service point€9.10Within 4 working days
Measured on 29 September 2026. The customer-facing price is yours to set; this is the floor under it.

Which service to make the default in each country — point or door — is a separate choice with its own trade-offs. France and Belgium expect a pickup point; Germany and the Netherlands lean to the door. The reasoning and the price gaps are in pickup point vs home delivery in Europe.

How do you set a free-shipping threshold per country?

On an existing rate, open the menu next to it, choose Edit shipping option, tick Offer free shipping and enter the minimum order amount. Or add a second option with rate type Order amount, a minimum and an empty maximum, priced at zero.

Set the threshold per zone, from the cost. A threshold that works in Belgium at €7.63 a parcel is a bigger gift in France at €9.88, and much bigger again if the French parcel crosses a border at €13.38. One Europe-wide threshold hides that.

Where does AirPost fit into your Shopify shipping?

Shopify decides what your customer pays. It does not decide which carrier service the parcel leaves with. With local fulfilment through AirPost, a verified person in your customer’s country holds a batch of your stock, and Airpost Order Link sends every paid Shopify order to them. You pay the label, your sender’s fee and €0.85 per parcel — no subscription, no storage fee.

  • Paid orders are forwarded to your sender automatically.
  • You choose one default service per product and destination country; that is the label that gets bought.
  • Tracking goes back to Shopify and the order is marked fulfilled.
  • Listed in the Shopify App Store: install Airpost Order Link there, create an AirPost account and connect with the code.
  • It does not change your Shopify zones or rates. Those stay yours.

The simplest setup: one option per zone in Shopify, matching the default service you chose for that country. Then the customer pays for the service that is actually booked. How orders travel from Shopify to a parcel point is in Shopify fulfilment app without a warehouse.

Frequently asked questions

Should I make one shipping zone for all of Europe in Shopify?

Only if your cost is similar everywhere, and it rarely is. Measured on 29 September 2026, a small parcel from the Netherlands cost €9.35 to Belgium and €13.38 to France. One zone per country, or per group of countries with the same cost and currency, is safer.

Can a country be in two shipping zones?

Not within the same shipping profile. Shopify allows a country in only one zone per profile, so remove it from a "Europe" zone before giving it its own.

Why does my checkout show "no shipping available"?

Usually because the country has no zone, or because the order falls outside your weight or order-amount tiers. Leave the maximum empty on the highest tier and check that every product has a weight.

Can I show shipping rates in złoty or kronor?

Yes, with a fixed rate in a zone where every country uses that currency, and with local currencies enabled for the market. Carrier-calculated rates are converted to your base currency.

Is Airpost Order Link in the Shopify App Store?

Yes. Install Airpost Order Link from the Shopify App Store, create an AirPost account and connect with a single link code.

Sources

Connect your Shopify store and ship from your customer’s country

Airpost Order Link

Share this article

Read next

Ship locally without your own warehouseNo minimums, no fixed fees. Free to sign up.Sign up free