Extensions‎ > ‎Shipping Override‎ > ‎





  • Generic extension installation instructions can be found here

  • Installation check-list

    • Backed up the server files and database before installation (recommended)

    • Disabled cache in Cache Management to allow the extension to execute for the first time and when adjusting

    • Uploaded the app directory of the related Magento version of the extension to the root Magento installation

    • Re-index all data in Index Management
    • Updated the serial key in Shipping Settings extension Configuration and has been enabled - see here
  • After installation you should now see the extension appear under Admin > System > Configuration > Shipping Settings.


The remaining steps are:

  • Deciding how to use the extension

  • Creating Shipping Groups (if required)

  • Assigning Shipping Groups and Shipping Prices to products

  • Shipping Settings Configuration
  • Defining Shipping Rules

  • Testing

Deciding what you want to do

The first step to using this extension is to think about how you want to use it. Some of the questions you should be asking are:

  1. Do I need to segment products into shipping groups

  2. Do some rules apply to all items

  3. Do all rules apply to all items

  4. Do I wish to restrict shipping based on:

    • Product type

    • Destination

    • Shipping Group Price

    • Shipping Group Weight

    • #Items

  1. How do I want to modify the rates:

    • Surcharge by flat value

    • Surcharge by percentage of shipping price

    • Surcharge by percentage of cart price

    • Replace by flat value

    • Replace by percentage of shipping price

    • Replace by percentage of cart price

    • Remove the rate from list of options

If you have a set of business requirements and are struggling to translate these into logical rules that can be implemented in an extension why not let us do it at webshopapps? We will provide a full configuration for you, and provide details on how the configuration works, so that hopefully you can then modify going forwards. Email us at sales@webshopapps.com for details or see our support packages at www.webshopapps.com/support.html



This extension allows you to split out certain products from standard shipping calculations, and define special rules/rates for them.

It is not a shipping method itself, it works with other shipping methods to produce the rates.

Some examples of usage are:

  • Allow certain products to be shipped for Free on some methods

  • Exclude some products from free shipping rates

  • Apply flat rates for some products, this can be per item or per order

  • Exclude delivery methods when certain products in cart

  • Exclude delivery to certain states/regions

  • Set a Free Shipping threshold on some products, but charge for others as standard

  • Surcharge on certain orders

This extension uses a comma separated file to manage the special rate criteria. This allows filtering to be done based upon:

  1. Destination country/state/city/zip
  2. Product or Product Group
  3. Weight Range
  4. Price Range
  5. #Items Range
  6. Customer Group
  7. Shipping Method Type (e.g. Ground)


Creating Shipping Groups 

What special shipping groups do you want to use? Free product marking for example "FREE". Or books for a flat rate of $5 – then maybe "BOOKS".

To set up these attributes see below

  • Shipping Override creates a group under Shipping - attribute name "special_shipping_group".
  • See here if you do not know how to setup your attributes.
  • If you wish to apply a per item surcharge for a product under all conditions then enter a shipping price in its product shipping tab (for 99% of users this will not be used, and is managed via shipping groups in the shipping rule csv file)


Example of when to use Shipping Price field

You can optionally set a base shipping price on a per product basis. So let's say you sell greenhouses and you don't want to use the UPS rates to calculate their shipping price – you want to set to $100 per greenhouse. What you would do is set the shipping price in the product listing to $100, set up an special shipping group attribute, say GREENHOUSE, and then in the csv file assign Ground shipping for the shipping group Greenhouse to $0 so it picks up the product shipping price.

Shipping Settings Configuration

Under the Shipping Settings for Shipping Override there are various configurations you can play with. Our recommendation is that if you are unsure then leave as the default – for most people this is fine.

Here is a summary of each field and it's usage:





Use to enable/disable

Good for testing extension is working

Set Shipping Group * to equal all items

When set to YES means that any rules in the csv using shipping group of * will be applied to all items in the cart. When NO they will be applied to all items not in a shipping group

Most people will want this set to YES

Calculate using tax inclusive prices

In Magento shipping is calculated based on excl tax price. There are a very few scenarios where the incl tax price is needed.

Only set this if absolutely necessary as it's better to use the standard excl tax rules as less custom code to run

Free shipping text

If promotion rules determine that free shipping applies you can change the output text here

Use numerical zip code range

If you are filtering in csv based on numeric zip codes e.g. 6116-6556 then this must be set to yes

For USA, Australia if zip codes are used set to YES. For UK, Canada set to NO

Filter on subtotal price/weight

In the csv file where you have shipping groups defined you can choose to filter based on the weight/price of the products in cart for that shipping group or the total weight/price of cart

For most customers use default of NO

Use Pattern Matching

By default this extension will match based on the shipping method output by the carrier e.g. Next Day Air. There are scenarios where this value changes e.g. if a date is at end. In that scenario set this switch to YES and put a * at end e.g. Courier* will match on all shipping methods that start with Courier.

Use with caution. Mainly applies to Canada Post

Use Parent Shipping Group

When using Bundled and Configurable products you can specify if you want the extension to use the shipping group of the parent/outer product or the child/simple inner product within

Usually set to NO.

Show method if not applicable

If you create rules which prevent all shipping methods from showing you may want to inform customer in that scenario (e.g. don't ship a product if it's to Alaska). Setting this field allows you to display a message or not

Leave as default if unsure

Displayed error message

Shown if “Show method if not applicable” is set to YES and shipping is restricted to return no rates by the extension

Leave as default if unsure

 Disable shipping promotions  If set to "YES"  is going to ignore free shipping promotion rules from shipping override perspective.  leave as default


Table Configuration


Here is a complete list of the columns in the CSV file for Shipping Override:

