OCA/account-financial-tools

VAT validation must be based on delivery address instead of invoice address

source-promo opened this issue · 4 comments

Module

Check VAT on invoice validation

Describe the bug

When there is a VAT required for a specific fiscal position, its checking for the VAT of the customer instead of delivery address and throws error / warning.
According to regulations, the taxes and also VAT depends on delivery address and not on customer / invoice address.

To Reproduce

Affected versions:

Steps to reproduce the behavior:

  1. Create invoice with customer which does not have a VAT.
  2. Choose delivery address with contact which has a valid VAT assigned
  3. Select fiscal position which has "VAT required".
  4. Try to confirm the invoice and it will raise error "You are trying to validate a customer invoice/refund with the fiscal position 'XXX' that require the customer to have a VAT number. But the Customer 'XXX' doesn't have a VAT number in Odoo. Please add the VAT number of this Customer in Odoo and try to validate again.

Expected behavior
It must validate the VAT on contact of the delivery address instead of contact of customer. So if delivery address contact has assigned a valid VAT its must not throw an error.

Additional context
Add any other context about the problem here. (e.g. OS, Python version, ...)

Hello @source-promo !

This is incorrect, VAT depends on customer / client and not in delivery address.

Delivery address could have the VAT whatever, the invoice it for the customer and the customer is going to declare it fiscal and accountably , not the delivery address.

In my opinion this is not a BUG and functionality is OK.

Let's see what the maintainer think about @alexis-via

https://github.com/OCA/account-financial-tools/tree/16.0/account_fiscal_position_vat_check

I also disagree ; VAT is required for the customer, not for the delivery address.

Hey @alexis-via @rafaelbn,
I am very confident its a bug.

Please see EU Tax regualtions here:
https://taxation-customs.ec.europa.eu/where-tax_en
https://www.artitecshop.com/en/blogs/nieuws/new-european-vat-rules-for-e-commerce/

To clarify (lets say I am a German company):
My customer is a German company and delivery Address is an Austrian company.
This would mean if the Austrian company (delivery address) does have a valid VAT its without taxes by European VAT law.
So the invoice I create and send to my German customer will display delivery address AT and tax free with ref to Austrian VAT number.

Currently this module would check if VAT number of German customer is set and valid but not if its VAT number of delivery address. Because in my example above if delivey address does not have a valid VAT number its taxed with 19% German taxes instead of free of tax.

Dear @source-promo ,

I can happily discuss about this in Valencia 😄 . And I understand your question but I think (about module) you miss understand which is the customer vs which is the tax-ability.

Maybe it's needed a new module or new options.

  • I'm Spanish company with (must be) a VALID VAT
  • My customer is a Spanish customer with (must be) a VALID VAT BUT I forget to write it down in Odoo
  • If my customer ask me to send something to France (for example), whatever the VAT is assigned to the delivery address the VAT I should send to administration for Fiscal/tax stuff it is the Spanish customer one in all cases. And without this module the invoice would be created incorrectly without the VAT of the customer.

If you want to check both VAT, then we need a new module or improve with more options this one.

I think you are talking about l10n_eu_oss with is a new set of modules to manage it.

Glad to talk about it, thank you!