Jump to content

One Country, several shipping Zones


pmmp

Recommended Posts

Hi all,

I will start with congrats to the developers: this is a very slick eCommerce solution. Thanks heaps!

But .. of course there had to be a but: shipping.

There are several posts (supposedly) addressing this issue of single-country / multi-zones. My take from all the posts: get an add-on. That may be what we end up doing but really?

I mean come on, even in France you'd have this issue. Surely it isn't going to be the same shipping cost from Paris to Nantes and say Paris to Bastia. So how would one deal with such a simple case in a basic Prestashop installation?

This is what I've tried:

  • Create fictitious states/provinces and assign zones to those.
  • Assign zones in carrier record with different prices.

Got stumped when asked to assign a zone to the country... no carrier showed up in the cart.

So tried:

  • Create one zone for the whole country
  • Assign new zone to country
  • Assign new zone in the carrier record 

That sort of worked: one single shipping option for the whole country, it completely ignored the other zones, even when changing the city, etc. So definitely not the desired result.

Also tried:

  • add a carrier per zone

Didn't improve anything: no carrier shows at checkout. At which point I resorted to seek help.

So how would one do this? It's a simple ask:

  • One country
  • Several zones (each with different shipping cost)
  • Zone and carrier selected automatically from customer address, or manually selected at checkout if there are different carriers

Please, someone, please, please, please.

Kind regards to all.

 

Link to comment
Share on other sites

  • 2 weeks later...

Hi All,

10 days, not a peep. Sad. Is this shipping issue such a dead horse that no one want to flog it any more?

Is there really no new information out there that a kind soul would share?

Kind regards.

Link to comment
Share on other sites

'ecommerce is easy, shipping is hard'

This may solve, I use Spain as an example:  note, see addons for a module that might help.

1. Create Custom Zones for Each Region

  • Go to: International > Locations > Zones.

Add new zones for each shipping region, e.g.:

  • Spain - Peninsula
  • Spain - Canary Islands
  • Spain - Balearic Islands
  • Spain - Ceuta/Melilla

2. Assign States/Provinces to the Correct Zone

  • Go to: International > Locations > States.
  • Edit each state (province/region) and assign it to the appropriate new zone:
  • Assign Canary Islands to Spain - Canary Islands
  • Assign Balearic Islands to Spain - Balearic Islands
  • Assign Ceuta and Melilla accordingly
  • Assign all Peninsular provinces to Spain - Peninsula

3. Set Up Carriers for Each Zone

  • Go to: Shipping > Carriers.
  • Edit or add carriers, and in the "Shipping locations and costs" step:
  • Select only the zone(s) you want this carrier to serve.
  • Set rates accordingly.
Link to comment
Share on other sites

@El Patron

Thank you for the help.
I had started along the same lines. I'm in New Zealand so I created two zones (North and South Island), two states (North and South Island, each assigned to their respective zones), then two carriers (each assigned their unique specific zone.)

And after reading your post and checking my settings I realised the omission... duh! 🙄
In the International > Locations > Countries section, remember to add the field 'State:name' to the address (if not there already.) Else the system can't know what state/zone/carrier to offer at checkout.

Just tested: all good. 
May this help others who got stuck.

  • Like 1
Link to comment
Share on other sites

  • 8 months later...
On 5/14/2025 at 11:29 AM, pmmp said:

Hi all,

I will start with congrats to the developers: this is a very slick eCommerce solution. Thanks heaps!

But .. of course there had to be a but: shipping.

There are several posts (supposedly) addressing this issue of single-country / multi-zones. My take from all the posts: get an add-on. That may be what we end up doing but really?

I mean come on, even in France you'd have this issue. Surely it isn't going to be the same shipping cost from Paris to Nantes and say Paris to Bastia. So how would one deal with such a simple case in a basic Prestashop installation?

This is what I've tried:

  • Create fictitious states/provinces and assign zones to those.
  • Assign zones in carrier record with different prices.

Got stumped when asked to assign a zone to the country... no carrier showed up in the cart.

So tried:

  • Create one zone for the whole country
  • Assign new zone to country
  • Assign new zone in the carrier record 

That sort of worked: one single shipping option for the whole country, it completely ignored the other zones, even when changing the city, etc. So definitely not the desired result.

Also tried:

  • add a carrier per zone

Didn't improve anything: no carrier shows at checkout. At which point I resorted to seek help.

So how would one do this? It's a simple ask:

  • One country
  • Several zones (each with different shipping cost)
  • Zone and carrier selected automatically from customer address, or manually selected at checkout if there are different carriers

Please, someone, please, please, please.

Kind regards to all.

 

I’m running into the same issue myself and it’s been really frustrating. I also tried setting up multiple zones within a single country in Prestashop, assigning different carriers and prices, but the checkout either ignores the zones entirely or doesn’t show any carriers at all. It seems like the system isn’t designed to handle multiple zones per country without extra modules, which feels like such a basic requirement for shipping calculations.

I’ve seen a lot of threads suggesting add-ons, but I was hoping there might be a native way to get this working without paying for something extra. So far, nothing I’ve tried  fictitious states, multiple carriers, or manually assigning zones — has worked consistently. If anyone has figured out a clean way to do single-country multi-zone shipping that actually works at checkout, I’d really love to hear it because I’m stuck in the same situation.

Link to comment
Share on other sites

@martinvilla

16 hours ago, martinvilla said:

but the checkout either ignores the zones entirely or doesn’t show any carriers at all

 Did you remember to update the address template and add the required field (state:name, etc)? Prestashop will need it in order to pick the right zone, shippers, etc.

The last two posts prior to yours, on 25 & 27 May 2025, explain all the steps. And I can assure you the system works.

Link to comment
Share on other sites

On 5/24/2025 at 9:12 AM, PrestaHeroes.com said:

'ecommerce is easy, shipping is hard'

This may solve, I use Spain as an example:  note, see addons for a module that might help.

1. Create Custom Zones for Each Region

  • Go to: International > Locations > Zones.

Add new zones for each shipping region, e.g.:

  • Spain - Peninsula
  • Spain - Canary Islands
  • Spain - Balearic Islands
  • Spain - Ceuta/Melilla

2. Assign States/Provinces to the Correct Zone

  • Go to: International > Locations > States.
  • Edit each state (province/region) and assign it to the appropriate new zone:
  • Assign Canary Islands to Spain - Canary Islands
  • Assign Balearic Islands to Spain - Balearic Islands
  • Assign Ceuta and Melilla accordingly
  • Assign all Peninsular provinces to Spain - Peninsula

3. Set Up Carriers for Each Zone

  • Go to: Shipping > Carriers.
  • Edit or add carriers, and in the "Shipping locations and costs" step:
  • Select only the zone(s) you want this carrier to serve.
  • Set rates accordingly.

this worked for other did you do same? remember to read previous posts before saying you have similar problem or open a new post if you issue is different for best resutls.

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...