I have read a lot of materials online about tax classes and such in Magento, but am still unable to answer this question: how can I make certain products tax exempt for both product price and shipping?

For example, product A is £25 and is tax exempt. I can easily set the tax class to apply no tax, and simply have £25 as the product price. However, whenever shipping is processed, a 20% tax will always be separated from the overall delivery price. For example, if delivery was £2, it would be processed as £1.60 + £0.40 tax.

What combination of settings do I need to use to ensure that tax-exempt products show a fixed product price and a fixed shipping price, while other products (subject to tax) separate out tax from the product price and the shipping price?

Thanks, Andre

1 Answer 1


Since you can only assign a single tax class for shipping and cannot assign a different shipping tax class per product, I don't think this is possible with a combination of settings. You could either override tax calculations at checkout or use a 3rd party extension for exempting tax.

Our extension overrides the collect method of Mage_Tax_Model_Sales_Total_Quote_Tax inside this file via an observer defined here. We set the shipping tax amount based on the response from our sales tax API.

If you decide to implement your own solution, you may simply want to omit shipping tax using setShippingTaxAmount and setBaseShippingTaxAmount if one or more line items have an exempt product tax class.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.