Magento System Tax Settings Tutorial
How to configure and manage the system tax settings in Magento
In this tutorial we'll review in more details the system settings related to tax that are available in the admin panel of your Magento. For general information on setting up and managing taxes in Magento read the Magento tutorial on managing taxes.
To access the system tax settings, log in the admin panel of your store and go to System menu>Configuration>Tax button in the Sales section on the left. This will display several panels on the right:
Click on each panel to expand it and edit the settings it contains. The panels are:
- Tax Classes
- Calculation Settings
- Default Tax Destination Calculation
- Price Display Settings
- Shopping Cart Display Settings
- Orders, Invoices, Credit Memos Display Settings
- Fixed Product Taxes
We'll go over the settings of each of these sections.
The Tax Classes panel contains a single option:
This option is Tax Class for Shipping and by default it's set to None. This means that whatever you charge for shipping is not taxed. If you want the shipping fee to be taxed too, you can select a tax class from the drop-down menu. It contains all the product tax classes that you've added. Shipping will be taxed if the product tax class that you select from this drop-down menu is included in a tax rule(s).
The next section with tax settings is Calculation Settings:
As the name suggests this section includes different tax calculation options:
- Tax Calculation Method Based On - from this drop-down menu you can select whether the tax should be calculated per product, per row or whether the total sum should be used. You can choose between Total, Unit Price and Row Total. The default is Total which means that the tax will be based on the whole sum of all the ordered products. If you select Unit Price the tax will be calculated separately based on the price of each individual product. If you select Row Total the tax will be calculated separately for each row in the cart. Each ordered product is represented in a separate row in the cart and the row includes the quantity too. So one row may include several units of the same product; this differentiates the Row Total option and the Unit Price option (where if there are several units of the same product tax is calculated per unit).
- Tax Calculation Based On - from this option you can select whether the tax should be based on the shipping or billing address of the customer (in case they are different), or on the shipping origin. By default, it's set to Shipping Address. Shipping Origin is the location of your store or where you send the order from. If you select Shipping Origin the tax will be based on that location; you can set the origin itself from System menu>Configuration>Shipping Settings button in the Sales section on the left>Origin panel on the right. Of course, whatever you select from the Tax Calculation Based On drop-down menu, you also need to have the appropriate tax rule(s) set up.
- Catalog Prices - with this setting you can choose whether the prices that you enter for products on the backend as an administrator include or exclude taxes. By default, this is set to Excluding Tax which means that the prices that you put for products when you add/edit them in the admin panel exclude tax and so tax will be added to the price of ordered products based on the tax rules.
If you set this option to Including Tax, this means that the price that you specify for products already includes tax. With this setting selected, however, things may become more tricky depending on the tax rules you've added. For example, let's say that you have set the shipping origin of your store to California, USA and you have created a tax rule with a rate for that zone set to 8.25 percent and you've added a product with a price 72 dollars. This means that the price is automatically calculated to include the 8.25 percent tax which makes the actual price of the product 66.51 dollars (the tax being 5.49 which is 8.25 percent of 66.51 for a total of 72). However, if you have created other tax rules they will be applied depending on the addresses of the customers and the associated rates. The tax will be calculated using the price 66.51 and not 72. Using this simple example you can see that having various tax rules in combination with the Catalog Prices option set to Including Tax can potentially create a big mess. So you should keep this in mind.
- Shipping Prices - similarly to the previous setting, you can use this drop-down menu to determine whether the amount that you specify for shipping in the admin panel or obtained from third parties includes or excludes tax. By default, this is set to Excluding Tax which means that if shipping is taxed the specified amount will be charged additionally according to the tax rate. If you want to, you can change it to Including Tax.
- Apply Customer Tax - from this option you can select whether the tax should be applied before or after a discount. By default, it's set to Before Discount. If you want the tax to be applied after a discount has been applied, just select After Discount. This, of course, will have an effect on the final price.
Let's illustrate it with an example. For instance, let's assume that the tax is applied before the discount, the tax is 10 percent and a customer orders a product that costs 100 dollars; this makes the total price with tax 110. The customer has a coupon for 10 percent discount and applies it which makes the final price 100 dollars (the discount is applied on the original price of the product excluding the tax). Now if we set the Apply Customer Tax drop-down to After Discount and we use the same example the final price will be 99 dollars because the 10 percent tax is applied on the price after the discount, which in this case is 90 dollars (100 dollars original price minus 10 percent discount).
- Apply Discount On Prices - by default, discounts are applied to the original price of the order before the tax is applied. If you select Including Tax, the discount will be applied after the tax is applied to the original price. This setting is connected with the previous one.
Check the description of the previous setting to see an example of how both settings work together when the Apply Discount On Prices option is set to Excluding Tax and the Apply Customer Tax option is set to Before Discount and After Discount.
Now we'll use the same example to illustrate what happens when you change Apply Discount On Prices to Including Tax. So the ordered product is 100 dollars, the tax is 10 % and and the customer applies a coupon for 10 % discount. When the Apply Customer Tax option is set to Before Discount, the tax of 10 % will be applied to the original price of $100 which makes the total taxed price $110. The discount of 10 % is applied to this amount because the Apply Discount On Prices option is set to Including Tax; 10 % of 110 is 11, so the final amount is $99. In the same situation if we change the Apply Customer Tax option to After Discount, the grand total would be $97.90. The discount has to be applied on the taxed price which is a total of $110 ($100 original price + 10 % tax), and since the discount is 10 % that makes the discount sum $11 (10 % of $110), but the tax itself actually has to be applied after the discount is applied to the original price ($100 original price - $11 discount = $89). This make the final tax amount $8.9 (with 10 % tax) which makes the grand total 97.90 ($89 discounted price + $8.9 tax = $97.90).
- Apply Tax On - from this option you can select whether the tax should be applied to the original price or to a custom price if it's available.
In the panel Default Tax Destination Calculation there are a few settings from which you can select the country and state which will be used to calculate the tax for unregistered customers/guests or for registered customers who still haven't specified their address:
The settings include Default Country, Default State and Default Post Code which you can use to select respectively the country, state (if available) and zip/post code. If the state is set to * this means that all states/provinces within the selected country are considered.
As we mentioned, these settings apply to guests and registered users who still haven't entered an address. When a registered user with a specified address visits your store tax is calculated based on the address of the user and the tax rules that you have added. If you haven't changed the default price display settings (by default, catalog prices on the frontend are displayed without tax), this is only reflected on the cart page that shows all the products that the user has put in the cart and the estimated tax and shipping amounts. The tax that's displayed on this page is based on the customer's address.
If the customer is a guest or a registered user with no address specified, then the tax that's displayed on this page is based on the country and state that you've selected from the settings in the Default Tax Destination Calculation panel. Of course, this will only happen if you have also added the necessary tax rules with rates. If you have set catalog prices to include tax, then for guests and registered users with no address the prices will be calculated with tax based on the default tax destination settings. Registered users with a specified address will not be affected by the default tax destination settings since tax is calculated based on their shipping/billing address.
The section Price Display Settings contains options from which you can select whether prices on the frontend should be displayed with or without tax:
By default, product prices are displayed on category and product details pages on the frontend without tax. If you want the displayed price to include tax, set the Display Product Prices in Catalog drop-down menu to Including Tax. In case you want shipping prices to be shown with tax included set the Display Shipping Prices drop-down menu to Including Tax.
If you set the drop-down menus to Including and Excluding Tax, two prices will be shown. One will be with tax included and the other will be without the tax (both are labeled so that there's no confusion).
If there are matching tax rules, the tax will be calculated based on the customer's address. If the customer is a guest or hasn't provided an address yet, the default tax address will be used as we explained in the Default Tax Destination Calculation section of this tutorial.
The Shopping Cart Display Settings section has options with which you can manage whether the prices displayed in the cart should include or exclude tax (or both). By default, they are all set to exclude tax:
These settings affect price displayed on the cart page that's shown automatically when a customer adds a product or clicks on the My Cart link that with the default theme is shown in the top right corner of the frontend. Some of the settings also affect the cart block which with the default theme is shown in the right column on the frontend. The cart display settings include:
- Display Prices - if you want the price of each ordered product to be displayed in the cart with the tax, set this drop-down menu to Including Tax. If you want the price to be displayed both with and without the tax, set it to Including and Excluding Tax.
- Display Subtotal - the subtotal is the sum of all the ordered products before shipping and handling charges are included and before discounts (if any) are applied. By default, the subtotal is shown without tax. You can set it to include tax, or you can also configure it to display both the price with the tax and the price without the tax.
- Display Shipping Amount - by default, shipping charges are shown without tax. As with the previous two options you can set this drop-down menu to Excluding Tax, to Including Tax or to Including and Excluding Tax, depending on your preferences. Of course, this is of concern only if you tax shipping charges. You can set tax on shipping using the option in the Tax Classes panel.
- Include Tax in Grand Total - the grand total is the final price that has to be paid by the customer after all taxes, shipping and handling charges, discounts, etc are applied. It's displayed on the cart page and at the order review step of the checkout process (the cart block in the column shows only the subtotal). By default, the grand total only shows the final price that has to be paid. It doesn't reflect how the tax affects the total. If you want the grand total to be displayed both with and without the tax, set the Include Tax in Grand Total option to Yes. When you do this the grand total price will be displayed two times in the cart: the first one will be the grand total with the tax excluded, and the second one will be the final price with tax included.
- Display Full Tax Summary - by default, this is set to No which means that the tax is displayed only as a total amount that's added to the price without any further details. If you set it to Yes, a small button will appear in the cart next to the tax. When the customer clicks on that button additional information will be displayed such as the name, percent and total amount of each applied tax.
- Display Zero Tax Subtotal - by default, this is set to No which means that if there's no tax applied this will not be reflected in any way in the order summary on the cart page. If, however, you want it explicitly shown that the tax is zero, set this drop-down menu to Yes.
Let's illustrate what the settings control with an example screenshot of the frontend cart page:
As you can see from the example the options Display Prices, Display Subtotal and Display Shipping Amount are all set to Including and Excluding Tax so both prices are shown. The Display Full Tax Summary and the Include Tax in Grand Total options are set to Yes. If the Include Tax in Grand Total option is set to No only the price with the included tax will be shown.
The settings will also affect how the prices are displayed at the Order Review step of the checkout process.
From this section you can also edit the tax display settings but this time they will affect how prices will be displayed in the order information, invoices and credit memos:
By default, all the settings are configured to exclude tax. The settings are the same as in the panel Shopping Cart Display Settings. So for detailed information about them you can read the previous section in this tutorial.
The only difference is that these settings are applied to the order information, invoices and credit memos in the admin panel and in customer accounts, as well as to the order information, invoices, etc. sent to the customers' email addresses. Note that changes to the settings will be reflected in the admin panel and in the customer accounts even for orders that have been placed before the change. Of course, this can't happen to the order information and invoices that have already been sent to the email addresses of customers.
The last panel contains settings related to fixed product taxes. This is more rarely used than the regular taxes (e.g. VAT, Sales taxes, etc.), but in case you need it these settings allow you enable fixed product taxes, to configure how the fixed tax will be displayed on the frontend and also its relation to other taxes and to discounts. Unlike other taxes which are calculated as a percentage of the price, fixed taxes are added as a fixed amount to the original price. Another difference is that other taxes are applied by setting up tax rates and tax rules, while fixed taxes are applied by using attributes. So in order to set a fixed tax to products you need to add a new attribute and when you do that you need to set the option Catalog Input Type for Store Owner to Fixed Product Tax. Then you have to add the attribute to an attribute set and use that set when adding products to which you want to add a fixed tax. After that you can set the tax when you add/edit products for which you have selected the attribute set with the attribute for fixed product tax.
The Fixed Product Taxes section has several options:
- Enable FPT - fixed product taxes are disabled by default, so if you want to enable them set this drop-down menu to Yes. When fixed product taxes are enabled, fixed taxes are added to each product for which there's a fix tax amount set (that's done on the add/edit page of the product in the admin panel). When you set a fixed product tax on the add/edit page of a product you also have to choose the country and state/province to which the fixed tax will apply. If the customer's address matches that location, the fixed tax will be added to the price of the product.
- Display Prices in Product Lists - you can use this option to select how the prices of products which have a fixed tax are displayed on category/product list pages on the frontend. By default, it's set to Including FPT only which means that only the price with the included fixed tax is displayed (the original base price is not shown). If you set this drop-down menu to Including FPT and FPT description, then under the price (which includes the fixed tax) the actual tax amount will be displayed in brackets together with the name of the fixed tax as you have set it from the attribute settings. If you select Excluding FPT, FPT description, final price, then the original price, the tax amount and the final price will all be listed. If you select Excluding FPT, then only the original price without the fixed tax will be displayed on product list pages.
- Display Prices On Product View Page - this option behaves in exactly the same way as the previous one but it affects product view pages on the frontend. By default, it's also set to Including FPT only, and you can set it to Including FPT and FPT description, to Excluding FPT, FPT description, final price or to Excluding FPT depending on whether you want respectively the tax amount and the tax name to be shown, whether the original price, the tax amount and the final price should be displayed, or whether only the base price should be displayed.
- Display Prices in Sales Modules - this option has the same values as the two previous ones. This one, however, affects how the price is displayed on the cart page, at the Order Review step of the checkout process and in the cart block.
- Display Prices in Emails - the values that you can select from this drop-down menu are the same as with the previous three display settings. This option affects how prices are displayed in order confirmation emails and invoices sent to the customer's email address.
Here is an example of how prices are displayed when the value Excluding FPT, FPT description, final price is selected:
This particular example is for product list pages.
Let's review the rest of the fixed product tax settings:
- Apply Discounts to FPT - by default, discounts are applied to the original base price of a product. If you want the discount to be applied to the price with the fixed product tax included, set this drop-down menu to Yes. For example, let's assume that a customer has a discount coupon for 10 % and orders a product with base price $100 and a fixed tax of $10, making the combined price $110. If the Apply Discounts to FPT option is set to No, the discount will be $10 because it's applied to the original price (10 % discount from $100 base price = $10). If the option is set to Yes, the discount will be based on the price with the fixed tax making it $11 (10 % from $110).
- Apply Tax to FPT - by default, other taxes such as VAT and sales taxes are applied to the price excluding the fixed tax. If you want these taxes to be applied to the fixed tax as well, set this option to Yes.
- Include FPT in Subtotal - the subtotal on the cart page and at the Order Review step of the checkout process is displayed without fixed taxes. If you want the fixed tax to be included in the subtotal, set this option to Yes.
If you make changes to the settings, don't forget to click on the Save Config button.
For more information on adding fixed taxes you can also check out the tutorial on adding fixed product taxes in Magento.
You may also find useful the Magento tutorial on exporting and importing tax rates.