When selling digital goods in the European Union, taxes need to be paid. Since 2015, electronic services and products in Europe are bound to the value added tax (VAT). Though they are not collected by an european institution, but every member state is required to adopt the VAT law. Practically, this means that even though one has to pay the tax in every country, different rates apply – between 17 and 27%.
How to determine the right tax rate
The tax rate is not defined by the sellers location, but by the customers. So if a German customer buys from an Italian company, the 19% of German VAT arise. If the customer were Swiss, it would only be 8%. These taxes then have to be declared and payed in the customers country. If selling to all European Union states, there therefore are 28 different tax rates to be considered.
Now EU VAT only applies to selling digital goods. These can be hosting or streaming services, fee-based communities, online databases, downloads of movies or music, digital pictures or e-books, online games or online invoicing services, as examples. If selling physical goods, the EU VAT does not apply (but there are different taxes).
Also, the kind of customer is important. The rule only applies to private consumers. If selling digital services to business clients, the local tax laws of the seller apply just as before the EU VAT was introduced. Though it is important to prove being a business client, for example via the EU VAT number.
What’s important: it is the sellers responsibility to verify the tax rate applicable for each customer!
Setting up EU VAT in a WooCommerce store
To apply the right tax rates, it is necessary to determine the customers locations and their status (consumer/business customer). Luckily, there are plugins to help.
In Germany, many stores already have the plugin Germanized installed. As it helps including German laws into a store, it also has an option for EU VAT. When selecting the option, Germanized starts calculating the new tax rates when selling outside of Germany. A product price is always considered as including the 19% of German taxes. For example, a 20€ product: When selling to Austria, it is now 20,24€, as they have to pay 20% of taxes. It would deduct lesser tax values accordingly.
One can also select an option for business customers. If they give their VAT number, taxes are removed and all prices are shown without the tax rate.
Germanized works perfectly fine. But if you don’t need it to adapt a shop to Germany, there are more convenient plugins.
After trying out different other possibilities, the plugin I worked with best was WooCommerce EU VAT Assistance. When installing (and also installing the php classes used by the author – Aelia Foundation Classes for WooCommerce, there is a new menu item in the WooCommerce section: EU VAT Assistance. Here, the basic settings can be put, like the tax term displayed, excluding European customers from shopping, or excluding tax for customers in the base country. Afterwards, one has to enter the tax rate data in the tax section of WooCommerce. The EU VAT Assistance plugin allows an automatic import, which includes all the countries with EU VAT. One should also enable the option to calculate taxes according to the shipping or billing address in this section. As soon as WooCommerce knows the rates, products are automatically adjusted to tax rates. And when changing the shipping address, prices in the cart also update.
The plugin, too, has the option to include an VAT number field for business customers. Therefore, after setting up the plugin, one doesn’t have to worry about tax rates in Europe anymore.
What’s left to worry, is the right accounting and tax registration in every country. Luckily, this is not my task.