Shopify local delivery setup lets you offer same-day or next-day delivery to customers within a defined zone — using your own driver, a staff member, or a hired courier — directly from your Shopify admin, without a third-party app. If you run a Shopify store in South Africa and sell locally (a bakery, florist, butcher, homeware brand, or any retailer serving a specific suburb or city), activating local delivery can convert customers who would otherwise abandon checkout because courier timelines are too slow.
This guide walks through every setting in the Shopify Help Centre's local delivery documentation, explains the SA-specific decisions (postal codes vs. radius for SA suburbs), and tells you exactly when Shopify's built-in tools are enough — and when you need an app.
Local delivery differs from carrier shipping and from local pickup: the order goes to the customer's door using your own logistics, not a national courier network. That gives you direct control over speed, cost, and the delivery experience — but also means the admin and routing land on you. Getting the setup right from day one prevents the most common issue SA stores face: delivery zones that are too broad, pricing that doesn't cover fuel costs, and notification gaps that leave customers guessing where their order is.
Quick Answer
Shopify local delivery setup is activated in Settings > Shipping and delivery > Local delivery. Select your location, enable local delivery, and configure up to 10 zones using a postal code list or a radius of up to 160 km. Each zone gets its own delivery fee and optional minimum order value. Shopify handles the checkout and order tagging; for route optimisation and a driver app, you will need a delivery management app once order volume grows beyond a handful of drops per day.
Jump to a section
What Shopify Local Delivery Does (and Doesn't)
Configuring Zones for SA Stores
When Native Shopify Is Enough vs. When You Need an App
Managing Deliveries Without Drowning in Admin
Need someone to configure your Shopify store correctly from the start?
Send us your current setup and we'll identify exactly what's blocking your local delivery from showing at checkout.
Get a free Shopify reviewWhat Shopify Local Delivery Actually Does — and Where It Stops
Shopify's native local delivery feature manages the checkout side of the transaction well. When a customer in your designated zone enters their address, local delivery appears as a fulfilment option alongside any carrier shipping rates you have active. The customer chooses it, pays any delivery fee you have set, and the order is tagged in your admin as a local delivery order.
That is where Shopify's built-in work ends. The native feature does not provide:
- Route optimisation for multiple stops in sequence
- A mobile driver app with navigation
- Proof of delivery (photo, signature, or barcode scan)
- Live customer tracking with estimated arrival time
- Cash-on-delivery collection or reconciliation
For a store doing five deliveries a day from a single location, with one driver who already knows the routes, that list is manageable. For a bakery running 30 same-day drops across three suburbs on a Saturday morning, the native feature becomes a bottleneck before lunch.
What native Shopify local delivery is built for
Checkout-side zone enforcement, delivery fee calculation, and order confirmation emails with delivery instructions — all without an app. Route management, driver tracking, and proof of delivery require a dedicated delivery app.
One important limitation for South African stores: Shopify local delivery is not compatible with Apple Pay, Google Pay, Amazon Pay, PayPal, or B2B standard checkouts. Customers using any of those payment or checkout methods will not see local delivery as an option — Shop Pay is the exception and does work.
Given that Shopify Payments is not available in South Africa, most SA stores process payments through PayFast, Peach Payments, or Yoco, which use standard checkout flows and are unaffected by this limitation. B2B stores using Shopify's B2B standard checkout should note this constraint before building a local delivery workflow. Verify your gateway and checkout type before going live.
Shopify Local Delivery Setup: Step-by-Step Walkthrough
The complete shopify local delivery setup takes fewer than 20 minutes if you have your zone information ready before you open the admin. Follow these steps in order.
Step 1: Navigate to local delivery settings
In your Shopify admin go to Settings > Shipping and delivery. Scroll down to the "Local delivery" section and click "Set up" next to the location you want to activate it for. If you have multiple locations, you will configure each one separately.
Step 2: Enable local delivery for the location
Check the box labelled "This location offers local delivery" (some admin versions show "Deliver orders to customers directly from this location"). Without this step, no zone you create will surface at checkout.
Step 3: Create your first delivery zone
Click "Add zone" and give it a name (e.g., "Sandton Same-Day" or "Cape Town Southern Suburbs"). Choose either postal codes or a radius — see the next section for the SA-specific choice.
Step 4: Set the delivery fee
Enter a delivery price for the zone. Enter zero for free delivery. You can add up to three additional price-based rules per zone — for example, free delivery above a minimum cart value, or a reduced fee for mid-range orders. Test every rule combination with a test order before going live to confirm the correct rate appears for each cart total.
Step 5: Set a minimum order value (optional)
If you want to prevent local delivery from appearing for orders below a certain value — useful for covering fuel costs on small orders — set a minimum order price. Leave it blank to show local delivery for any order size.
Step 6: Add delivery information for customers
In the "Delivery information" field, add anything the customer needs to know: your delivery window ("We deliver Monday–Friday, 9am–5pm"), a note about perishables, or a contact number. This text appears automatically in order confirmation emails for local delivery orders.
Step 7: Save and test
Place a test order from an address inside your zone. Confirm local delivery appears at checkout as an option, the correct fee is shown, and the confirmation email includes your delivery information text. If the option does not appear, the most common cause is the address not being verifiable by Google, or the address falling outside the zone boundary.
The one setting that blocks local delivery most often
Shopify requires customer addresses to be verifiable by Google Maps. SA addresses in informal settlements, newly developed estates, or areas with non-standard street naming sometimes fail this check. If local delivery is not appearing for a valid customer in your zone, postal code-based zones are more reliable than radius-based zones for these edge cases, because they match on code rather than geocoordinate.
Configuring Delivery Zones for South African Stores
Shopify gives you two methods for defining where you deliver: a radius in kilometres from your location, or a list of postal codes. For most SA stores, postal codes are more reliable — and here is why.
| Method | Best for | SA watchout |
|---|---|---|
| Radius | Rural stores with a clear geographic boundary; single-suburb urban stores | A 10 km radius from Rosebank includes parts of the N1 highway and areas you cannot practically reach in 30 minutes during peak traffic. Radius ignores road layout. |
| Postal codes | Dense metro areas; stores with distinct suburb lists; tiered pricing by area | SA postal codes cover suburbs fairly precisely — Sandton 2196, Randburg 2125, Fourways 2055, etc. You can build an exact list of the suburbs you serve. Up to 3,000 characters (comma-separated), which accommodates roughly 200–300 four-digit codes per zone. |
You can create up to 10 zones per location. When configuring Shopify local delivery zones South Africa for a Johannesburg-based store, a practical structure looks like this:
- Zone 1 — Same-day (inner suburbs): Sandton, Rosebank, Illovo, Parktown, Houghton [8–10 postal codes]
- Zone 2 — Same-day (mid suburbs): Midrand, Randburg, Fourways, Bryanston [10–15 postal codes]
- Zone 3 — Next-day (outer suburbs): Pretoria North, Centurion, Roodepoort [20+ postal codes]
The radius option (up to 160 km) is more useful for a store in a smaller town — a farm stall in the Winelands targeting deliveries within 30 km, for instance — where road layout is simpler and postal codes are less granular.
Using Shopify local delivery postal codes for SA zones
South African postal codes are four digits. For Shopify's zone input, list them comma-separated: 2196, 2125, 2055, 1685. Test each zone with a real address from inside and outside the boundary before going live — SA's non-sequential code distribution means visual spot-checks miss edge cases.
If you are setting up in Cape Town, the Southern Suburbs (Claremont 7708, Kenilworth 7745, Wynberg 7824) and the Atlantic Seaboard (Sea Point 8060, Green Point 8051) are natural zone divisions. Durban stores typically separate the Berea/Morningside/Umhlanga cluster from the Southern Suburbs (Amanzimtoti 4126, Westville 3629) in at least two zones because delivery times differ significantly.
Not sure how to structure your delivery zones for your SA city?
Share your store location and target suburbs and we will map out a zone structure that reflects actual delivery times, not just distances.
Get your zone plan reviewedWhen Native Shopify Local Delivery Is Enough — and When You Need an App
The decision to run on Shopify's native tools versus adding a delivery management app comes down to three variables: daily order volume, number of drivers, and whether you need proof of delivery. The table below gives you the threshold for each.
| Situation | Native Shopify | Add a delivery app |
|---|---|---|
| Daily local delivery orders | Fewer than 10 | 10 or more |
| Number of drivers | 1 driver who knows the route | 2 or more drivers, or rotating staff |
| Proof of delivery required | Not required by your SLA or customer | Required (high-value goods, B2B clients, disputes) |
| Live tracking for customers | Not expected | Customers expect an ETA or tracking link |
| Route optimisation | Driver manages manually | Multi-stop sequencing needed to keep costs down |
| Verdict | Native is workable; start here | Add LionWheel, EasyRoutes, or Routella |
If you cross any two of the thresholds above simultaneously — say you have 8 daily orders but two drivers — move to an app. The manual coordination overhead compounds faster than the order count alone suggests.
Delivery app options for SA stores
Three apps are worth evaluating when you need a Shopify delivery management app for growing order volume:
LionWheel — Free plan covers up to 20 deliveries per month with basic route planning. The Basic plan at $79/month (approximately R1,300/month at the August 2026 index rate) handles up to 200 monthly deliveries with a driver app, proof of delivery, and real-time tracking. The Scale plan at $199/month (approximately R3,270/month) adds WhatsApp notifications and barcode scanning for up to 700 monthly deliveries. Notably, LionWheel has reviews from SA stores and supports WhatsApp-based customer notifications — useful in a market where WhatsApp is the dominant customer communication channel.
EasyRoutes — A "Built for Shopify"-certified app that EasyRoutes reports is used by 5,000+ businesses across 75+ countries. Integrates directly into Shopify admin (no separate login), writes fulfilment status back automatically when a delivery is completed, and offers SMS and email notifications with custom branding. Pricing is available on their site; a free trial is available without a credit card.
Routella — Offers a free plan with 1 driver and 50 orders per month, which covers many early-stage SA stores. Automatic write-back to Shopify's fulfilment status on delivery. Useful for stores testing local delivery before committing to a paid tier.
What works: A Cape Town homeware brand starts with Shopify's native local delivery for 6–8 drops per day using one driver. Three months later, volume grows to 25 daily drops across two drivers. They add LionWheel's Basic plan. The driver app handles routing and captures proof of delivery photos. The owner stops spending 45 minutes per morning manually assigning addresses.
What doesn't: A Joburg bakery activates local delivery with a 15 km radius, assuming it covers "northern suburbs." The radius includes parts of Alexandra and stretches of the N3 that no driver realistically serves. Customers outside the practical delivery area place orders and receive confirmation, then get a call saying the store can't reach them. Using named postal codes from the start prevents this entirely.
Managing Deliveries Without Getting Buried in Admin
Shopify's fulfilment workflow for local delivery orders is straightforward once you know the sequence. In your Orders admin, local delivery orders are tagged and filterable. For each order:
- Open the order and select the option to prepare and dispatch it — this prints a packing slip and marks the order as ready for delivery.
- Hand the packed order to your driver with the packing slip.
- When the order is delivered, mark it as delivered in the order admin — this triggers a delivery confirmation email to the customer automatically.
You do not need to write or send the confirmation email manually. If you added delivery information text during zone setup (your delivery window, a contact number), that text appeared in the earlier order confirmation email — so the customer already had instructions before the driver arrived.
One admin point worth flagging: every person who needs to prepare orders or mark them as delivered requires Shopify admin access. For a small team this is fine. For a larger operation where you want drivers marking orders delivered from their phones without full admin access, a delivery app with its own driver portal (LionWheel, EasyRoutes) gives you tighter permission control.
Shopify local delivery vs. SA courier services: when the numbers shift the decision
Economy door-to-door courier delivery in SA has a published starting rate from major carriers including The Courier Guy, Aramex, and RAM — with additional surcharges for outlying areas and volumetric weight. If your in-house local delivery costs — driver time, fuel, vehicle wear — work out to less per drop than the courier starting rate for your route, in-house delivery may be the more cost-effective model.
At low volume within a compact zone, this calculation often favours in-house operations for metro-based stores. At higher volume or wider zones, the economics typically shift back toward courier integration. Run the actual numbers for your specific routes before committing to either model.
For local delivery ecommerce South Africa operators running courier fulfilment alongside local drops, keep the two flows separated in Shopify's settings. Local delivery zones apply only to the specific location you configured them for — they do not automatically apply to other locations, and they do not interact with your shipping profiles unless you deliberately configure them to.
If you have a shipping profile that includes the same location, test both checkout paths before launch to confirm customers in your local delivery zone see the intended option. For a wider look at ecommerce fulfilment in South Africa, including when to switch from in-house to a third-party fulfilment model, that post covers the decision framework in full.
Why South African Businesses Choose Growth Pulse Media for Shopify
Growth Pulse Media is a registered Shopify Partner based in Johannesburg. Dirk van Greuning built and scaled a South African ecommerce operation before founding the agency — which means the advice here comes from someone who has configured shipping zones, argued with courier integrations at 2am before a campaign launch, and learned the difference between a zone that looks right on a map and one that actually gets orders delivered. That operator background is what separates GPM's Shopify marketing and setup work from generic agency output.
GPM works with a limited number of clients at a time so that every store configuration — including shopify local delivery setup, checkout optimisation, and fulfilment workflow — gets senior attention rather than being delegated to a junior. All work is executed in-house, not subcontracted.
If your local delivery is not appearing at checkout, your delivery zones are too broad, or you are ready to add a delivery app but are not sure which fits your volume, a free consultation will give you a clear answer. No obligation — we respond within 24 hours.
Who This Setup Is NOT For
Stores with purely national sales — If all your customers are spread across SA and none are within a practical delivery radius of your location, local delivery adds checkout complexity without benefit. Your fulfilment model is courier-based and that is the right tool.
High-volume operations needing route optimisation from day one — If you are launching with 30+ daily local deliveries across multiple drivers, Shopify's native local delivery is not your starting point. Begin with EasyRoutes or LionWheel from launch; the native feature will slow you down before the end of the first week.
Stores using Apple Pay or Google Pay as primary checkout methods — Shopify local delivery is incompatible with these accelerated checkout methods. If your customer base predominantly uses Apple Pay or Google Pay, they will not see the local delivery option. Check your payment method analytics before investing setup time here.
Ready to get your Shopify store fully configured?
Tell us about your store and we'll assess whether local delivery, carrier integration, or a hybrid setup fits your fulfilment model best.
Book your free Shopify auditFrequently Asked Questions
Does Shopify local delivery work with SA postal codes?
Yes. Shopify's local delivery zone setup accepts comma-separated postal codes, and South African four-digit postal codes work directly in this field. You can enter up to 3,000 characters of postal codes per zone, which covers roughly 200–300 four-digit codes — enough to define a comprehensive suburb list for any SA metro. Postal code zones are more reliable than radius zones for SA stores because they match on code rather than geocoordinate, avoiding the issue of a radius that includes roads or areas the store cannot practically serve.
Do I need a Shopify app to use local delivery in South Africa?
No — Shopify's built-in local delivery settings handle checkout, zone enforcement, delivery fees, and order confirmation emails without an app. An app becomes necessary when you have multiple drivers, need route optimisation, or require proof of delivery. For stores with fewer than 10 daily local drops and a single driver, the native feature is workable. Options like Routella (free up to 50 orders/month) and LionWheel (free up to 20 deliveries/month) provide a no-cost starting point for stores that need basic route management.
Why is local delivery not showing at checkout for my Shopify store?
The most common causes are: the customer's address is not verifiable by Google Maps (common with newer SA estates or non-standard street addressing); the customer is using an incompatible checkout method (Apple Pay, Google Pay, Amazon Pay, PayPal, or a B2B standard checkout); or all products in the cart are not available from the location where local delivery is enabled. Check each of these in order. If the address is the issue, postal code-based zones reduce the dependency on Google address verification.
How many local delivery zones can I set up in Shopify?
Shopify allows up to 10 delivery zones per location. Each zone can use either a postal code list or a radius, and each zone has its own delivery fee, optional minimum order value, and up to three price-based conditional rules. For a typical SA metro store, three to five zones — structured around concentric rings of same-day and next-day delivery areas — are enough to cover the practical delivery footprint without overcomplicating zone management.
Can I charge different delivery fees for different suburbs in Shopify?
Yes. Each delivery zone you create has its own delivery fee — set a lower rate for close-in suburbs and a higher rate for those further out by placing each group of postal codes in a separate zone. Within a single zone you can also add up to three order-value-based rules, such as free delivery above a minimum cart value, to encourage larger orders and offset delivery costs. This gives you a pricing structure that reflects your actual fuel and time costs per area.
Does Shopify local delivery work with all Shopify plans?
Yes — Shopify's local delivery feature is available on all paid Shopify plans (Basic at $39/month through to Advanced at $399/month). There is no plan tier restriction on local delivery zone configuration. The distinction is not plan level but order management: the native feature is plan-agnostic, while advanced delivery app features (driver tracking, proof of delivery, WhatsApp notifications) depend on the app's own pricing tier.
Get Your Shopify Local Delivery Working Correctly
Growth Pulse Media is a registered Shopify Partner. We configure local delivery zones, diagnose checkout issues, and integrate delivery apps for SA stores — with senior attention on every build, no juniors, and all work done in-house. Whether you need postal code zones set up correctly for your city, a delivery app recommendation matched to your volume, or a full Shopify audit, we can help. No obligation — we'll get back to you within 24 hours.
Get your free Shopify consultation

