Post by ebenjmuse » Thu Aug 08, 2013 5:05 am

Hello,
Our store sells books, so we have over 5000 and we do not know the weights of them; it is not in the catalog and we can not enter it in for the entire inventory now.
When a customer orders a book, we have a standard charge up to 1kg, but we tell them we will add extra shipping charges if the book is over the 1kg weight.
This means we need to be able to edit the shipping cost in the order form, either with an additional charge or by editing the weight based charge.
I have been unable to find a way to do either and would appreciate any help or suggestions.
Thanks,
Eben

Newbie

Posts

Joined
Sat Jun 29, 2013 4:04 pm

User avatar
Active Member

Posts

Joined
Sat Mar 30, 2013 12:27 am
Location - Springfield, MA

Post by ebenjmuse » Mon Aug 12, 2013 9:10 pm

Thanks. I thought of that and it would work if I could put in the cost when I add the product. OpenCart seems to insist that all costs are tied into the product list. If I could add the "Shipping Charge" product and enter the amount of that charge when I add it to the invoice, my problem would be solved. But how can I do that? I'm happy to edit code as needed.

Eben

Newbie

Posts

Joined
Sat Jun 29, 2013 4:04 pm

Post by tacobandito » Tue Aug 13, 2013 2:00 am

Although not ideal, without editing a bunch of code your next best bet would be to just copy the product, change the price, and add it to the order. There is likely a module that does exactly what you want somewhere in the extension store.

[module] PayPal Pro w/Recurring Profiles FREE
[module] 1 Click "Amazon Style" Checkout w/PayPal Pro FREE
[module] Adjustable PayPal Pro Fee FREE
[module] Add Sample To Cart LITE FREE
The guide to fixing just about everything wrong with OpenCart FREE!
Add INFINITE SCROLL to your homepage for FREE!
Live update product price for FREE!
Dynamic generation of Opencart coupon, FREE!
Hire me


User avatar
Active Member

Posts

Joined
Sat Mar 30, 2013 12:27 am
Location - Springfield, MA

Post by ebenjmuse » Wed Aug 14, 2013 5:22 pm

Thanks for the suggestion Tacobandito. I've searched through the forums and extentions and not found what I need. It seems like it should be simple. The order totals options seem to be very close to what I want, except I need the opposite. They reduce the price and I want to add to it.

Newbie

Posts

Joined
Sat Jun 29, 2013 4:04 pm

User avatar
Active Member

Posts

Joined
Sat Mar 30, 2013 12:27 am
Location - Springfield, MA

Post by c_es » Thu Sep 19, 2013 10:04 pm

I have the same problem. I need to change the costs, cause I estimate the shipping cost everytime new. cause the order go to different countries. the costs also changes when people order different products together. can somebody help?

Newbie

Posts

Joined
Wed May 01, 2013 12:06 am

Post by savvadia » Sat Oct 19, 2013 3:27 pm

I like the idea of adding an extra product, but it can be simplified.

Add a product "Heavy product charge", price 0.
Add a new type of option: weight
Set values to option values
1 kg
2 kg
More than 2 kg

C_es, you can set values to:
Area A
Area B
Area C

Now add this option to the "Heavy product charge".
There for every option value you can set its own price.

So you will have just one special product with as many prices as you want.

Newbie

Posts

Joined
Sat Oct 19, 2013 3:19 pm

Post by OCMaster597 » Wed Oct 23, 2019 8:35 am

[SOLVED] & tested on version 1.5.x
To sort 'weight based shipping options' by price instead of alphabetically.
You will need to do three small easy steps :

First....
1. Go to => /public_html/catalog/model/shipping/weight.php
FIND
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "geo_zone ORDER BY name");


REPLACE WITH
//$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "geo_zone ORDER BY name");
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "geo_zone ORDER BY geo_zone_id");


and save.

Next....
2. Go to your store admin panel - www.yourdomainname.com/admin/index.php? ... n/geo_zone
and create all new GeoZones that you want to use. (this is important because if you reuse your old GeoZones you will lose the weight based rates data on your weight-based shipping option) Lets not worry about adding any zones to these new GeoZones you will use for weight based shipping yet.

Finally...
3. First step is to backup your database. (you can do that inside your admin panel and save the .sql file to your desktop or external hard-drive)
Get into your 'phpMyAdmin' and click on your database. When the database is expanded, look for your "geo_zone" and click on it.
Once loaded, look on the right side (browse tab) you will see list of all your current geo_zones, your new geo_zones and their corresponding "geo_zone_id" in a numeric value. Start by finding your most expensive geo_zone for the weight based shipping option. Click edit, and change the geo_zone_id to 90, then click go, so it saves and goes back to previous screen. Then find your next most expensive geo_zone for the weight based shipping option. Click edit, and change the geo_zone_od to 89, then click go, so it saves and goes back to previous screen. And just keep going with numbering your new geo_zones in numeric value.

Example list of new geo_zones we used for weight based shipping, changing their ID:

Standard Shipping (geo_zone_id=87)
Priority Shipping (geo_zone_id=88)
Two-Day Shipping (geo_zone_id=89)
Next Day Shipping (geo_zone_id= 90)

You can create as many geo_zones as you'd like and just number them starting with the most expensive with the highest number and keep going down in numbers as you get towards you least expensive. (I started with 90 as my highest id) I suggest you use the higher number also.

From there you are pretty much all set!

Now you can go back to your www.yourdomainname.com/admin/index.php? ... n/geo_zone
and start adding zones to your new geo_zones.


Hope this helps someone, seems not a lot of answers available for this simple task. Cheers! ;)

Newbie

Posts

Joined
Thu Nov 30, 2017 2:53 am
Who is online

Users browsing this forum: No registered users and 14 guests