2
Managing your Tax Structure
3
===========================
5
This section deals with statutory taxes and accounts which are legally required from the company:
7
* the taxation structure provided by Open ERP,
11
You can attach taxes to financial transactions so that you can:
13
* add taxes to the amount you pay or receive,
15
* report on the taxes in various categories that you should pay the tax authorities,
17
* track taxes in your general accounts,
19
* manage the payment and refund of taxes using the same mechanisms OpenERP uses for other monetary transactions.
21
Since the detailed tax structure is a mechanism for carrying out governments' policies, and the collection of taxes so critical to their authorities, tax requirements and reporting can be complex. OpenERP has a flexible mechanism for handling taxation that can be configured to meet the requirements of many various tax jurisdictions.
23
The taxation mechanism can also be used to handle other tax-like financial transactions, such as royalties to authors based on the value of transactions through an account.
25
From the menu :menuselection:`Accounting --> Configuration --> Financial Accounting --> Taxes` you can define your tax structure. Note that when you use a predefined (localised) chart of accounts, taxes will be configured as well in most cases.
27
Three main objects are involved in the tax system in Open ERP:
29
* :guilabel:`Tax Case` (or :guilabel:`Tax Code`), used for tax reporting, that can be set up in a hierarchical
30
structure so that multiple codes can be formed into trees in the same way as a Chart of Accounts. The Tax Codes structure is used to define your VAT return. You can define tax codes from the menu :menuselection: `Accounting --> Configuration --> Financial Accounting --> Taxes --> Tax Codes`.
32
* :guilabel:`Taxes`, the basic tax object that contains the rules for calculating tax on the transaction it is attached to, linked to the General Accounts and to the Tax Codes. A tax can contain multiple child taxes and base its calculation on those taxes rather than the base transaction, providing considerable flexibility.
34
* the :guilabel:`General Accounts`, which record the taxes owing and paid. Since the general accounts are discussed elsewhere in this part of the book and are not tax-specific, they will not be detailed in this section.
36
You can attach zero or more :guilabel:`Supplier Tax` and :guilabel:`Customer Tax` items to products, so that you can account separately for purchase and sales taxes (or Input and Output VAT – where VAT is Value Added Tax). Because you can attach more than one tax, you can handle a VAT or Sales Tax separately from an Eco Tax on the same product.
38
Tax Cases are also known in OpenERP as Tax Codes. They are used for tax reporting, and can be set up in a hierarchical structure to form trees in the same way as a Chart of Accounts.
40
To create a new Tax Code, use the menu :menuselection:`Accounting --> Configuration --> Financial Accounting --> Taxes --> Tax Codes`. You should define the following fields:
42
.. figure:: images/account_def_tax_code_form.png
48
* :guilabel:`Tax Case Name`: a unique name required to identify the tax case, usually taken from your VAT return,
50
* :guilabel:`Case Code`: an optional short code for the case,
52
* :guilabel:`Parent Code`: a link to a parent Tax Case to create a tree structure (like a Chart of Accounts),
54
* :guilabel:`Not Printable in Invoice`: a checkbox allowing you to indicate that any taxes linked to the tax code concerned should not be printed on the invoice,
56
* :guilabel:`Coefficient for parent`: choose ``1.00`` to add the total to the parent account or ``-1.00`` to subtract it,
58
* :guilabel:`Description`: a free text field for documentation purposes.
60
You can also see two read-only fields:
62
* :guilabel:`Period Sum`: a single figure showing the total accumulated on this case for the
63
current financial period.
65
* :guilabel:`Year Sum`: a single figure showing the total accumulated on this case for the financial year.
67
You will probably need to create two tax cases for each different tax rate that you have to define, one for the tax itself and one for the invoice amount that the tax is based on. And you will create tax cases that you will not link to Tax objects (similar to General Account \ ``View``\ types) just to organize the tree structure.
69
To view the structure that you have constructed, you can use the menu :menuselection:`Accounting --> Charts --> Chart of Taxes`.
70
This tree view reflects the structure of the :guilabel:`Tax Codes` and shows the current tax situation.
72
Tax objects calculate tax on the transactions that they are attached to, and are linked to the General Accounts and to the Tax Codes.
74
To create a new Tax, use the menu :menuselection:`Accounting --> Configuration --> Financial Accounting --> Taxes --> Taxes`.
76
.. figure:: images/account_define_tax_form.png
82
You define the following fields:
84
* :guilabel:`Tax Name`: a unique name required for this tax (such as \ ``21% Sales VAT``\ ),
86
* :guilabel:`Tax Code`: an optional code for this tax (such as \ ``VAT IN IC``\ ),
88
* :guilabel:`Tax Application`: defines whether the tax is applicable to ``Sales``, ``Purchase`` or ``All`` transactions,
90
* :guilabel:`Tax Included in Price`: when checked, the price shown in the product or invoice is inclusive of this tax,
92
* :guilabel:`Tax Type`: a required field indicating how tax should be calculated: ``Percentage``,
93
``Fixed Amount``, ``None``, ``Balance`` or ``Python Code``, (the latter is found in the :guilabel:`Compute Code`
94
field in the :guilabel:`Special Computation` tab),
96
.. In that case, you also have to set the following field:
97
.. * :guilabel:`Applicability` : a required field that indicates whether the base amount should be used unchanged (when the value is
98
.. \``Always``\ ) or whether it should be processed by Python Code in the :guilabel:`Applicable Code` field in the :guilabel:`Special
99
.. Computation` tab when the value is \ ``Given by Python Code``\ ),
101
* :guilabel:`Amount`: a required field whose meaning depends on the Tax Type, being a multiplier of the base amount when the :guilabel:`Tax
102
Type` is \ ``Percentage``\ , and a fixed amount added to the base amount when the :guilabel:`Tax Type` is \ ``Fixed Amount``\ ,
104
* :guilabel:`Invoice Tax Account`: a General Account used to record invoiced tax amounts, which may be the same for several taxes or split so that one tax is allocated to one account,
106
* :guilabel:`Refund Tax Account`: a General Account used to record invoiced tax refunds, which may be the same as the Invoice Tax Account or, in some tax jurisdictions, has to be separated,
108
* :guilabel:`Tax on Children`: when checked, the tax calculation is applied to the output from other tax calculations specified in the :guilabel:`Child Tax Accounts` field (so you can have taxes on taxes), otherwise the calculation is applied to the base amount of the transaction,
110
* :guilabel:`Include in base amount`: when checked, the tax is added to the base amount and not shown separately, such as Eco taxes,
112
* :guilabel:`Child Tax Accounts`: other tax accounts that can be used to supply the figure for taxation.
114
.. tip:: Using Child Taxes
116
You can use child taxes when you have a complex tax situation requiring several tax codes to be used.
118
The fields above apply the taxes that you specify and record them in the general accounts, but do not
119
provide you with the documentation that your tax authorities might need. For this, use the :guilabel:`Tax
120
Definition` tab to define which Tax Cases should be used for this tax:
122
* :guilabel:`Account Base Code`: tax case to record the invoiced amount (exclusive of taxes) the tax is calculated on,
124
* :guilabel:`Account Tax Code` : tax case to record the calculated tax amount,
126
* :guilabel:`Refund Base Code` : tax case to record the refund amount (exclusive of taxes) the tax is calculated on,
128
* :guilabel:`Refund Tax Code` : tax case to record the refund tax amount.
130
When you have created a tax structure consisting of Tax Cases and Tax objects, you can use the taxes in your various business objects so that transactions can be associated with taxes and tax-like charges, such as Eco Taxes (Recupel and Bebat, for instance).
132
.. tip:: Retail Customers
134
When you are retailing to end users rather than selling to a business,
135
you may want to (or be required to) show tax-inclusive prices on your invoicing documents rather
136
than a tax-exclusive price plus tax.
138
You can assign multiple taxes to a Product. Assuming you have set up the appropriate taxes, you would use the menu :menuselection:`Sales --> Products --> Products` to open and edit a Product definition, then:
140
* select one or more :guilabel:`Sale Taxes` for any products that you might sell, which may
141
include a \ ``Sales Tax``\ or \ ``Output VAT``\ and a \ ``Sales Eco Tax``\ ,
143
* select one or more :guilabel:`Purchase Taxes` for any products that you might purchase, which may
144
include a \ ``Purchase Tax``\ or \ ``Input VAT``\ and a \ ``Purchase Eco Tax``\ .
146
Generally, when you make a purchase or sales, the taxes assigned to the product are used to calculate the taxes owing or owed.
148
You can also assign multiple taxes to an account, so that when you transfer money through the account you attract a tax amount. This principle can easily be used when posting purchase invoices for which no products are required.
150
.. index:: fiscal position
152
Taxes on Products and Accounts will usually be national taxes. OpenERP is capable of automatically converting national taxes to intracommunal or export taxes.
154
Go to the menu :menuselection:`Accounting --> Configuration -_> Financial Accounting --> Taxes --> Fiscal Positions`. You can use the fiscal positions to automatically convert national taxes to the required intracommunal or external taxes, according to the fiscal position specified for the customer or supplier.
156
Fiscal positions allow you to make a mapping from national taxes to intracommunal or external taxes, or to map your accounts according to these criteria. You can link fiscal positions to your customers and suppliers to ensure automatic and easy VAT conversion.