Tax doesn't work how it should, so I'm now going through the whole tax system.
My primary objective is ensuring that any changes reflect what is best for all Storez users, which may mean adding extra admin options.
Showing in the whole shop is tricky since tax is invariably location based, especially so for guests, where you have no idea of their location. Since pretty much everything is now templated, you might be best served to add your own text somewhere.
Showing in the cart can and will be enhanced, which may mean discarding past ill-advised changes.
A language basis is not an option since it cannot always reflect the state and/or country for a store, english and french being obvious examples - which of dozens of countries would we use for the tax?
What do you think to add template variables called
STOREZ_LOCAL_TAX and STOREZ_LOCAL_PRICE_WITH_VAT using the tax from the country the shop resides in. After that is't upon templating to use it or not.
That said there is still a need to have various tax rates within a same country. so do you plan to have various tax levels for one same country. for example food has not the same tax than computers will have here in france.
Providing template variables is the direction that Australian GST example was headed, by showing the VAT component. Showing the total price including VAT is more complex.
My primary objective is ensuring that any changes reflect what is best for all Storez users
I cannot assume everyone wants VAT displayed and therefore cannot expect users to edit such info out of their templates, so it will be optional.
There is still the major problem of deciding which country a guest is from before they checkout, so it will have to assume the Company Information you provide in admin settings - a problem if you're selling internationally.
There is no need to provide any more tax options as Storez already lets you create however many taxes you want by country and/or state/province, so you can already use different VATs for different product types.
(thankfully I only have to deal with 2 levels - it's either taxed at 10% or it's not)
(Using L_(LANG_DEFINE) in templates is a superior approach to language, so I'll continue removing L_LANG_DEFINE from core code and templates wherever I find them)
if you sell internationnaly you only have to apply the vat in the countries from which your company can make invoices otherwise you have to apply your local VAT. I don't know a lot about other situations in non europe countries.
In Europe on top of that if we have euro-international b2b commerce there is no VAT applied at all.
This aims to say if the country of the user is not clearly identified the default values in the template variable could be the local tax of the shop owner. I guess this would fit the needs of most european countries.
one language multiple countries speeking it, on country with serveral languages, all this makes it a bit complicated.