From the library:
https://github.com/commerceguys/tax/blob/master/resources/tax_type/ch_va...
https://github.com/commerceguys/tax/blob/master/resources/zone/ch_vat.json
Note that the zone is missing Liechtenstein.
This is an interesting issue because unlike EU/Canada (which have multiple zones), Swiss VAT can be configured using the Custom plugin,
We have two implementation options, which will set the course for others:
a) Follow the EuropeanUnionVat example, and hardcode the rates. This allows the plugin to be updated over time with new rates and amounts, and we provide a promise that we'll do our best to keep them up to date.
b) Inherit from Custom, and simply prefill the zone territories & rates with the known swiss data. That means that we can't update it over time (we won't be able to know if the config entity changed), and we don't support multiple amounts per rate (the Custom plugin always provides a single percentage for a rate to simplify the UI). It does give more control to the merchant though, who can make their own modifications possibly quicker than we could in a).
What's the tradeoff that we want to make?
| Comment | File | Size | Author |
|---|---|---|---|
| #3 | swiss vat.png | 27.35 KB | bojanz |
Comments
Comment #2
czigor commentedPR is here: https://github.com/drupalcommerce/commerce/pull/736/files
Comment #3
bojanz commentedThere's one UX question here.
Swiss VAT applies to Switzerland, Liechtenstein, Lake Lugano (Italy) and Büsingen (Germany).
The last two are corner cases, but should we communicate the first two to the user?
We currently show the zone label "Switzerland" above the rates.
We have three possible options:
1) Show "Switzerland"
2) Show "Switzerland and Liechtenstein"
3) Show no label row since there's only one zone
Comment #4
berdirCopied from IRC:
hm, not sure that's a question I can help with.
based on what we found, looks like it's kind of implied that Liechtenstein belongs to it and doesn't need to be explicitly mentioned. so either just switzerland or no region, which I think would be fine too
Comment #5
czigor commentedWhat about showing 'Swiss' or 'Swiss tax zone' instead of 'Switzerland'?
Comment #7
bojanz commentedThanks, decided on #3 (to hide the row when there's only one zone).