Tax rule for specific country overruling all other tax rules

Started by gba, May 08, 2018, 18:40:19 PM

Previous topic - Next topic

gba

Hello!

I have configured three tax rules:
1. tax 0%
2. tax 10%
3. tax 20%

Tax rule 3 is used for most of my products and is the default tax rate.
Tax rule 2 is used for some products with a specific category.
Tax rule 1 shall be applied for a specific country and shall "disable" rule 2 / 3.

How can I achieve that?
Thank you very much for your great help in advance!

Kind regards,
Gerald


VM version: 3.2.4

gba

Or would anyone choose another approach to achieve this?

gba

The biggest problem I see is:
Rules are applied cumulatively.
In VM you can configure to apply a rule i.e. in a specific country.
But you cannot configure to apply a rule for all countries, except a specific one.

So how can you configure VM that way, that a certain tax rate is overriding all other tax rates for customers in a specific country?

Kind regards,
Gerald

Studio 42

Hi :
1. tax 0% select all tax free countries .
2. tax 10% select all taxed countries and your specific category.
3. tax 20% select all taxed countries
The only problem can be that tax 20% need to get a country, i already explained it for some months to dev, but is not corrected, i mean(tax should use vendor country by default or order default country ID)
You say that tax are cumulative, so you should have already the problem with tax 10% for your specific category because in this case, you have tax 20%+10%, so perhaps you have not set same tax type ?
Or you select manually the tax ?
You have always to use generic rules, so the right tax should be set correctly depending country, category ....

gba

Hi!

Thank you for putting time into this issue.

Here is how I solved it:
I created two new product categories - 'tax1' for products with regular tax rate and 'tax2' for products with reduced tax rate.
Then I created 5 (!) VatTax calculation rules:
- 20 %; filter: product category 'tax1', customer group: -anonymous-
- 20 %; filter: product category 'tax1', countries: all countries except tax free countries
- 10 %; filter: product category 'tax2', customer group: -anonymous-
- 10 %; filter: product category 'tax2', countries: all countries except tax free countries
- 0 %; filter: countries [tax free countries]

Résumé:
Before user login we do not have the country information.
So we need an extra calculation rule for every tax rate in case the user did not login yet.

Feature request:
Add a choice 'include / exclude' to the filter fields in calculation rules.
- 20 %; filter: product category 'tax1', exclude countries: tax free countries (would be applied before login, too)
- 10 %; filter: product category 'tax2', exclude countries: tax free countries (would be applied before login, too)
- 0 %; filter: include countries: tax free countries

What does the VM community think about ...
1. my solution?
2. my feature request?

Kind regards,
Gerald

20180511 EDIT:
Today we found out, the configuration above does not do the trick.
When a user checks out as a guest, i. e. for products with regular tax rate both calculation rules are applied >> base price * 1,2 * 1,2 !!!
Is it really not possible to solve this issue using VirtueMart?!

Studio 42

If in Config, you had a default shop country, everything would be so simple

gba

QuoteIf in Config, you had a default shop country, everything would be so simple
There IS a possibility to set a default country:
In the custom field 'virtuemart_country_id' you can set the ID of the default country.
But: Unfortunately VM seems to ignore that default setting in its calculation rules.

gba

Good news!

This plugin did the trick:
https://extensions.virtuemart.net/shopper-order/orders/vm-localise-detail

If the user visits the shop as a guest, the plugin determines his country and sets it for further calculations of VM.
As soon as the user chooses another country, the chosen country is being taken for calculations.
Therefore the two calculation rules for customer group -anonymous- are obsolete and I deactivated them. (later I will delete them)

Thanks a lot for every hint and idea in this case!

Kind regards,
Gerald