
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.
- 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
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.
What it looks like

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
The postcode delivery method now shows up at checkout next to the Nova Poshta, Ukrposhta and ROZETKA widgets.
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


Nova Poshta Premium — a Nova Poshta module for OpenCart 2.3, 3.x and 4.x

LiqPay — Card Payments for OpenCart 2.3, 3.x and 4.x

Telegram notifications and Viber/SMS for customers for OpenCart
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:
10115exact,10*prefix,10115-10999range,!10117exclusion. 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
- You create a “Centre” zone: Germany,
10115-10179and!10117, delivery 4.90, free from 50, minimum 25. - A customer enters 10115 on the product page — “Yes, we deliver to 10115 (Centre). Delivery 4.90 (free from 50). Minimum order 25”.
- 10117 — “Sorry, we don’t deliver to this postcode”: the exclusion from the range works.
- At checkout with a cart of 20 the method shows “add 5 more”, with 30 — a fee of 4.90, from 50 — free.
- 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
- OpenCart 4.x: Extensions → Installer → Upload
cc_pdzones.ocmod.zip→ “Install” in the list. - OpenCart 3.x: Extensions → Installer → Upload
cc_pdzones-oc3-1.0.1.ocmod.zip, then Modifications → Refresh. - OpenCart 2.3: the stock 2.3 installer copies files only over FTP. Without FTP, upload the contents of the
upload/folder fromcc_pdzones-oc2-1.0.1.ocmod.zipto the store root. - Extensions → Extensions → Shipping → Postcode Delivery Zones → “Install”, then “Edit”.
- “General” tab: status “Enabled”. “Zones” tab: add a zone, postcodes, fee and minimum, save. Check a postcode with the tester.
- 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.
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.
No reviews yet. Be the first.
No questions yet. Ask one — we answer within 24 hours.
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
Buying the module
—