I had posted this some time back and it was purged from the forum. So I have rewritten it with greater detail.
This is an updater proof solution that is basically designed to give the customer a free shipping option without saying what service will be used. It leaves it up to the store owner to decide what method (lowest cost) will be used to ship the order.
This works well if you offer multiple shipping services and carriers.
In some cases it may encourage the customer to select a faster (paid) shipping service.
The great thing about the ect shopping cart is it's boundless options and configurations for setting up your store. So this setup may not work well for everyone, but it has served my store well and you can likely tweak it to your liking.
What we do here is setup price based shipping to work alongside our USPS and FEDEX services. The price based shipping will serve as our free shipping option.
The setup example below is for free shipping from our US based store to all States except Hawaii and Alaska at a price threshold of $99.00
Let's get started.Assuming you have multiple shipping options available to your customers, it's best to have them shown as radio choices as the drop down menus might get missed by customers. In your includes, be sure to set (if not set already)
ship options as radios
.asp shippingoptionsasradios=TRUE
.php $shippingoptionsasradios=TRUE;
STEP 1Setup your price based shipping option
Under the shipping Admin menu, select postal zones.
You will need to setup a few world zone and state zone rules.
NOTE- It's possible you might not see any state zones active and there will be a message
"Your admin settings are set to treat your States as one shipping zone. To split your States into separate shipping zones please click here."
Click there to expand state zones.
See image below
Under United States (Edit rules)
Enter selected as shown below in the image.
The x there says do not make this option available unless the order is over 99.00
Note, the TK Free Shipping is just a name we use. You can name that something else if you like.
Under ROW (rest of world) (edit rules)
Enter selected as shown below in the image.
Under Lower 48 states (edit rules)
Enter selected as shown below in the image.
Under Alaska (rest of world) (edit rules)
Enter selected as shown below in the image.
Hawaii and Others have the same settings as Alaska and in reality that could be one zone named something like Not-free-ship
STEP 2Now we will seup the free shipping discount.
Under the product Admin menu, select discounts.
Click the button to seup a new discount and enter info as shown in the image below
You can name the discount text anything you like - we have used $99+ Free Shipping Promotion
STEP 3In your admin "main settings" (Under the Store Admin menu, select main settings.) we need to turn on price based shipping.
This needs to be turned on before you can set the countries and states postal zones (step 4)
Under Use Alternate Shipping rates: set to Show all shipping carriers together.
Then for domestic shipping tick the box to activate price based shipping, keeping any other shipping carriers you have active.
IMPORTANT - For this to work correctly (particularly with the shipping estimator) the price based option should be first on the list. Click the up arrow there to move it to the top - see image below
STEP 4Assign Countries and States the newly created postal zones.
Under the shipping Admin menu, select countries.
Edit each active country to be sure each is set as shown. United states will need to be set to the newly created world zone United states and all others set to ROW (short for rest of world) Be sure to set FSA for United States
Do the same for States.
Under the shipping Admin menu, select states.
Edit each active state to be sure each is set to it's proper state zone you created in step one. Any that you want to allow free shipping to, should be set to "lower 48 states" and any that you will not allow free shipping to, should be set to one of your other zones. You will also need to set FSA for the states that you allow free shipping to
At this point it should be working. Although there are a few more things we want to address.
When a customer does not qualify for free shipping, there is a message showing where the free shipping option will be.
Likely something like "There are no methods available for your shipping destination."
You can change this message to something that works better. Keep in mind this is the same message that might show when a customer enters an invalid address.
I like that set to the follwing - "Free shipping on orders over $99.00"
This is a languagefile entry that we will add to the includes.asp or includes.php to set that text and protect it from updates.
.asp xxNoMeth="Free shipping on orders over $99.00"
.php $GLOBALS['xxNoMeth']='Free shipping on orders over $99.00';
ECT puts a default image there for the shipping logo but you can change that with this addition to your includes
.asp - shippinglogo="images/mylogo.png"
.php - $shippinglogo="images/mylogo.png";
If you are using the shipping estimator, you will get something like "estimated best rate using price based shipping"
Personally I don't like that message so what we do for that is this addition to includes (takes out the word "using")
.asp - xxBesRaU="Estimated Best Shipping Rate"
.php - $GLOBALS['xxBesRaU']='Estimated Best Shipping Rate';
and with an addition to our css file we hide the service there.
div.estimatorcheckcarrier {display: none;}
And that gives us just "Estimated best shipping rate" there.
Below are screen shots for an order without free shipping and an order with free shipping.
You can take it for a test drive on my .php test site here http://www.floridasurpluswarehouse.com/dev/products.php
If you have issues or questions, please post below and I'll try to help.
Enjoy,
David