VAT exempted products/services

Hi,

In my country some products/services are not subjected to VAT. (VAT exempted is not the same as VAT rate = 0 by law)

With Dolibarr I can define VAT rates in dictionary settings, but I could not find any option for VAT exempted.
Anyone can help?
Thanks in advance!

Hi @phuong,
Please define vat exempted.
What is your country?

Thanks for your information. Would you please tell me how to define VAT exempted in Dolibarr?

My country is Vietnam.

here in Denmark some services are VAT exempt. The services are:

  • health services
  • teaching
  • artistisk services like a band, or a painting

If my Dolibarr usage was not for a non profit which doesn’t charge any VAT at all, then we would be vat exempt because we teach classes. So I just set sales tax to “not used”.

I think Dolibarr should at least support different taxes on different products/services if not outright having the option of no VAT at all.

@phuong
Sorry by define i wanted to know what you definition of vat exemption is because you wrote “VAT exempted is not the same as VAT rate = 0 by law” but this is exactly what it is, exempted means is not objected which equals to vat rate =0.
So what @jonbendtsen wrote is correct that you can set it universally in your company settings.
But you can also define in each product creation card its vat rate to 0 which is a vat exemption or any other rate you have in Vietnam.
Also if you do business with other countries you can also uncheck vat option inr any overseas company card so any product/service towards them would be vat exempted regardless of the set vat rate of said product/service for your country.
If you mean the category of vat exemption this is not implemented.
You can create an extrafield though.

3 Likes

Thank you for providing the information.

In Vietnam, it’s important to understand that VAT exemption is distinct and officially recognized as different from a VAT rate of 0%. Let me clarify:

  1. When products or services are subject to a VAT rate of 0%: The issuing company is eligible to receive a VAT refund/deduction from the government for the goods and services purchased, which contribute to the products and services sold with VAT.
  2. On the other hand, for products and services that are exempt from VAT: The issuing company cannot claim a VAT refund/deduction from the government for the purchased goods and services that contribute to the products and services sold without VAT.

Therefore, when creating an invoice, if a product or service is VAT exempt, the issuing company must explicitly state “VAT exempted” rather than indicating 0% VAT.

VAT = 0% is different from VAT exemption not only in terms of how invoices are recorded but also in how accounting staff handle VAT tax accounting and payments to the government in each tax period.

Can you share links invoices or documents in English if possible to understand how this is implemented.

Hi @sonikf ,

Please see the attached image for a sample invoice with VAT exempt and VAT 0% lines

Hi @phuong
So what you really need is to print VAT exempt in pdf vat column
What you need to do is add a line in vat dictionary with code = VATexempt(with out space)
vat = 0
Then assuming you use sponge template modify file htdocs/core/modules/facture/doc/pdf_sponge.modules.php
and change

					// VAT Rate
					if ($this->getColumnStatus('vat')) {
						$vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails);
						$this->printStdColumnContent($pdf, $curY, 'vat', $vat_rate);
						$nexY = max($pdf->GetY(), $nexY);
					}

to

					// VAT Rate
					if ($this->getColumnStatus('vat')) {
						if ($object->lines[$i]->tva_tx == 0 && $object->lines[$i]->vat_src_code !== '') {
							$vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails);
							$this->printStdColumnContent($pdf, $curY, 'vat', $object->lines[$i]->vat_src_code);
							$nexY = max($pdf->GetY(), $nexY);
						} else { 
							$vat_rate = pdf_getlinevatrate($object, $i, $outputlangs, $hidedetails);
							$this->printStdColumnContent($pdf, $curY, 'vat', $vat_rate);
							$nexY = max($pdf->GetY(), $nexY);
						}
					}

Because every time you update dolibarr changes will be lost it would be better to create a module following this guide Create a PDF document template - Dolibarr ERP CRM Wiki

1 Like

Thanks a lot @sonikf