View Full Version : SHIPPING - Can someone explain

06-08-2009, 10:25 PM
The shipping section is confusing. I sort of get something working, but only for one zone.

What I need to do is the following (and can someone explain in non tech speak if possible as not a php programmer if that is required)

1. Have a number of costs per item weight (have a number of weight categories) that doesn't matter where the buyer is from (in Australia). Do I set up a table rate for this. Also, I might have to set rates based on the states of Australia - or zones. Do I set up Australia as one zone within country Australia for now or set up each individual state as a zone of Australia.

2. I also ship internationally - how do I set this up as every country has different costs per weight category. Ie. New Zealand has one set of prices, US/CA has another, UK has its own, France, etc. How do I set up zones for each of these as it seems to only let me set up one zone for shipping.

Hopefully thats clear. Thanks.

06-09-2009, 06:05 AM
Most of the included shipping methods are a template for what is possible - there are MANY other options (http://addons.oscommerce.com/category/Shipping_Modules).
Australian Shipping Module (http://addons.oscommerce.com/info/648)
Additional Shipping Options for Zone Module (http://addons.oscommerce.com/info/1752)
MultiRegion MultiTable Shipping (http://addons.oscommerce.com/info/2374)

ZONE.PHP is defaulted to a single zone - by editing it to ADD additional zones. OR by DUPLICATE (rename and change database & other variable name and in LANGUAGE file to differentiate)

06-09-2009, 06:27 AM
Thanks for reply

How do you add additional zones by editing the zone.php file?


06-10-2009, 12:30 PM
Read the file.....there is allot of notes.

06-10-2009, 05:13 PM

I opened up the file zone.php in the includesmodulesshippingzones.php and updated the line $this->num_zones = 1; to $this->num_zones = 10;

In the admin site under shipping zones, it adds a bunch of text boxes which is obviously the 10 zones I said it should have BUT, there are no labels for the boxes so the client needs to guess, and when you input data for the zones in these new text boxes and click update, they are either not being saved to the database or they are not being displayed in the admin site. Very confusing especially when it says in the notes in the file that adding multiple zones is as simple as changing the line above. Its not.

Also, do you have to go and set up a zone for each country or because the country still exists, can I just use the country code?

Pulling my hair out - sorry - but client nagging me.


06-14-2009, 07:58 PM
Can anyone help....

06-15-2009, 03:07 AM
2. I also ship internationally - how do I set this up as every country has different costs per weight category. Ie. New Zealand has one set of prices, US/CA has another, UK has its own, France, etc. How do I set up zones for each of these as it seems to only let me set up one zone for shipping.

An example zones table, for 4 zones, shipping from Japan to numerous counties (EMS shipping rates - probably outdated):

0.3:900,0.5:1100,0.6:1240,0.7:1380,0.8:1520,0.9:16 60,1.0:1800,1.25:2100,1.5:2400,1.75:2700,2.0:3000, 2.5:3500,3.0:4000,3.5:4500,4.0:5000,4.5:5500,5.0:6 000,5.5:6500,6.0:7000,7.0:7800,8.0:8600,9.0:9400,1 0.0:10200,11.0:11000,12.0:11800,13.0:12600,14.0:13 400,15.0:14200,16.0:15000,17.0:15800,18.0:16600,19 .0:17400,20.0:18200,21.0:19000,22.0:19800,23.0:206 00,24.0:21400,25.0:22200,26.0:23000,27.0:23800,28. 0:24600,29.0:25400,30.0:26200

0.3:1200,0.5:1500,0.6:1680,0.7:1860,0.8:2040,0.9:2 220,1.0:2400,1.25:2800,1.5:3200,1.75:3600,2:4000,2 .5:4700,3.0:5400,3.5:6100,4.0:6800,4.5:7500,5.0:82 00,5.5:8900,6.0:9600,7.0:10700,8.0:11800,9.0:12900 ,10.0:14000,11.0:15100,12.0:16200,13.0:17300,14.0: 18400,15.0:19500,16.0:20600,17.0:21700,18.0:22800, 19.0:23900,20.0:25000,21.0:26100,22.0:27200,23.0:2 8300,24.0:29400,25.0:30500,26.0:31600,27.0:32700,2 8.0:33800,29.0:34900,30.0:36000

0.3:1500,0.5:1800,0.6:2000,0.7:2200,0.8:2400,0.9:2 600,1.0:2800,1.25:3250,1.5:3700,1.75:4150,2.0:4600 ,2.5:5400,3.0:6200,3.5:7000,4.0:7800,4.5:8600,5.0: 9400,5.5:10200,6.0:11000,7.0:12300,8.0:13600,9.0:1 4900,10.0:16200,11.0:17500,12.0:18800,13.0:20100,1 4.0:21400,15.0:22700,16.0:24000,17.0:25300,18.0:26 600,19.0:27900,20.0:29200,21.0:30500,22.0:31800,23 .0:33100,24.0:34400,25.0:35700,26.0:37000,27.0:383 00,28.0:39600,29.0:40900,30.0:42200

0.3:1700,0.5:2100,0.6:2440,0.7:2780,0.8:3120,0.9:3 460,1.0:3800,1.25:4600,1.5:5400,1.75:6200,2.0:7000 ,2.5:8500,3.0:10000,3.5:11500,4.0:13000,4.5:14500, 5.0:16000,5.5:17500,6.0:19000,7.0:21100,8.0:23200, 9.0:25300,10.0:27400,11.0:29500,12.0:31600,13.0:33 700,14.0:35800,15.0:37900,16.0:40000,17.0:42100,18 .0:44200,19.0:46300,20.0:48400,21.0:50500,22.0:526 00,23.0:54700,24.0:56800,25.0:58900,26.0:61000,27. 0:63100,28.0:65200,29.0:67300,30.0:69400

Note: due to the size of the table values and the number of zones, this required getting 'hands dirty' with mySQL.
Also note: this was part of an extensive install, that I was paid for (for a change) ;-)

06-15-2009, 03:19 AM
Hi thanks for the reply

Got the data read to go in notepad. Only thing is when I did what the previous posts mentioned, I included 10 zones, and it showed each one as a text box ( x 3 for each destination) which they said in the notes in the php code was simply all you had to do - but - there are no labels showing for these text boxes and they don't save any data - so was wondering how I could fix that up and at least that would get me going in the short term.


06-15-2009, 04:18 AM
As stated above...

Note: due to the size of the table values and the number of zones, this required getting 'hands dirty' with mySQL.

and a touch of php, if I recall.

You'll have fun using that table verbatim, as it's in Kgs and Yen.

06-15-2009, 04:58 AM
Too dirty for me - back to the drawing board to find a simpler solution to my postage needs

11-25-2009, 02:29 AM
That has always been a problem but basically to enable zone based shipping you need te tell the engine how many zones you have, defaults to 1.

You need to edit includes/modules/shipping/zones.php and find the variable $this->num_zones for the construtor function in the zone class. Now set it to whatever you want. For the purpose of example I shall set it to 3 so we want three shipping zones (since I have UK for UK and Ireland, EU for European Member sstates and ROW for 'rest of world').

Now you have 3 zones but if you go to the admin panel and look at modules->shipping->zone rates and hit the edit button then youl see some empty text fiields with no headings and if you try to fill them in they are not saved.

There should be 3 text fields for each zone you create, namely:

Zone x Countries
Zone x Shipping Table
Zone x Handling Fee

Where x can be 1,2,3 e.t.c.

The first set of three headings should be there but nothing for subsequent entries.

Now you need to re-prime the shipping tables. First, if you want to keep your existing shipping data then back it up now because the following operation will permenantly delete all shipping information.

Click on another link then back to the zone rates link. There are two buttons, remove and edit. Click Remove. Now Click install, effectively re-installing the module and you should now see headings for each zone entry.

02-09-2010, 11:22 AM
I tried to create 4 zones, as per nixb's instructions. But when I go to the admin panel, I get the following error message:
Fatal error: Cannot redeclare class zones in /mnt/w0809/d20/s40/b02dbbb7/www/treasure-bin.com/catalog/includes/modules/shipping/zones.php on line 96

02-09-2010, 11:33 AM
Treasurebin: Thought you were using 'Max, not osC. :confused:

02-09-2010, 11:43 AM
Treasurebin: Thought you were using 'Max, not osC. :confused:

I am using Max, but couldn't find any recent info on shipping in that forum!
But I am using most recent zones.php file.

02-13-2010, 02:27 AM

I am newbie in this forum site.
There is an introduction section - please get acquainted with the layout - it will save confusion.