Delivery zones — cover every buyer you can actually serve
What a delivery zone is on KampalaSnap, how they match buyers to fees at checkout, and how to set them up so you never accept an order you can't fulfil.
The rule that decides whether a buyer can check out
A delivery zone is a piece of your shop's fulfillment setup that answers three questions at once for every catalog order:
- Where do you deliver?
- What method — boda, express, pickup?
- What does the buyer pay for delivery?
If a buyer's town isn't inside one of your zones (and none of your zones is nationwide), the checkout system politely tells them: "This seller does not deliver to your selected area." They cannot place the order. This is protection for both sides — you don't get stuck with a delivery you can't fulfil, and the buyer doesn't pay for a shipment that isn't coming.
You have to set up at least one zone before you can submit catalog products for review. This is enforced — the submit step refuses with a clear message until a zone exists.
What a zone is made of
Every zone carries exactly four things:
- A name — e.g. Kampala Central, Wakiso, Nationwide. Only you see this label; buyers see the fee + delivery method, not the name.
- A delivery option — the method (see the next section).
- A fee in UGX — a single flat number. No tiered pricing, no weight-based rules, no distance-based rules today.
- Coverage — either Nationwide (covers every shippable location Uganda-wide) or a list of towns / cities / districts you pick from KampalaSnap's shippable-location list.
A zone is either Active (buyers can check out through it) or Paused (temporarily suspended without deleting it — useful when a rider is on leave). You can toggle this any time from the Edit page.
The four delivery options you can pick from
Admin manages the delivery-option catalogue. Today four are available:
| Option | How the fee works | Estimated time |
|---|---|---|
| Standard Boda | Uses your zone's fee as-is | Same day within Kampala |
| Express Boda | Your zone's fee + 3,000 UGX | Within 2–3 hours |
| Self-Pickup | Fee is forced to 0 (ignores your zone fee) | Arrange with seller |
| Pickup Station | Fee is forced to 0 (ignores your zone fee) | Within 24 hours |
The two "Pickup" options exist so buyers can choose to collect the item instead of paying for delivery — those flows also bypass the zone-coverage check (the buyer is coming to you, not the other way around).
The estimated delivery time is a property of the option, not the zone — so buyers see "Express Boda · 2–3 hours" whether the zone is Kololo or Ntinda. If your rider is slower or faster than that, tell the buyer directly in your product photos or description.
How the checkout matches a buyer to a zone
When a buyer picks a delivery address and clicks Checkout, the matching runs like this:
- Buyer picks a delivery zone from the ones you've set up. The catalog shows only your active zones.
- If that zone is Nationwide — checkout proceeds. Any Ugandan town the buyer entered is accepted.
- If that zone is not nationwide — the buyer's chosen delivery location has to be one of the towns you ticked when you built the zone. If it's not, the checkout is rejected with the "does not deliver to your selected area" message.
- Fee is calculated from the zone's fee plus any adjustment the delivery option adds (Standard adds nothing, Express adds 3,000, both Pickup options force it to 0).
- That final fee lands on the order, and the buyer's money goes into escrow along with the item price.
There is no fallback zone. There is no "nearest zone" logic. It's a strict membership check.
Two ways to build "I ship everywhere" cheaply
If you honestly can ship anywhere in Uganda:
- Option A — one Nationwide zone. One zone, one flat fee, covers every buyer. Simplest possible setup.
- Option B — a few named zones with different fees. For example: Kampala Central at 5,000, Greater Kampala at 8,000, Upcountry Bus Park at 12,000. Buyers self-select which zone matches their address and pay the fee that fits your actual cost.
Option B is honest about the real cost of reach. Option A is simpler but eats your margin on distant deliveries and overcharges on close ones. Most sellers grow from A into B once they've done a few upcountry deliveries.
Two ways to build "I only ship locally"
If you can't ship everywhere:
- Local zone(s) only. Create Central Kampala and skip Nationwide entirely. Buyers in Mbale simply won't be able to order — which is exactly what you want, so you're not stuck refunding failed deliveries.
- Local zone + a Self-Pickup zone at 0 UGX. Buyers outside your delivery area can still buy if they're willing to come to you.
The rules the system enforces for you
- A zone with no towns and not marked Nationwide won't save. The form blocks it with "Pick at least one town, or check cover everywhere."
- You can't submit a catalog product for review until you have at least one active zone. The submit endpoint checks and refuses. The dashboard's readiness card also flags this.
- Only towns on KampalaSnap's shippable list are pickable. The
list comes from the platform's canonical location table
(districts, cities, towns marked shippable by admin). If a town
you serve isn't on the list, email
support@kampalasnap.comand we'll add it.
What zones do not do (things people expect but the system
doesn't have today)
Being clear so you don't build a business around a feature that isn't there:
- No free-delivery threshold. There is no "free over 100,000 UGX" setting. Every order in a zone pays that zone's fee, regardless of cart total.
- No dynamic pricing. No weight-based fees, no distance-based fees, no time-of-day fees. Flat number per zone, that's it.
- No per-zone ETAs. The estimated delivery time is on the method (Standard / Express / Pickup), not the zone. All your Standard Boda zones share the same "Same day" estimate.
- Zones are shop-wide, not per-product. Every catalog product
in your shop uses the same set of zones (unless the product has
a
delivery_mode_overrideset topickup, which makes it pickup-only). You can't say "Product A ships to Mbarara, Product B doesn't."
If you need any of these, WhatsApp support and describe the scenario. If enough sellers ask for the same thing, it earns a place on the roadmap.
Editing without breaking in-flight orders
When you edit a zone (change the fee, add or remove towns), your change applies to future orders only. Orders already in escrow — paid, dispatched, or waiting for the PIN — keep the fee they were placed with. Deleting a zone works the same way: past orders resolve normally; only future checkouts stop seeing that option.
If you delete or pause every zone and don't leave a Self-Pickup alternative, new catalog checkouts for your shop will fail. Buyers already mid-flow (their order paid) are unaffected.
The right zone strategy for the shop you actually run
"I only sell inside Kampala." One or two local zones is enough. Set fees that match what a boda actually costs you plus a small margin. Don't create a Nationwide zone just because you could — it will cause an order you have to refund.
"I have a rider network but only in the central belt." Multiple zones — Central Kampala, Greater Kampala, Wakiso, Entebbe — each priced to match its ride cost. Skip Nationwide.
"I ship anywhere via bus park." Nationwide zone with a fee that covers the bus-park drop. Consider adding a cheaper local zone so Kampala buyers don't overpay for something they could receive by boda.
"I don't deliver at all — buyers come to me." Only a Self-Pickup zone at 0 UGX. You'll never accept a delivery you can't fulfil because you literally can't.
Common questions
What if a buyer's town isn't on the shippable list?
The town isn't yet part of KampalaSnap's canonical location tree.
Email support@kampalasnap.com with the town + district and we'll
add it in the next reference-data update. In the meantime the
buyer can't pick it as a delivery address.
Can I have two zones covering the same town?
Yes — buyers just pick one at checkout. Some sellers do this to offer both Standard Boda and Express Boda for the same area at different fees. Both zones are listed; the buyer chooses.
If I mark a zone Paused, does it disappear?
Paused zones stop appearing at checkout but the row and its coverage are preserved. Reactivate any time with one click. Delete only if you're sure you're not coming back.
Does verifying my shop change any zone rules?
The requirement to have at least one zone before submitting a catalog product is the same for verified and non-verified shops — but only verified shops can list catalog products in the first place. So in practice, zones only matter once you're verified.
Do zones interact with the affiliate program?
Not directly. A creator promoting your product doesn't get their own delivery flow — every buyer that comes through a creator link still picks one of your zones. The commission math and the delivery math are separate.
Do zones apply to non-catalog products (basic shop items posted
from the Products tab)?
Delivery zones are a catalog-specific structure. Basic Product-tab
items use the older shop-level delivery_mode (prepaid / COD /
pickup) and don't run through the zone-matching check. If you're
mostly selling basic items, you can still create zones — they
just won't fire until you list a catalog product.
What's next
- Submitting catalog products for review — the batch-submit gate that requires at least one zone.
- Handling disputes well — what happens when a delivery actually goes wrong.