VAT charging system
Charging the value added taxes in your web-shop system is based on the VAT types. A VAT type consists of a name and a fixed rate, for example: "Std, 0%". The administration interface makes it possible to add, remove and modify VAT types as described in the "Managing VAT types" section. Although the quantity of the VAT types is not limited, there must be at least one VAT type in your web-shop system. The only purpose of these VAT types is to store some fixed rates of VAT in percent and thus you can call them "static VAT types" or "fixed VAT types".
If you assign a static VAT type to a product then the system will always charge the fixed rate of VAT specified by this VAT type for this product. (This is how the "VAT per product" approach works.)
Price inc. VAT / Price ex. VAT
There are two ways in which the assigned VAT type can be used. This configuration depends on how the product prices are entered when the objects are created. The "Price inc. VAT" alternative is to be used if the prices that are entered already include the value added tax. The "Price ex. VAT" alternative should be used if the prices that are entered do not contain the value added tax. When the first alternative is used and the product is viewed, the price that was entered will be shown. When the second alternative is used and the product is viewed, the price will be the price that was entered plus the amount of VAT.
Dynamic VAT type
The dynamic VAT type does not store any fixed rate of VAT and is not configurable from the administration interface. This VAT type is represented by an additional alternative that is displayed in the list of VAT types when you edit your products. This alternative is called "Determined by VAT charging rules" by default. (The name is specified by the "DynamicVatTypeName" INI setting described in the "VAT settings" section). Choosing this alternative (assigning the dynamic VAT type to a product) will tell the system that no fixed VAT percentage is assigned to this product and thus the amount of VAT should be determined dynamically using some complex VAT charging logic. For example, the amount of VAT can be changed dynamically depending on where the customer lives.
The dynamic VAT type is incompatible with the "Price inc. VAT" configuration. You should set the "Price ex. VAT" configuration for your products and specify prices that do not contain the value added tax. Please note that this VAT type is connected with the VAT handlers mechanism and is disabled if no handler is used.
VAT handlers
If you wish to use some complex VAT charging logic, it must be implemented in a VAT handler i.e. PHP class providing a mechanism that determines the rate of VAT for a product dynamically in accordance with the implemented logic. You can either use the built-in default VAT handler that supports the "Country dependent VAT" approach or extend the system by creating your own VAT handler (the "Extended VAT" approach). Using two or more VAT handlers at the same time is not supported.
The VAT handler to use must be specified in the "Handler" INI setting described in the "VAT settings" section. To enable the built-in default VAT handler, you will have to add the following line to the "[VATSettings]" section in an override for the "settings/shop.ini" configuration file:
Handler=ezdefault
The system will start to use the default VAT handler and add the dynamic VAT type to the list of VAT types that is displayed when you create/edit a product or product class.
Please note that dynamic VAT type is a kind of virtual structure that comes into being after enabling a VAT handler. If no VAT handler is enabled, the dynamic VAT type is not displayed and can not be used.
In this section
- Assigning VAT types to products To assign a VAT type to a product, edit this product and select the desired VAT type from the drop-down list called "VAT type" as shown in the following screenshot. This can be done for both simple price and multi-price products (supported by both price and multi-price datatypes).
- Three approaches to VAT charging The webshop system supports the following three approaches to VAT charging:
- Product category The "Country dependent VAT" approach supposes that each of your products can be assigned a product category. The next subsections reveal how this can be achieved. The administration interface makes it possible to add, remove and rename product categories as described in the "Managing product categor
- User country The "Country dependent VAT" approach supposes that each of your users can be assigned a country. The next subsections reveal how this can be achieved. Note that the list of available countries and their properties (calling codes, etc.) can be configured from within an override for the "country.ini"
- Displaying VATs on the actual site The next subsections explain the way in which the VATs are displayed on the actual site in case of using the "VAT per product" and/or "Country dependent VAT" approach.
- Managing VAT types This section describes how you can add, remove and modify static VAT types using the administration interface.
- Managing product categories This section describes how you can add, remove and modify product categories using the administration interface.
- Managing VAT rules The next subsections describe how you can add, remove and modify the VAT charging rules from the administration interface.
- VAT settings The "[VATSettings]" section of the "settings/shop.ini" configuration file defines the VAT handler that will be used for assigning the value added taxes to your products. Under this section, the following settings can be specified:
- Creating new VAT handlers This section reveals some helpful tips for those developers who want to create a new VAT handler (only for people who are familiar with PHP). Please note that it is not recommended to modify the Exponential kernel and thus you should implement it as an extension.
Contributors
- Svitlana Shatokhina
- Geir Arne Waaler Updated
- Mathew Newton Commenter
- Claudia Kosny Commenter
Comments (2 historical)
Written by readers of the earlier documentation sites, kept as they were.
Canadian Provincial (PST) and Federal (GST) Sales Taxes
Mathew Newton ·
Hi,
Unfortunately here in BC we have two levels of taxes - Provincial (PST) and Federal (GST). As a result retail customers in BC are charged both PST and GST and then the remainder of Canada is charged only the GST and then non-Canadians are not charged either.
Unfortunately there are also product exclusions where one of the taxes is not applicable to a particular product and needs to be excluded from calculations.
Has anyone successfully implemented this Tax regime in EZ and is this available.
Txs
Mathew Newton
Re: Canadian Provincial (PST) and Federal (GST) Sales Taxes
Claudia Kosny ·
Hello Mathew
Maybe this article helps you:
http://ez.no/community/articles/n...ublish_3_8/new_webshop_functionality
I would image setting up BC and the remainder of Canada as different countries. The main problem I see is to combine the two taxes, the only way I see at the moment is to have three VAT types, one which is PST and GST added up, one for only GST and one with zero. Unfortunately this means that you cannot show PST and GST separately.
If you have more questions please ask them at the forum
http://ez.no/community/forum
Claudia