Name Description Default
(Match all)
Country Destination Country, use comma to put multiple countries on a single line *
State Destination State *
City Destination City (generally not used) *
Zip from Destination zip code (e.g. BT% to match Northern Island or 14353 to match zip codes starting with this value) *
Zip to Only used when wanting to match numerical zip code ranges *
Package ID Can be assigned to 1 or more products. Identifies the shipping rules for those products *
Weight From Minimum weight that must be greater than of combined products in cart with the package id above *
Weight To Maximum weight of combined products in cart with package id above *
Price From Minimum price that must be greater than of combined products in cart with the package id above *
Price To Maximum total price of products of package id identified above *
Item From Minimum no of items that must be greater than of combined products in cart with package id above *
Item To Maximum number of combined products in cart with package id above *
Customer Group Used to filter dependent on customer group at checkout (e.g. General/Retailer) *
Shipping Rate The rate that will be applied to the particular delivery type. The way this is applied varies according to the algorithm field. N/A
Percentage The percentage increase in shipping rate. Only works when applying a surcharge to a ship rate. The percentage is applied prior to adding the surcharge flat rate. E.g. if you want a 10% increase in shipping price + $5 flat rate increase set this to 10 and Shipping Rate to 5 0
Delivery Type The shipping method label that you wish to be adjusted. For example if you want to offer free UPS ground shipping on a certain product then this should be set to “Ground” N/A
Algorithm The algorithm used for when this delivery type is found N/A
Rules     This field is used to define special rules such as custom error messages and exlusions. Empty

Please see here for an introduction to the functionality and implementation of your table.

Shipping Group Column

Otherwise known as the Package Id - this usually defines the groupings of products in your table, e.g. BULKY for oversized products.

The use of a * in the shipping group column within the table can provide different results depending on how you configure the shipping method.

The two options for the meaning of "*" are:

  • Include all items that do not have a shipping group assigned

  • Include all items in the cart

You can configure usage of "*" in the Product Matrix shipping method setting "* Includes all items in cart".


Weight/Price/Qty Columns

The extension identifies the products it is wishing to deal with by the Shipping Group field in the csv file. Each product is assigned to a shipping group using the Shipping Group field under Shipping in the Product listing. Shipping rates can then be set according to these groups.

For example let's say you wanted to apply a $10 surcharge on bikes. You would set up a shipping group called bikes, assign this to the bike products, then in the csv file define a row where shipping group is bikes and the surcharge is $10.

Additionally you can specify other product criteria. This will only apply where the shipping group matches. Criteria that can be set is:

  1. Price Range (e.g. charge $10 surcharge when product price of bikes < $100)

  2. Weight Range (e.g. charge $10 surcharge where weight of bikes >50lbs)

  3. Item/Quantity Range (e.g charge $10 surcharge for 1 bike, $20 for 2 bikes, up to a maximum of $40)

A combination of all or none of the above 3 criteria can be set.


Customer Group Column

Unless you have a requirement to control rates for different customer groups (e.g. retail, general), then you will not need this feature. Set to the default “*” in csv file.

Rates can be specified based on the customer group they apply to. For example, if you have a rate of $10 for General Customers and a rate of $20 for Retail Customers on Package A you would have 2 lines in the csv file with customer group set to General, Retailer respectively.

The customer groups are taken directly from the names of Customer Groups defined in Magento. It is case-sensitive. * is used as a “catch-all” situation where you want to display rates if the customer group cannot be found. In reality you should never have to use * unless you have no need for customer group filtering.


Delivery Type Column

This extension is a controller, it will calculate the shipping rates and labels output from the shipping methods you have set up, then look to see if any action is needed on these rates before displaying to the customer.

The delivery type field is used to determine which rates to operate on. For instance if you wanted to offer free ground shipping you would set this to Ground.

Please Note: this is case and space sensitive, and if you don't specify the same as in shipping method it will not be able to work.

If you have live rates which you wish to override that have changeable values at the end - e.g.  "Expedited Est. Delivery (2010-10-04)" then you need to use the Pattern Matching switch in Shipping Override configuration.

Once you have done this you can then use regular expressions in the CSV file - e.g. "Expedited Est. Delivery \(.*" matches the line above.


Algorithm Column

The available algorithms are:




Shipping rate overrides previously calculated price for this shipping group


Shipping rate overrides previously calculated price for this shipping group and is multiplied by #items in cart within group


Shipping rate is appended as a surcharge to previously calculated price for this shipping group


Shipping rate is appended as a surcharge to previously calculated price for this shipping group and is multiplied by #items in cart within group


The shipping rate is worked out as a percentage of the sum of the item prices in the cart.


The shipping rate is worked out as a percentage of the sum of the item prices in the cart plus the live/table rate


Shipping rate overrides all other custom rates & all standard rates. Example usage - when a customer adds a special item give free shipping across the whole cart. 


Shipping rate overrides previously calculated price for this shipping group only when one shipping group is in the cart


Shipping rate overrides previously calculated price for this shipping group only when > 1 shipping group is in the cart


This alogrithm is similar to ITEM algorithm and also adds additional per item (or defined items) price on the products shipping rates (Examle: 1*item = $10, additional item price $4; 2*items shipping price would be $14.00)

Rules Column

The available rules are:




This error message is shown over the standard error message if the only rule matching is the rule with the error defined. So for example you may use this if you want to entirely exclude shipping to a destination and include a descriptive error message for each exclusion.


This should be used in combination with the above "error" rule. It will allow you to assign a priority to an error. It will allow you to define which error message will take precedence should multiple errors be available. The priority should always be defined first in the rule column. Please click here for an example


Sales WebShopApps,
Jul 26, 2011, 5:49 AM