Dolibarr / dolibarr

Dolibarr ERP CRM is a modern software package to manage your company or foundation's activity (contacts, suppliers, invoices, orders, stocks, agenda, accounting, ...). it's an open source Web application (written in PHP) designed for businesses of any sizes, foundations and freelancers.
https://www.dolibarr.org
GNU General Public License v3.0
5.43k stars 2.78k forks source link

Feature Request - Multicurrency on VAT payments #26383

Open Ashley-Butcher opened 1 year ago

Ashley-Butcher commented 1 year ago

Feature Request

Allow multicurrency on sales tax (VAT) payments, to support cross-border sales tax obligations in other currencies.

Use case

When selling in multiple countries, selling over a certain threshold or if a 3PL warehouse solution is used with stock in that foreign country, it would be necessary to be tax/VAT registered in that country.

The situation arises that if you have to declare and pay VAT in another country where the currency is different, this cannot be directly accounted for in the sales tax payments.

For example, your company is in France, and you pay French VAT in Euros (EUR), but you also have a warehouse in Sweden and sell from Sweden, therefore you also pay Swedish VAT in Swedish Krona (SEK).

Currently it's only possible to correctly account for this if you pay your French VAT in EUR from a EUR bank account, and Swedish VAT in SEK from a SEK bank account. This all falls apart if you need to pay your Swedish VAT amount in SEK from a EUR bank account, because there is no multicurrency option.

Note: It is necessary to record the actual sales tax paid in the currency of the declaration, so in this scenario booking only the EUR paid amount instead of the real SEK amount is not acceptable.

Suggested implementation

  1. Add the currency (and exchange rate) of the tax payment to the sales tax page - default this to the company currency for simplicity.
  2. If the payment bank account is in a different currency to the VAT tax amount, allow the possibility to record the realised amount (in the bank's currency) so the bank record is accurate.

Suggested steps

This change involves modifying not only the UI but also the llx_tva and llx_payment_vat tables to extend with multicurrency extensions (i.e. multicurrency code, multicurrency rate, multicurrency amount, ...).

A data migration script will be necessary to update the multicurrency amount for existing transactions so they match the company currency amount (exchange rate of 1.0).

github-actions[bot] commented 6 days ago

This issue is stale because it has been open 1 year with no activity. If this is a bug, please comment to confirm it is still present on latest stable version. if this is a feature request, please comment to notify the request is still relevant and not yet covered by latest stable version. This issue may be closed automatically by stale bot in 10 days (you should still be able to re-open it if required).