I am working on a UK fashion store. The customer has a specific requirement - never add tax (VAT) at checkout; rather, have VAT built into the price, and deduct when applicable.
The use case is that EU purchases will have no tax added at checkout - as the price includes it. And, rest of the world purchases will have the VAT deducted at the checkout.
I can't see how to do this in Magento. I though to set up some negative values for tax rates, but that doesn't work.
Any ideas?
This is a very complex problem.
- This is possible. First of all, create tax rules for all countries which will get your pre-taxed prices: UK Seller Tax Rules for Magento (It is essential that there is a tax rule for UK!)
- Also in tax configuration, change "catalog prices" to "including taxes", do this also for "shipping prices". And set "tax calculation based on" to "shipping address".
- Be sure to set your "default tax calculation destination" correctly (to your UK address).
- Switch to your products tab, mark all products (there is a link on the left side to do this). Look for "actions" on the right side and use "update attributes", scroll to the product tax class and take the tax class you set up in point 1.
This works as follows: you have a product in your system for 20 pounds. Magento now knows that these are including VAT. Users will see 20 pounds in the frontend as the price for the product. Now e.g. if someone from Australia will order your product, Magento will look for a tax rule for Australia, but cannot find one. So it will assume 0% tax. It knows that the price of your product is including 20% tax. So it deducts 20% tax from the product's price.
It gets complicated if you wish to deliver to countries with different tax rates within the EU, e.g. Germany, which has 19%. You will have to create a tax rule for germany with 19% tax. Magento will deduct 20% UK Tax and will add 19% German Tax.
Good luck. If Magento shows undesired behavior adding and deducating tax in the frontend, try playing with the "tax calculation based on". Some have better results using "shipping origin". I don't know which suits your needs better.