Get in touch
  • OpenCart
  • Shipping
  • v1.0.1

Postcode Delivery Zones for OpenCart — delivery zones by postcode, minimum order and delivery windows

Delivery by postcode: zones with a fee, "free from" and a minimum order, "Do we deliver to you?" on the product page, delivery windows at checkout. OpenCart 4.x, 3.x, 2.3, lifetime license.

Download Free
Pro · lifetime licence The more sites, the less each one costs
Compatibility
OpenCart 2.3.0.x, 3.0.x and 4.0.2 – 4.1.x
PHP
7.0 or newer
Version
v1.0.1 (OpenCart 4)
v1.0.1 (OpenCart 3.x)
v1.0.1 (OpenCart 2.3)
Licence
one site, lifetime
Trial
7 days, no card, one per site
Or all 144 Pro modules with All Access — 4 990 ₴ / year

The module in action — 44 sec

Clear even without sound: Ukrainian subtitles

What Free has,
and what Pro adds

The free version works with no time limit. Pro adds the rest of the features in the table.

Feature Free Pro
Delivery zones by postcode 3 unlimited
Postcode rules: exact, prefix "10*", range "10115-10999", exclusion "!10117" ✔ ✔
Its own shipping method: a fee per zone and "free from" ✔ ✔
Minimum order per zone — the customer sees how much is missing ✔ ✔
"Do we deliver to you?" widget on the product page and in the cart ✔ ✔
Postcode outside the zones: show a message or hide the method ✔ ✔
Texts for every store language ✔ ✔
Builds for OpenCart 4.x, 3.x and 2.3 ✔ ✔
Languages: English, Deutsch, Ukrainian, Russian ✔ ✔
Delivery windows: date and time picked at checkout, saved in the order — ✔
Window capacity — a full window disappears — ✔
Cut-off time, preparation days, closed dates — ✔
CSV import and export of zones and postcodes — ✔

What it looks like

Do we deliver to you? check on an OpenCart product page
On the product page there is a “Do we deliver to you?” block: country, postcode, button. The answer shows the zone, delivery fee, free-delivery threshold, minimum order and delivery days.
Postcode check in the OpenCart cart with the missing amount
In the cart the same block works out how much more to add to reach the zone minimum.
Shipping method with a minimum order message in the OpenCart checkout
At checkout, below the minimum the “Local delivery” method can’t be selected and the customer sees the missing amount. For a postcode outside the zones — your “we don’t deliver” text, or the method is simply hidden (your choice).

The trial starts when you ask

A fresh install is the free version, nothing switches on by itself. The “Try Pro for 7 days” button → e-mail → the key right in the window and by e-mail.

One key — one site

Moving the store? Unbind the licence on the old domain and activate it on the new one yourself. If our server is unreachable, Pro keeps working for 14 more days. For studios — keys for 5 or 25 sites, or unlimited.

Technical requirements

  • OpenCart 4.0.2 – 4.1.x, 3.0.x or 2.3.0.x — a separate archive for each branch.
  • PHP 7.0+ for the 2.3 build; for 3.x and 4.x — whatever PHP version your OpenCart requires.
  • No core modifications (OCMOD) needed: the widget is added through OpenCart events, and the shipping method is a standard “Shipping” extension.
  • Tested on clean OpenCart 4.1.0.3, 3.0.5.0 and 2.3.0.2: installation, zones, widget, minimum order, outside the zones, windows with capacity, CSV, uninstall.

Version history

v1.0.1 Current

The postcode delivery method now shows up at checkout next to the Nova Poshta, Ukrposhta and ROZETKA widgets.

v1.0.0 First release

Postcode zones with exclusions, fee, “free from” and minimum per zone, widget on the product page and in the cart; Pro.

Frequently bought with Postcode Delivery Zones for OpenCart

4 modules in one order — 40% cheaper than separately

“Store starter” bundle Postcode Delivery Zones Nova Poshta Premium LiqPay Telegram notifications and Viber/SMS for customers Need more — all 144 modules in All Access for 4 990 ₴.
3 590 ₴ lifetime instead of 5 960 UAH bought separately
Buy the bundle →

Full module description

