How to Coda with VAT — Part VII
Country related VAT complexities
VAT tarifs differ and are not applied equally. In general we apply the following principles for EU Member states.
- Invoices related to companies or individuals in your home country require you always apply the appropriate VAT tarif.
- On invoices related to companies in the EU with a valid VAT Id, you shift your VAT (0%).
- On invoices related to individuals outside your country, you might use the VAT tarifs as applicable for the residents of your home country, unless your turnover towards these clients is over 10K per year over all countries. Then it becomes complicated. You then apply the VAT tarifs of your users home country → we focus on this scenario in this blog.
- On invoices towards business clients outside the EU, no VAT is applicable, residential clients outside the EU pay the VAT tarif of your home country.
- Rules for Products are not always the same as for Services. Products delivered to Northern Ireland follow the EU rules (VAT shifts), Services not. Northern Ireland is part of the UK and the UK is no longer a EU member state. When you deal with cars and buses, there are other rules etc. In people transport for example you pay VAT per country based on the distances in kilometers. For these clients I developed a special tool. The great thing with Coda is that you relatively easy calculate VAT related to distances, countries, etc. using filters.
A practical approach
The general rules are accompanied by exceptions. As long as you are not writing a general VAT tool, the practical way to move forward is to check how the offered products & goods in your (clients) company fit the EU framework.
My clients mainly deal with suppliers & clients (B2B & B2C) from neighboring countries. Most of the VAT hassle is not relevant for them. We made an inventory of the VAT rates of the countries clients live in and wrote some rules to apply them properly.
All products & services you sell, you link to a type of VAT, not directly to a VAT tarif. We start with a table that provides the main VAT options for what we offer.
The next step is to use this logic to get the proper VAT percentage for our products from a table (DB VAT) that holds all the VAT tarifs per country.
When we have a client from France we ask for a valid VAT id, if available we shift VAT, if not we apply the French VAT tarif based on the previous mentioned logic in which we define VAT types. Not all countries have the Lower tarif rate as VAT Type, most have standard, reduced and zero. If that is the case, we take the standard tarif. We get there by sorting the VAT tarifs for that country and we take the first. We cannot take a lower (cheaper) tarif.
A scenario like below may give some inspiration for your set-up. On purpose I do not elaborate on this, nor provide details. There are many ways you can make this work and
SwitchIf() formulas are too complex by nature to explain via text. One thing you should know is that the order in which you put your arguments (if this,then that) matters. There is an order of things, a hierarchy to be respected and you should test this step by step.
Before I glue the arguments together, I test them separately. Once they work, I’ll add them and I’ll test if the order is set up properly.
I took care of all scenarios I could think off so far.
The end of this serie on VAT
This was the last blog in the serie: How to Coda with VAT. Coding coda with VAT is easy in the beginning when we apply basic math. Once you step up, specific Coda expertise is required to make the calculation run. The most difficult part is notwithstanding designing of the doc. You have to limit the options for the user, reuse their learnings, while confirming positive choices.
I have seen quite some Notion templates, like this one . They look great, but as far as I can see none of them dealt with all the complexities I addressed in this serie. In this regard Coda stands out. In next blogs I’ll focus more on design and templating to have the best of both worlds.
I hope you enjoyed this article. If you have questions feel free to reach out. Though this article is for free, my work (including advice) won’t be, but there is always room for a chat to see what can be done. Besides you find my (for free) contributions to the Coda Community and on Twitter
My name is Christiaan Huizer and I am the owner of Huizer Automation. A company specialized in serving SME in harvesting data and keeping it aligned. I am a Coda Consultant & Expert and rely mainly on Coda, Mailjet, Zapier & Paperform to get the job done.