[Proposal] Adjustments for Item-wise Taxes and Charges

Hey Guys,
I want to share a proposal for an adjustment to the Taxes and Charges Template in ERPNext. Hope you like it.


In Germany, like in many other countries, there are several VAT rates for different item groups. However, each VAT rate has its own account in the balance sheet and there are also different accounts for buying and selling. This makes the current tax mechanics of ERPNext relatively complicated for users located in Germany and other countries, which face a similiar issue. The following list shows which accounts can be involved in transactions (there are more than the listed 3), the number is the specific account head number.


  • 1400 - VAT @ 10,7%
  • 1401 - VAT @ 7%
  • 1406 - VAT @ 19%


  • 3800 - VAT @ 10,7%
  • 3801 - VAT @ 7%
  • 3806 - VAT @ 19%

According to the documentation of ERPNext, the standard procedure to set up the taxes correctly would be to create a “Purchase/Sales Taxes and Charges” template with the standard VAT rate of 19% and then create item tax templates for each item or item group, which deviates from the standard rate.
The item tax templates then override the tax rate of the “Purchase/Sales Taxes and Charges” template on the basis of the respective account head.

However, this is where the problems start. For example, if I want to set up the taxes for articles with a VAT rate of 7%, I have to create 4 overriding item tax templates:

  • 1406 - Override buying VAT rate of 19% with 0%
  • 3806 - Override selling VAT rate of 19% with 0%
  • 1401- Set VAT rate of 7% for buying
  • 3801 - Set VAT rate of 7% for selling

This is because of the account head centric approach of the item tax templates, which works very well if you only have one account for VAT, but get’s too bloated if you have several account heads for different VAT rates like in Germany.

Since I want to use ERPNext in a restaurant/hotel environment, a lot items will be taxed with the non-standard VAT rate of 7%. This is a lot of work and also hard to maintain because of the “override”-character of the current tax system. Furthermore, always both accounts (buying and selling) for the 7% VAT rate will be applied (1401 and 3801), regardless if the respective transaction is a purchase invoice or a sales invoice.

In order to simplify this process for countries in the EU (and all other countries which face a similiar issue), I propose the following adjustment to the tax system:


In the Purchase/Sales Taxes and Charges Template, there should be a field where you can select on which item tax category the respective tax should be applied:

The tax then only gets applied to items of this item tax category.

The specific item tax category can be selected in the company defaults in the item master, since the Purchase/Sales Taxes and Charges Template is also company specific. This way, one item can have different tax rates for different countries/companies.

The item tax category can be either a new DocType or the existing tax category DocType could be used, with some adjustments to reflect that the type of tax category is a item tax category. A standard item tax category should be created automatically for each company.

This solution could also be implemented quite easily with only a few lines of code changed and also only a few new fields. In my opinion, this could also replace the current item tax system, because it offers a similiar functionality. However, it can also be used side-by-side to the current system, which most companies would probably prefer since they have already set it up that way.

Closing Words

I’m going to create an app for this issue next week, but I would like to see it in the core version of ERPNext.
Please tell me how you like my idea and if you have any suggestions for improvement.

1 Like

Hi, am from NL and use the Cloud Version of Erpnext since 2011.
We have like in D 3 VAT categories. 0,9 and 21%.
I buy a lot in Germany so I also have to take care of reverse charge.
I have never experienced a problem…
Am satisfied with the solution offered

1 Like

I think an EU VAT app is desperately needed, even if it can just create a report with the correct data, which can then be used for manual submission to the tax authorities.

The UK MTD bench app created by @banksy seems to be a good starting point - possibly worth forking or developing further. The main things would be to ensure the correct information is collected, which can then enable the correct calculation of the VAT returns - obviously a different return template for each country!


The EC Sales List/Recapitulative Statement could come later in development.