Postcode Delivery Zones for OpenCart is your store’s own delivery by postcode. You define zones as lists of postcodes (exact, prefixes, ranges, exclusions), and every zone has its own delivery fee, free-delivery threshold and minimum order value. The customer learns whether you deliver to them already on the product page, and at checkout the shipping method only appears for postcodes you serve. Below the zone minimum the module says plainly how much is missing.

The core version is free. Up to three zones with a fee, “free from” and a minimum, and a “Do we deliver to you?” check on the product page and in the cart — no license and no time limit. Pro adds delivery windows the customer picks at checkout (the date and time are saved in the order), window capacity, cut-off time, preparation days, closed dates, unlimited zones and CSV import and export.

What the admin gets

  • Postcode rules — one per line: 10115 exact, 10* prefix, 10115-10999 range, !10117 exclusion. Spaces are ignored; UK and Polish formats are recognised too.
  • A postcode tester right on the zones tab: enter a postcode and see which zone takes it.
  • Amount basis for the minimum and the threshold — products subtotal or order total.
  • CSV (Pro) — import rules (zones are matched by name, missing ones are created; append or replace) and export with a BOM so Excel opens Cyrillic and umlauts correctly.

How it works, step by step

  1. You create a “Centre” zone: Germany, 10115-10179 and !10117, delivery 4.90, free from 50, minimum 25.
  2. A customer enters 10115 on the product page — “Yes, we deliver to 10115 (Centre). Delivery 4.90 (free from 50). Minimum order 25”.
  3. 10117 — “Sorry, we don’t deliver to this postcode”: the exclusion from the range works.
  4. At checkout with a cart of 20 the method shows “add 5 more”, with 30 — a fee of 4.90, from 50 — free.
  5. Pro: the customer picks “Centre (Tue 22/09, 10:00–14:00)”. If the window capacity is 1, the next customer won’t see that window.

Under the hood

  • One logic everywhere: the widget, the cart and the checkout shipping method all ask the same service, so the widget never promises what the checkout won’t give.
  • Its own zones table instead of hundreds of settings rows; the table stays when the extension is uninstalled, so an update or reinstall never wipes your postcode lists.
  • Window capacity is counted from placed orders with that window.
  • Time zone for the cut-off and window dates is a setting; the server time zone by default.
  • A Pro gate that doesn’t brick anything: when the trial ends, the first three zones keep working, the rest and the windows are kept until a license.

Installation

  1. OpenCart 4.x: Extensions → Installer → Upload cc_pdzones.ocmod.zip → “Install” in the list.
  2. OpenCart 3.x: Extensions → Installer → Upload cc_pdzones-oc3-1.0.1.ocmod.zip, then Modifications → Refresh.
  3. OpenCart 2.3: the stock 2.3 installer copies files only over FTP. Without FTP, upload the contents of the upload/ folder from cc_pdzones-oc2-1.0.1.ocmod.zip to the store root.
  4. Extensions → Extensions → Shipping → Postcode Delivery Zones → “Install”, then “Edit”.
  5. “General” tab: status “Enabled”. “Zones” tab: add a zone, postcodes, fee and minimum, save. Check a postcode with the tester.
  6. For Pro: the “License” tab — paste the key from the e-mail you get after payment, or start the 7-day trial.

Questions
about the module

Didn't find the answer? Message us on Telegram and we'll reply within a business day.

@catcode_support Setup, compatibility, activation
Can it be combined with other shipping methods?

Yes. Postcode Delivery Zones is a separate shipping method next to your carriers, pickup or a flat rate.

What does the customer see if the total is below the minimum?

The shipping method is shown with a message saying how much is missing to the zone minimum, and it can't be selected until the total gets there.

A postcode matches two zones. Which one wins?

The first enabled zone in the list. Change the order with the arrows on the zone card.

How do I install it on OpenCart 2.3 without FTP?

Upload the contents of the upload/ folder from the archive to the store root, then Extensions → Shipping → Postcode Delivery Zones → Install.

Do I need to renew the license?

No. For OpenCart the license is lifetime: one payment and the Pro features stay with you.

Not quite what you are looking for?

We build custom modules for WordPress, WooCommerce, OpenCart and Shopify. Tell us about the task and we'll prepare an estimate.

Order a custom module