Zen Cart Logo
Forums / Built-in Shipping and Payment Modules / Free Shipping - Different $ for different countries

Free Shipping - Different $ for different countries

Locked

Views: 1,407

Results 1 to 3 of 3
This thread is locked. New replies are disabled.
12 Jan 2009, 4:21 AM
#1
lucky__starre avatar

lucky__starre

New Zenner

Join Date:
Sep 2006
Location:
Australia
Posts:
80
Plugin Contributions:
0

Free Shipping - Different $ for different countries

Hi,

At the moment I have:

  • Free shipping over $100 set for Australia only orders in the order total module
  • Free shipping over $150 for New Zealand orders through the free shipping module

I'd like to add a third free shipping level for international purchases, is there any easy way of doing this?

Katie
www.wiredforfibre.com.au

20 Jan 2009, 1:40 AM
#2
lucky__starre avatar

lucky__starre

New Zenner

Join Date:
Sep 2006
Location:
Australia
Posts:
80
Plugin Contributions:
0

Re: Free Shipping - Different $ for different countries

Does anyone have any ideas on this?

20 Jan 2009, 8:18 PM
#3
ajeh avatar

ajeh

Oba-san

Join Date:
Sep 2003
Location:
Ohio
Posts:
62,757
Plugin Contributions:
1

Re: Free Shipping - Different $ for different countries

You could customize the ot_shipping.php module ...

Turn it on for Free Shipping ...

Then customize the code in the function ot_shipping to something like:

      $this->output = array();
      if (MODULE_ORDER_TOTAL_SHIPPING_FREE_SHIPPING == 'true') {
        switch (MODULE_ORDER_TOTAL_SHIPPING_DESTINATION) {
          case ($order->delivery['country_id'] == 13 && (($order->info['total'] - $order->info['shipping_cost']) > 100) ):
            $extra_pass = true;
            break;
          case ($order->delivery['country_id'] == 153 && (($order->info['total'] - $order->info['shipping_cost']) > 150) ):
            $extra_pass = true;
            break;
          case 'national':
            if ($order->delivery['country_id'] == STORE_COUNTRY) $pass = false; break;
          case 'international':
            if ($order->delivery['country_id'] != STORE_COUNTRY) $pass = false; break;
          case 'both':
            $pass = true; break;
          default:
            $pass = false; break;
        }

I have not tested or played etc. with this ... I am guessing this is the changes needing off the top of my head ... :cool: