
Originally Posted by
nev
Handling Fee:
I would like to offer an option of free regular shipping & handling on order of over 100$.
And there is an option to set this up in the Canada Post Shipping profile. However regardless of where I set up the handling fee (it’s a fixed 2$ fee) even when the purchase is over 100$ and the free shipping kicks in, the regular shipping shows 2$ cost (the handing fee). Anyone have any ideas how to have the free shipping be really free by using the CP shipping module?

Originally Posted by
nev
For the handling fee:
What Canada Post said was that for the handing fee not to be calculated when shipping is free it needs to be set up in the CP module.
Something to the effect of
if returned shipping value from CP = 0 then CP handling fee =0 (null) what ever.
Well, you could simply set up Zen Cart to offer a free-shipping option based on the cart value being over $100. You can do that in Admin->Modules->Order Total->Shipping.
Alternatively you can set it up in Admin->Modules->Shipping->Free Shipping Options if you need more granular control.
Or, if you need to do it in the CP module, you'll have to edit code by changing this:
Code:
if ( $this->cp_online_handling == true) {
if ( $method == '' || $method == $type ) {
$methods[] = array('id' => $type,
'title' => $type,
'cost' => $cost + $this->handling_cp);
}
} else {
if ( $method == '' || $method == $type ) {
$methods[] = array('id' => $type,
'title' => $type,
'cost' => (MODULE_SHIPPING_CANADAPOST_SHIPPING_HANDLING + $cost));
}
}
to this:
Code:
if ( $this->cp_online_handling == true) {
if ( $method == '' || $method == $type ) {
$methods[] = array('id' => $type,
'title' => $type,
'cost' => $cost + ($cost == 0 ? 0 : $this->handling_cp));
}
} else {
if ( $method == '' || $method == $type ) {
$methods[] = array('id' => $type,
'title' => $type,
'cost' => $cost == 0 ? 0 : (MODULE_SHIPPING_CANADAPOST_SHIPPING_HANDLING + $cost));
}
}
}