Shopify App · Release in preparation

KM Distance Shipping

Shipping rates based on real distance — not zone guesswork.

Shopify knows shipping zones, but not distances. KM Distance Shipping calculates shipping rates at checkout by straight-line distance or postal-code zone — built for merchants who deliver regionally themselves: delivery services, furniture stores, beverage retailers, garden centres, florists.

Book an intro call Coming soon to the Shopify App Store — questions in the meantime:info@kevin-metzdorf.com
The problem

If you deliver regionally yourself, you end up building patchworks of postal-code zones in Shopify — and still lose money on the last mile. Because Shopify prices shipping by zone, not by distance. Fair delivery rates for 5 km and for 45 km? Not possible natively.

The solution

KM Distance Shipping calculates right at checkout: either distance tiers from your location (straight line, price per km or flat rate per tier) or postal-code zones with flat prices. You pick the mode, set your prices — the app returns the right shipping rate for every order.

What the app does

Two modes, one switch

Postal-code zones with prefix logic ("50xxx = €4.90", catch-all supported) or distance tiers with flat rate, base price + price per km and an optional price cap — freely selectable per shop.

A delivery radius with a clear edge

Beyond your largest tier the app simply offers no rate — orders outside your delivery area never happen in the first place.

No address ever leaves the server

No Google Maps, no external geocoder: the app ships with its own geo data (GeoNames, looked up offline). Delivery addresses are never stored, cached or logged.

Checkout-native, theme untouched

Rates are served through the Shopify Carrier Service API. Works with every theme — zero theme changes, nothing in your storefront code.

Set up in minutes

A four-step setup guide right on the start page: check your plan, set mode and prices, activate the carrier, done. The guide monitors your setup live and warns you if something breaks.

Six languages, twelve countries

Interface in English, German, French, Spanish, Italian and Dutch. Distance mode covers Germany and eleven neighbouring countries — including cross-border deliveries. Zone mode: any country.

Good to know

The app uses Shopify's Carrier Service API. Your shop needs the Shopify feature "Third-Party Carrier-Calculated Shipping": included automatically in Advanced and Plus plans, and available on other plans with annual billing or on request from Shopify. The app's setup guide checks this as its first step.

One plan. Everything included.

Standard $4.90 per 30 days 14-day free trial — full feature set
  • All features included, no feature gating
  • No per-calculation costs, no hidden fees
  • Billed conveniently through your Shopify invoice
  • Free for partner and development stores

Cancel any time by uninstalling the app — billing ends through Shopify Billing.

Frequently asked questions

Setup & requirements

What do I need in my Shopify plan?

Your shop needs the Shopify feature "Third-Party Carrier-Calculated Shipping". Advanced and Plus plans include it automatically; on other plans it comes with annual billing or can be requested from Shopify. The app checks this in its setup guide as the first step and tells you right away whether your shop is ready.

Why don't I see any shipping rates at checkout?

The most common cause: your Shopify plan lacks the carrier-calculated shipping feature (see previous question). Second most common: the rate was removed from your shipping profile — in that case the app warns you with a red banner on its start page and walks you to the fix.

How long does setup take?

A few minutes. A four-step guide walks you through: check plan, set mode and prices, activate carrier, done. The guide keeps monitoring the state afterwards.

Do I need to change my theme?

No. Rates come through Shopify's checkout API — the app never touches your theme and works with every theme.

Features

How does the app calculate distance?

Straight-line distance from your origin postal code — deliberately not driving distance. That keeps the calculation fast, independent of external services and privacy-friendly. Postal-code coordinates come from the GeoNames dataset (CC BY 4.0) and are looked up locally inside the app.

Which pricing models are possible?

Two modes: postal-code zones with a flat price per zone (longest matching prefix wins, catch-all zone supported) or distance tiers — each tier either a flat rate or base price plus price per kilometre, with an optional cap. Prices always in your shop currency.

Can I limit my delivery area?

Yes. Beyond the largest distance tier (or without a matching zone and no catch-all) the app offers no shipping rate — customers outside the area cannot complete the order with this shipping method.

Which countries are supported?

Zone mode: any country with numeric postal codes. Distance mode: Germany plus Austria, Switzerland, France, Italy, Slovenia, Belgium, the Netherlands, Luxembourg, Poland, Czechia and Denmark — including cross-border.

Are miles supported?

No, the app works in kilometres.

Are multiple warehouses or locations supported?

No — one origin location per shop (one origin postal code in the settings).

Which languages does the app come in?

English, German, French, Spanish, Italian and Dutch. The app detects your shop language automatically, and there is a manual switcher too.

Pricing & billing

What does the app cost?

One plan, everything included: "Standard" at $4.90 per 30 days — with a 14-day free trial of the full feature set. Billing runs through your regular Shopify invoice.

Are there per-calculation costs or hidden fees?

No. Distance calculation runs locally inside the app — there are no external API costs and no usage-based billing.

How do I cancel?

Just uninstall the app — nothing else needed. Billing ends through Shopify Billing under its rules.

Compatibility

Does the app work alongside other shipping apps?

Yes. Shopify shows all rates from all sources side by side at checkout — manual rates, other carrier apps and this app. If you want to show only the distance rates, remove other rates in your Shopify shipping settings.

What happens with an unknown postal code or an error?

The app is built fail-safe: on any problem — unknown postal code, unsupported country, internal error — it simply offers no rate. Your checkout never breaks; other configured shipping methods remain available.

Data & privacy

Are customer addresses stored?

No. For each calculation the app receives the postal code and country of the delivery address from Shopify, uses both in memory for that one calculation — nothing is stored, cached or logged.

Is address data shared with third parties like Google Maps?

No — with no one. The app uses no external map service; the geo data ships as static files inside the app and is looked up offline.

Where does the app run?

On two redundant machines at Fly.io in Frankfurt, Germany, including the database. Details are in the app's privacy policy.

Is the app set up for GDPR?

The app implements all privacy webhooks required by Shopify. On uninstall, all stored shop data is deleted completely. End-customer data is never stored in the first place.

Support

How do I reach support?

By email at info@kevin-metzdorf.com — on business days, with a reply usually within one to two business days, in English or German.

Who is behind the app?

Kevin Metzdorf — Shopify developer and consultant with more than seven years of e-commerce experience. The app is built with the same craft client projects get: data model first, then code.

What the app deliberately does not do

Clear edges beat disappointed expectations — this is what the app is not built for:

  • No driving-distance or route calculation — straight line by design
  • No miles, kilometres only
  • No multi-location (distance from the nearest warehouse)
  • No free-shipping-above-threshold inside the app
  • No delivery dates or time slots
  • No label printing, no tracking — the app calculates prices only
  • Distance mode is not worldwide (twelve countries)
Trusted by

Questions about the app — or about your whole shop?

25 minutes, free of charge. Whether it's about the app or your Shopify setup as a whole — afterwards you'll know the next sensible step.