Setting up a complex shipping calculation rule


Thanks to the screencast on this website, I've been able to easily set up a free shipping flat rate for a particular product type. Now, I have to set an other shipping rate with a more complex calculation rule. Here is the detail :

I have 2 product type : cartridges and printers
If you only buy cartridges, you pay a flat shipping rate. Up to $100, it's free shipping.
As soon as there is at least one printer in your order, we only consider the shipping price for the printers. Each printer as an individual shipping cost, set up as a custom field on the product entity. The expected calculation rule is to add the shipping costs of all printers, and then to apply a discount based on the number of printers (if you buy one printer you pay 100% of the shipping fee, if you buy 2 printers you pay 75% of the shipping fee, if you buy 3 or more you pay 50%)

I've watched this screencast : http://commerceguys.com/blog/using-calculation-rules-add-item-shipping-c.... I'm stuck when I try to calculate the value to add per product. I don't want to set a fixed value for the second input so I use the data selection widget, but I can't access my custom "shipping cost" field from the product line item.

I think I am missing something about how rules work but if somebody could give me clue that would be awesome.

I have also try to create my own action programmatically but I can't figure out the way to alter the shipping cost of the order. If someone has some kind of "how to" about this he would make my day!



Posted: May 8, 2012


dupls on January 25, 2014

Where is your solution?
This is a great module however there seems to be little in the form of information in setting up complex shipping.

AndyW on January 26, 2014

tell me about it. There's limited guides on simple shipping rules like offering free shipping but nothing on complex rules which most ecommerce carts with multiple types of products sending to multiple countries require