If you sell digital products online, then VAT is a topic you should take some time to learn about. To put it simply, VAT is a consumption tax on goods and services in the EU and UK. If you think taxes in the United States are confusing, VAT takes it to a whole new level.
I went down this rabbit hole a couple of years ago, and today I’m going to share everything I’ve learned. Many resources that talk about VAT still aren’t very helpful or don’t explain it easily. Not all of us are tax accountants, and sometimes it can be overwhelming. Thankfully, for WordPress developers and sellers, tackling VAT is a lot easier now than it used to be.
Most of the examples below are taken from the point of view of a business registered in the United States, but no matter where you are, I think you’ll find something useful.
Important: I’m not a lawyer, so please consult one if you have any doubts about the information below.
- What is VAT?
- Penalties for not paying VAT
- EU VAT MOSS registration
- UK VAT registration
- Collecting VAT in Easy Digital Downloads
- How to pay VAT
What is VAT?
Value-added tax (VAT) is a consumption tax on the value added to goods and services in the EU and UK. You can think of this as an equivalent to something like sales tax here in the states.
Note: In this post, you’ll see me refer to the EU and UK separately. That’s because as of January 2021, the UK has left the EU (Brexit). There are different VAT steps needed for each.
Any business located in the United States is required to charge VAT for business-to-consumer (B2C) transactions to those in the EU and UK. Yes, you heard that right.
The rate is based on the customer’s country. For example, in France VAT is 20% while in Hungary it’s a whopping 27%. See tax rates by country.
For business-to-business transactions (B2B), you do what is called a reverse-charge VAT. If the customer’s business is registered in the EU or UK, and has a valid VAT number, it’s exempt from VAT.
You can think of a VAT number like Employer Identification Numbers (EIN) in the United States. Every registered business in the EU and UK has to have one. VAT numbers, however, are OK to share publically, and a lot of times you need to for legal purposes (like on an invoice or the footer of your website). EIN numbers you generally want to keep to yourself.
A VAT ID will look something this:
DE123456789 (example from Germany). When someone purchases a product from you for their business, they can enter their VAT number, and they aren’t charged VAT on checkout.
A VAT number has to be valid, of course, for the reverse-charge to work. You can easily look up VAT numbers on the European Commission’s website. This is a real-time system that checks the validity of VAT identification numbers against the databases maintained by member states. Ecommerce solutions like Easy Digital Downloads have extensions that can do this for you automatically.
The UK also has its own VAT validation system you can use at GOV.UK. A UK VAT ID will look something like this:
Penalties for not paying VAT
Are there penalties for not paying VAT? Yes and no. Honestly, this is kind of a grey area.
Currently, each individual EU country, as well as the UK, enforces its own VAT compliance with tax audits. Just like the IRS does. To enforce this in the United States, they would need cooperation from the United States government. The chances of that happening aren’t very likely.
With that being said, here are a couple of reasons why I highly recommend paying VAT:
- Peace of mind. You never know what might happen. Having to pay back taxes for a small WordPress company could ruin you.
- People don’t like taxes, but they do help support countries and their economies. If you’re selling your product to a country in the EU or the UK, it makes sense to help support them and follow the laws they have in place.
- You might decide down the road to pick up and move your business to the EU or the UK. Paper trails will most likely follow you, and then you’re putting yourself at a big risk of an audit.
EU VAT MOSS registration
The EU consists of 27 member states (countries). The UK withdrew from the EU on the 31st of January, 2020. You are required to pay VAT to each individual country using its own VAT rate. Before you run in fear, this is why the mini one-stop-shop (MOSS) was created. It simplifies the process. It allows you to submit your VAT payments all at once, and then they handle distribution to each member state for you. Phew!
Each member state basically has its own MOSS. If your business is registered in the United States, you can select any MOSS in the EU. I personally recommend using Revenue, the MOSS from Ireland.
The Ireland MOSS VAT is a popular one for its ease of use. See the steps to register.
After you register, you will get a confirmation back from Revenue. They are very friendly and surprisingly very fast to reply. They will confirm your account and issue you a VAT ID number. If you are in the United States, it will look something like this:
After you have your VAT ID, you will need to create an account on their website to make your payments. To do this, they will issue you a ROS Access Number. This is mailed in a physical letter. If you are using Revenue, the letter comes from Ireland. For me, it took a little over a week to arrive.
Once you have your ROS Access Number, you can use it to create an account on their website, along with a downloadable certificate you have to use to login. Make sure to store this certificate file someplace safe, and preferably somewhere that is backed up.
The entire process of getting a valid VAT ID and getting your account up and running takes about two weeks.
UK VAT registration
For the UK, you have to use a separate system due to Brexit and no longer being part of the EU. You can register for an account at UK.GOV. This will give you access to what they call the HM Revenue and Customs platform.
They will walk you through the steps and collect your business details. I recommend using the default VAT schedule when you sign up. This follows the normal quarterly payment schedule you’re probably used to. They have another option called VAT Annual Accounting Scheme if you need it. After you finish, you’ll get a confirmation.
The information you have submitted will now be verified. The security checks that HM Revenue and Customs (HMRC) perform mean that in most cases, it will take approximately a week for this process to be completed, but sometimes it may take longer.
It only took a couple of days to get verified when I did it. They will assign your business a UK VAT ID. If you are in the United States, it will look something like this:
GB123456789. In the UK, they sometimes also show it in this format:
123 4567 89.
Collecting VAT in Easy Digital Downloads
Before I dive into VAT and Easy Digital Downloads (EDD), it’s important to first mention other alternatives.
Freemius, for example, handles paying VAT for you. Some payment processors like FastSpring and Paddle can also handle VAT for you. The reason I use Easy Digital Downloads is to cut down on sellers’ fees. All of these are great platforms; it’s just a matter of doing what works best for your business. Using EDD might require little extra work than say Freemius, hence the reason for this article.
The good news for WordPress developers and sellers is that there are great solutions for collecting and paying VAT when using Easy Digital Downloads. I was previously using Quaderno (which is fine), but in 2019 the amazing team over at Barn2 Plugins released their EDD EU VAT plugin.
Being developers themselves, their team understands exactly what sellers using EDD need. I highly recommend it and it’s what I’ll be using in the examples below.
I also have to give a shout out about their support. It’s great! I emailed them in regards to an issue with the VAT checkout field and the fix was in the next plugin update. 👏
Set up EDD EU VAT plugin
After installing the EDD EU VAT plugin, all you need to do is enable Taxes in EDD (if you haven’t already). The developers keep the plugin up to date with the latest VAT rates for each EU member state. You don’t have to worry about configuring any tax rates.
After enabling taxes, go to the “Extensions” tab in EDD and fill out the information for EU VAT. Make sure to check the option to “Include VAT information on the order details page.”
Ensure you fill out all of your business’ information, including your VAT number, which you should now have. If you have EU and UK VAT numbers, I recommend entering both. For example:
EU123456789 / GB123456789.
The plugin adds the VAT number field on your EDD check out page. This utilizes the “Billing Country” to determine whether or not this should be hidden based on your store’s home country. For example, our store is in the United States, so by default, this field doesn’t show up for people in the United States.
(Optional) Collecting VAT in the UK
Everything above works great for the EU. But as of 2021, things got a little more complicated due to Brexit. The issue is that there is now a separate UK VAT validation service. Thankfully, the Barn2 Plugins team has provided a great custom solution to continue validating UK VAT numbers.
Set up an account with VAT Sense
The first thing you’ll want to do is set up an account with VAT Sense. Use my referral code: FORGEMEDIA This is a third-party platform (API) used by many large organizations such as Oracle and Siemens to validate VAT numbers.
It’s completely free forever for 100 requests per month. And paid plans are available starting at $6.99/month (or $67.10/year) for 500 requests. They have other plans as well for those generating higher volumes. Remember, you only generate a request when a UK business enters a VAT number. The dashboard on their website (seen below) lets you easily track your quota.
Add code to your site
The next step is to add a few code snippets to your EDD site. This will display the VAT field for UK businesses on checkout, as well as handle the VAT validation for UK customers (source). I recommend using the free Code Snippets plugin.
The first is their
edd_eu_vat_uk_hide_checkout_input filter. Add the following code to your site:
add_filter( 'edd_eu_vat_uk_hide_checkout_input', '__return_false' );
The second is to add this code snippet created by Andreas Nurbo. This will integrate the VAT Sense API for validation of UK VAT numbers. You’ll need to replace the
VATSENSE_API_SECRET with the API key from your VAT Sense account.
As Barn2 Plugins states, this will run alongside the EDD EU VAT plugin so that UK customers can validate their VAT numbers using the VAT Sense API, and EU customers can validate their VAT numbers using the VIES API.
Providing a Proper VAT invoice
Part of collecting and complying with VAT is being able to provide a proper invoice. This needs to include details such as your business name, address, sale amount, taxable amount, and VAT ID number.
While the EDD EU VAT plugin adds these details to the order page, it’s not a great solution for clients to download and print something at a later time. Trust me; if you don’t implement an easy solution for VAT invoices, you will get a lot of emails. I’ve been there.
There are two different extensions I recommend for this:
Option 1: EDD Invoices
The EDD Invoices extension provides basic HTML invoices that customers can download and customize anytime from their account.
Option 2: EDD PDF Invoices (recommended)
The PDF Invoices extension provides a nicely formated PDF invoice that customers can download anytime from their account. The reason I recommend this one is because it also has a convenient download link for admins. If someone emails you and wants you to provide them an invoice, there is no easy way to do this with option 1.
Note: The EDD EU VAT plugin has an integration with both of the above extensions so that all the proper VAT information is added.
Document VAT on your WordPress site
I’m a big stickler for documentation. Don’t forget to add at least one doc on your site about how you collect VAT and what they can do to troubleshoot any VAT ID verification issues. See an example on our Perfmatters’ site. This will save you a few support tickets.
How to pay VAT (EU and UK)
VAT is collected by you and must be submitted to its respective EU member state’s tax authority. It’s made available through the Revenue Online Service (ROS) at the end of each calendar quarter, and you have to complete your return within 20 days of that date.
For example, the return relating to the calendar quarter January-March must be submitted on or before 20 April of that year.
- 20 April, for first-quarter ending 31 March
- 20 July, for second-quarter ending 30 June
- 20 October, for third-quarter ending 30 September
- 20 January, for fourth-quarter ending 31 December
This is similar to how estimated taxes work in the United States. However, it’s important to note that the quarterly IRS deadlines don’t always match the VAT deadlines. So make sure to add all eight different dates to your calendar.
For the UK, you can choose to make quarterly payments, and they match the deadlines for the EU. This makes it a little easier as you can pay VAT, both for the EU and UK, at the same time. UK VAT payments must be submitted via UK.GOV.
Exporting VAT data from EDD
When it comes time to pay VAT, you will need to export your VAT report from EDD. The EDD EU VAT plugin adds two new reports under “Downloads → Reports.”
If you’re in the United States, you really only care about the main EU VAT report. With this, you can generate all of the sales that have VAT attached to them. Barn2 Plugins also has a good walkthrough.
The MOSS VAT return in Ireland must be completed in Euro, irrespective of which currency was applied when making the sale. The EDD EU VAT report, however, doesn’t do the exchange rate for you. In the CSV, you will see the VAT collected as USD. This means you need to convert it to EUR.
USD to EUR exchange rate (EU VAT)
According to Revenue, you need to apply the official European Central Bank (ECB) exchange rate applicable on the last day of the calendar quarter. These rates are published online on the ECB’s website and are updated daily.
This makes it a little easier because it means you don’t have to apply the exchange rate for each separate day, just what it is on the last day of the calendar quarter. Phew!
It’s important to note that one US dollar is worth slightly more than one Euro. It hovers between 0.83 to 0.96. This means you don’t need to worry about losing a bunch of money when doing the exchange rate.
Here is an example of how my Google Sheet is set up to handle the exchange rate from USD to Euros. This is based on an exchange rate of 0.893.
|Country||VAT %||Value||VAT||Exchange Rate||Value €||VAT €|
All you need to do is multiply the USD VAT amount with the exchange rate to get the € VAT amount. Then add them up. So in the example above, the total VAT owed would be €82.33. In Google Sheets or Excel, you can create a template and use a formula like
=SUM(I3*J3) to calculate everything for you automatically. This way, it’s pretty fast each quarter.
USD to GBP exchange rate (UK VAT)
The process for the UK is very similar. According to GOV.UK, you use the exchange rates published by HM Revenue and Customs (HMRC). This is known as the period rate of exchange. Just like with EU VAT, this makes it a little easier as you don’t have to apply the exchange rate for each separate day.
It’s important to note that one US dollar is worth slightly more than one pound sterling (GBP). It hovers between 0.73 to 0.87. This means you don’t need to worry about losing a bunch of money when doing the exchange rate.
Set up a free business Wise account
After you have the total amount, the next problem to tackle is how to pay VAT in the most cost-effective way, without a bunch of foreign transaction or wire transfer fees. A lot of banks in the United States charge between $35-50 for outgoing international wire transfers.
That’s where Wise (previously TransferWise) comes to the rescue. If you aren’t familiar with Wise, basically it’s a cheap and fast way to send money abroad. I recommend setting up a free business account. This service is actually pretty incredible!
You can set up a bank account for each country you regularly send money to. For example, I have one for EUR and one for GBP.
You can transfer your EU VAT from your US bank account to Wise and immediately convert it to EUR. You then do what they call a ROS debit from your Wise account to Revenue (Danske bank located in Copenhagen, Denmark).
The same thing goes for UK VAT. Transfer your UK VAT from your US bank account to Wise and immediately convert it to GBP. Then do a direct debit from your Wise account to HMRC.
Submit return for VAT MOSS (EU VAT)
After you’ve set up your Wise account, you’re ready to submit your VAT MOSS return. Follows the steps below. They also have a helpful step by step video.
Login to the Revenue (ROS) website. Under “File a Return” select “VAT MOSS” and click “File Return.”
Make sure the current VAT MOSS period for the quarter is selected and click “Continue.”
Confirm that you have the correct return selected base on the current calendar quarter. Then click “Continue.”
Enter all of the VAT amounts you collected for each EU member state. This is the data you calculated above in the Google Sheet. Then click “Continue.”
Confirm your return data and submit it. You’ll get an email in about one business day from ROS. You can then go on their website and save a copy of your official return as a PDF.
Sending email confirmation to ROS
Once you submit your VAT MOSS return, it’s time to send them a confirmation email that you’ve initiated a ROS debit from your bank account (your Wise business bank account). This is something they do require. Below is an example of the email template I use.
Subject: VAT MOSS payment, [business name], EUXXXXXXXXX, 01/04/2020 – 30/06/2020
I just initiated a ROS Debit.
– VAT MOSS payment for [business name], EUXXXXXXXXX
– Quarter: 01/04/2020 – 30/06/2020
– Total amount: €0.00
– Notice number: XXXXXXXXXA
If you need anything else, please let me know.
Once you email them, it takes a few business days, and you’ll see them deduct the money from your Wise account. You can then check your online account to confirm that your VAT has been paid for the quarter.
If you overpay on VAT, you will get refunds deposited back into your bank from the various EU states themselves, not from MOSS.
Submit return for UK VAT
I will be documenting the steps for submitting UK VAT returns this next quarter. Make sure to check back!
Additional VAT questions
The short answer is no. As long as you record it properly in your bookkeeping software or with your accountant, VAT should not be treated as part of your taxable income. You are simply holding VAT temporarily after collecting it and then submitting it to the EU member state or UK tax authority.
See, that wasn’t too hard, was it? 😄 Hopefully, by now, you have a slightly better understanding of how VAT works in both the EU and the UK. And now you know how to collect and pay it when selling your WordPress plugins, themes, or any digital product with Easy Digital Downloads.
If you have any questions regarding VAT or EDD, feel free to drop them below. Again, I’m not a lawyer, but I’m always happy to offer my advice.
Make sure to also check out my post on what we’ve learned building and selling WordPress plugins.