Magento: Free shipping without shipping method

March 15, 2012 | In: Magento, web development

Sometimes we need to give free shipping on some specific conditions but we do not want to enable free shipping method. Then what to do? After did much R&D and read many blogs I found a solution. It was so simple, it is possible by shopping cart price rule.

First disable to Free shipping method from Shipping Methods section.

Then create a shopping cart price rule for free shipping by following steps:
1. Go to Promotions > Shopping Cart Price Rules.
2. Click on Add New Rule button.
3. Give a rule name ‘Free Shipping’.
4. Fill all other mandatory fields with No Coupon. Because we want to apply direct free shipping so we will not give any coupon code.
5. In Conditions tab, do no need to do.
6. Actions Tab, select ‘Fixed amount discount’ and set ‘0’ for ‘Discount Amount’.
7. It will be more clear from my attached image. Please see below image:

[Open in new tab to view in large]
8. You can set any conditions what you want. As per my requirements, if cart price is equals or greater than 50 then customer should get free shipping.
9. Save this rule and check checkout page.
10. If you also have enabled ‘Flat Rate’ shipping method then customer will not get Flat rate amount.
11. If your custom rule doesn’t match with cart price then Flat rate will apply to customer.

2 Responses to Magento: Free shipping without shipping method


Klevis Miho

May 18th, 2012 at 7:26 am

It makes sense. However, from the “Shipping Methods” I have:
Free Shipping –> Disabled
UPS –> Enabled

Shopping Cart Price Rule:
Price in cart less than 35

My cart has something under $35, but on the shipping tab it displays “United Parcel Service
“, so no Free Shipping.


Vinothini Kadambavana Sundaram

March 1st, 2016 at 4:37 am

How to implement it by programmatically?…..

Comment Form

Leave a Reply

Your email address will not be published. Required fields are marked *



Latest comments

    Fatal error: Uncaught Error: Call to undefined function split() in /home4/nos/public_html/ Stack trace: #0 /home4/nos/public_html/ mdv_recent_comments() #1 /home4/nos/public_html/ include('/home4/nos/publ...') #2 /home4/nos/public_html/ include('/home4/nos/publ...') #3 /home4/nos/public_html/ require_once('/home4/nos/publ...') #4 /home4/nos/public_html/ require('/home4/nos/publ...') #5 {main} thrown in /home4/nos/public_html/ on line 72