WooCommerce and the 2015 EU VAT Changes to Digital Goods

Written by Mike on December 18, 2014 Blog, News, Product News.

You may (or may not) have heard by now that the EU are introducing new rules surrounding VAT on digital goods from the 1st Jan 2015. We’ve been aware of these changes for a while now and have been working on some solutions in order to make these changes a little easier to handle. If you’ve not heard about these new rules, this sums them up:

On 1 January 2015 the VAT rules for cross-border B2C supplies of ‘digital services’ (i.e. broadcasting, telecoms and e-services) will change. From that date, VAT must be accounted for in the member state where the customer normally lives, rather than where the supplier of the service is established. – HMRC, Brief 46

And as John McCarthy, CEO of Taxamo puts it, “These new rules flip EU VAT on its head”.

The new EU VAT rules on the supply of digital services affect all companies (EU and non-EU) that sell to consumers inside the EU.

To be compliant you’ll need to do the following:

  • Charge the correct country VAT rates based on customer’s location.
  • Validate the customer’s location and ensure there are 2 pieces of non-conflicting evidence stored (e.g. a billing address and a matching IP Address).
  • Report your VAT to each EU state, or use a MOSS (Mini-One-Stop-Shop) which reports to each EU state on your behalf.

To help you become compliant, we’ve developed a Taxamo extension to integrate with their service, and also updated our EU VAT Numbers extension.

Please note that the following extensions will require WooCommerce 2.2.9+ due to some required hooks and modifications.

Taxamo: EU VAT calculation & reporting

Taxamo understands the burden these new rules impose on sellers and have come up with a hosted SaaS solution for VAT rate calculation and reporting. We spoke to John McCarthy, CEO of Taxamo who explained:

Digital service merchants should be provided with the tools to grow and prosper – their focus should always be on creating and selling great products. To this end Taxamo and WooCommerce have joined forces to enable merchants worldwide comply with new EU VAT rules. – John McCarthy, CEO of Taxamo

The extension itself uses the Taxamo API for correct TAX calculation and pulls those rates straight into WooCommerce when needed. Orders in WooCommerce are reported to Taxamo and stored along with the customer location evidence. This short video explains exactly what the service offers:

The EU VAT changes mostly concern B2C transactions, but Taxamo also offers VAT Number validation to prevent B2B transactions being affected.

Only B2C sales are affected but, of course, B2B sales will also need to be validated. Our solution also deals with this issue.

One of Taxamo’s stand out features is it’s storage of data and reporting.

Taxamo also creates Mini One-Stop Shop (or MOSS) reports for merchants who opt to use this new VAT registration system. Our solution also generates audit reports for merchants. We also store transaction data for ten years (as required by law) and provide comprehensive e-invoicing.

The Taxamo service itself has several pay as you go and subscriptions options which you can read about on their website.

Download Now

WooCommerce Taxamo

Manage and track EU VAT rules to keep your shop in line with the new European law.

Using Taxamo in your shop

The Taxamo extension will calculate the correct taxes based on your customers location at the checkout page, updating the order review section automatically.

Taxes are updated on the checkout automatically

Rates will be applied and stored separately for easier reporting, and if a customer’s IP doesn’t match their address, the extension will allow them to self declare the location via a checkbox.

EU VAT Number Extension

The EU VAT Number extension by WooThemes, which can be used to validate VAT Numbers from businesses, has been updated to deal with evidence collection during checkout for B2C transactions.

Collect and validate VAT Numbers from businesses on the checkout.

To deal with the new EU VAT rules, when dealing with regular consumers the extension will collect and validate the user’s IP address against their billing country. In the case of an IP mismatch, the customer will be able to self-declare their location and this will be stored as a piece of evidence along with the billing country. All evidence is stored inside the order.

Other features of the plugin include:

  • Forcing digital goods to be taxed by the user’s billing address
  • Appending the VAT ID to formatted addresses
  • Some extra tax reports for EU states

You will still need to input the VAT rates into WooCommerce (see below) and report VAT to the relevant authorities using a MOSS system preferably.

Buy now $39.00

EU VAT Number

Collect VAT numbers at checkout and remove the VAT charge for eligible EU businesses.

Setting up VAT Rates for Digital Goods

To handle the new VAT rates you can input all VAT rates for the EU states into WooCommerce. We’ve created this handy doc showing you how to setup these rates for your digital goods.


  1. Create a tax class in WooCommerce for your digital goods
  2. Add the various EU States VAT rates to your new tax class
  3. Assign the tax class to your digital products

This will charge the correct rates, but you will also need to gather data on the customer to ensure you’re complying with the rules using the EU VAT Number extension or your own code.

Read more about EU VAT

If you’d like to read more there are several official and unofficial resources available which you’ll find listed below.

Official resources

Unofficial resources

If you have anything else useful to share, please feel free to share in the comments below!

Please note that we are by no means legal experts – this article was written based on other resources and cannot guarantee 100% accuracy. If in doubt, contact your accountant/tax specialist.


110 Responses

  1. pixelsonic
    December 18, 2014 at 5:07 pm #

    Great! I´m glad you are aware of this and have a solution. It´s an important topic. Good to know that woo commerce is still the one and only best choice !

  2. Phil
    December 18, 2014 at 5:08 pm #

    Hi guys,

    this is great news that you are helping WooCommerce users with this issue, but don’t you think publishing this on the 18th of December with just a few working days left is a little bit too late? Maybe like other stores we have been working since several weeks on a solution and invested time and effort in making the store compliant with the new regulations.

    Cool that there is support from you – absolutely not cool to hear about them so late.

    • Matty Cohen
      December 18, 2014 at 5:20 pm #

      Hi Phil,

      I’m glad to hear you’ve got a solution in the works. We’d love to hear your feedback on our solution and if there are areas we could tweak to add extra value for everyone. 🙂

      Regarding our communication around this update, we’ve published an article in our knowledgebase in early December 2014, which we’ve shared via various social channels. There is quite a discussion going on over in those comments, as well.

      I look forward to your feedback on our implementation. 🙂

      Thanks and regards,

      • wikitude
        December 18, 2014 at 6:34 pm #

        The implementation we have now is very similar to yours with a validation at checkout and a component in the admin panel. The point is that we could have saved the effort and costs. Again, I like that you take care of that issue, but guess that I need to subscribe to more comm channels of Woo.

  3. Jesse
    December 18, 2014 at 5:33 pm #

    I may be missing the point here but since when can any other country impose any regulation upon citizens of another country? Is this just simply a “hey, if you guys could start taxing people for us that would be great thing”??

    I see no way for this to be enforced.. correct me if I am mistaken.

    • Rusti
      December 18, 2014 at 5:35 pm #

      Yeah, that’s not really Woo’s deal, they are just trying to make it possible for people to deal with new regulations. You might want to research the EU for specifics.

    • Ken Richman
      December 18, 2014 at 5:42 pm #

      Jesse it’s called the European Union and is an agreement between the member States.

    • Magnus Jepson
      December 18, 2014 at 5:45 pm #

      Hi Jesse here is some info from Taxamo:

      “Tax treaty arrangements will be a key digital VAT compliance weapon for EU tax authorities when they seek to recover debt from U.S. (and other non-EU) digital service suppliers in the New Year”: http://www.taxamo.com/digital-vat-compliance-eu/

  4. Ken Richman
    December 18, 2014 at 5:48 pm #

    There are many small business that sell online in the UK, where there is no requirement to be VAT registered unless turnover reaches quite a high threshold, way above what many businesses turn over that trade online e.g. selling the odd e-book or plug-in, how does this ruling affect non-registered businesses – can they / should they collect VAT from other member states? Can these non-registered businesspeople ignore it? Or will they now have to register for VAT in order to trade online with other EU countries?

    VAT is a big overhead in administration and also increases prices lowering profits, so best avoided if possible.

    • Magnus Jepson
      December 18, 2014 at 5:52 pm #

      There is an ongoing discussion amongst UK small businesses, so we suggest you follow #VATMOSS on Twitter or the Facebook group from the post above for more info on this.

  5. Dirk
    December 18, 2014 at 5:58 pm #

    Guys, both extensions you recommend do NOT COMPLY to the new law because both deal with the matter at checkout which is way to late! The customer´s country has to be determined before the very first price information is shown to the customer and this might even be on the website´s front-page. The reason for this is simple: In most (if not all) EU countries B2C prices must always include the correct VAT and you are not permitted to change the VAT rate along the way from shop page to checkout because otherwise you are misleading the customer which is against the law. And for this same reason it is neither a good idea to determine the customer´s country early on via GeoLocation since this might force you to display a different VAT rate later on in the process when the customer enters his country himself. It seems to me that the only compliant solution is to ask the customer for his country (and his VAT ID No. ) as soon as he enters the shop. Then you can do all the required tax stuff along the way to checkout. Use GeoLocation just to gather a second evidence. Just my 2 cents.


    • Magnus Jepson
      December 18, 2014 at 6:07 pm #

      Hi Dirk,

      We believe these solutions to be compliant, although you should consult with tax consultants for the specific laws in your country. The rules for showing VAT on your site differ from each country.

      • Dirk
        December 18, 2014 at 6:44 pm #

        Yeah, if you want to ignore the UK, Ireland, Germany, Austria… Just to name a few of the smaller, economically unimportant countries that require the above mentioned by law…

        • Magnus Jepson
          December 18, 2014 at 7:29 pm #

          If you already show prices including VAT on your site, then it should be possible to determine the location and show correct prices before they reach checkout. We’ll look into this with Taxamo.

    • visitonweb
      December 18, 2014 at 6:18 pm #

      Asking country and VAT as first action on the webshop seems strange.
      I would prefer to check IPadress and show prices VAT included based on physical location. Customer can always modify location at checkout. System will recalculate it correctly.

      I think that business are not concerned by the law you mention. This law is done to protect Customers but not businesses with VAT. A business owner can see prices included VAT and the VAT will be removed after filling the VAT field in.


      • Dirk
        December 18, 2014 at 7:04 pm #

        Hi Dimitri,
        of course it is strange – I never said that this is a cool thing to do. But this is where we will all end up with by the end of 2015 after a couple of court cases. And yes, what I mentioned is B2C – all to protect the consumer. And sure the customer can always modify his location (at checkout as it is now the only possible place). And that is exactly why he needs to make his selection right at the beginning. Imagine a Danish consumer currently connected to a Wifi hotspot in Luxemburg: Just with IP checks he sees a gross price of an ebook including 3 percent vat. He puts it into the cart and still sees a price including 3 percent vat. Now he moves to checkout and suddenly sees the product with a price including 25 percent vat (that might be the Danish rate). This is misleading the customer regarding the price. This customer can take legal action.

        It is not this vat law kicking in coming New Years day. It is different laws dealing with this (terms of price indication). Before this new vat law this price indication stuff might have been of minor concern for many shop owners, but now together with the new vat stuff it becomes a big thing to consider in many countries (UK, Ireland, Germany, Austria, just to name a few).

    • Mike
      December 18, 2014 at 6:49 pm #

      Hey Dirk. I read one of the links you posted about this in the KB article, and I remember this one point:

      > waive the obligation to indicate the unit price of products for which such indication would not be useful or would be liable to create confusion;

      Since geolocation isn’t 100% reliable, do you feel that this could cause confusion? In which case you could take follow that point and show prices inc tax for your base location only (until you have the customer’s final taxable location during checkout).

      That said the geolocation could be added separately to tweak pricing. I think I’ve seen the German Law compatibility guys do something similar in their plugin.

      • Dirk
        December 18, 2014 at 7:28 pm #

        Hey Mike, yes indeed I think that geolocation (at the beginning) could cause confusion if you consider the scenario Danish consumer currently connected over hot-spot in Luxemburg. The point is that it is not important what the Danish customer or the shop owner considers to be confusing but what bloody legal workers consider confusing. That is why I think it is better to start with the consumer selecting his country at the beginning (and maybe not even allow him to change his selection at checkout). Cross check this selection with geolocation. If it is a mismatch cross check with what the payment provider returns (Paypal at least returnd the country of the account holder).

        Showing prices incl. tax for base location only is no option at all. I really don´t know how this works in other countries – if you do this in Germany you are making a mistake for which you have to pay dearly.

        • Magnus Jepson
          December 18, 2014 at 7:34 pm #

          The conversion rate on your store would probably drop a lot if you ask the customer to verify their location before they have even browsed your site?

          How does your country say that you should handle this in conjunction with the new EU VAT regulation?

          • Dirk
            December 18, 2014 at 7:51 pm #

            No country says what you should do practically. But if you read all the laws and regulations involved carefully, what other option do you have? Please note that I am not only referring to this new EU VAT bullshit law but to any other law that deals with tax, price indication and consumer protection.

      • Giulio
        December 19, 2014 at 5:25 am #

        I can confirm that the same goes for Italy. Adding VAT at the checkout is against the law, B2C must advertise prices VAT included.
        However, I propose you a workaround for this that could solve the problem. You know that the average VAT for digital goods in EU is, let’s say, 20%. If you determine through geolocation that a client is connected from the EU no matter what country is you automatically increase 20% all your prices. When a client at the checkout will add the billing address, you will calculate the correct VAT and just charge it to the price.

        Example: my base price is $100. Someone visits my site from EU, so I show a price of $120. At the checkout the person adds a billing address from Germany where VAT is 20%, so I merchant will get $100 and pay $20 VAT. Another client from EU adds a billing address from France where VAT is 15%: in that case I will pay about $16 VAT and get $104 on my account.

        Does that make sense? Shouldn’t that solve all problems? Of course there is still the problem of geolocation not totally reliable but I see that a much better solution than any other workaround

        • Magnus Jepson
          December 19, 2014 at 10:11 am #

          Since you are already using geolocation, instead of adding a general 20% for EU visitors, why not show the actual VAT for the country the IP is from? E.g. if you visit from Germany add 20%, and if you are visiting from Denmark add 25%.

          • Dirk
            December 19, 2014 at 12:46 pm #

            Because in this case the VAT rate might change later on when the customer enters his country manually, and this change is, as we should agree upon by now, not legal. In Giulio´s setup there is no such a change.

            On a side note: This setup doesn´t cover the case where a consumer (EU resident) during vacation in Turkey connects via hot-spot and visits the shop. Relying on geolocation the shop would display prices without vat since Turkey isn´t an EU member – and this, again, it not legal. The whole situation is insane, isn´t it?

          • Giulio
            December 19, 2014 at 4:24 pm #

            I realize that for non Europeans all this doesn’t make much sense, and you have problems understanding it. For people grown up in Europe the system is natural: prices to the final customer must always include VAT.

            There’s also something else to note, and this is very important for you to understand. In Italy (and in all Europe I guess) advertising a price is like signing a contract. Prices on leaflets, tv commercials, etc. constitute a legal offer by which the merchant must abide. Advertising a price on home page is of course also a case of offer to which the merchant must comply, or it can be accused of breaching a contract. So, once you propose a price on your website, and the customer accept that offer by clicking ‘BUY’, you cannot change the price later on because you signed a contract where you accepted to sell that product for that price.
            In legal term it’s called implicit contract because no one physically signed it.
            Does that make more sense?

            What you have to do is simply switching from charging VAT to the customer to charging VAT to the merchant. My solution would solve the problem without violating any law because the final price would never change.

          • Mike
            December 19, 2014 at 8:48 pm #

            @Giulio here in the UK, you are allowed to show ex. vat prices if your target market is businesses, and also if prices were ever different in two locations for any reason, you don’t have to fulfil the order.

          • Giulio
            December 20, 2014 at 10:38 am #

            in Italy too for B2B you can show prices ex. VAT but the issue for the B2C case remains

        • Dirk
          December 19, 2014 at 10:33 am #

          Hi Guilio, thanks for confirming that Italy uses similar price indication laws as the other counties I mentioned. Now we have this confirmed for the UK, Ireland, Germany, Austria, Italy and Spain.

          Your proposed workaround works and in fact is a pretty easy way to deal with the matter. Going this way I think it is ok to determine the customer´s location with geolocation initially. Fact remains though that this has to be done early because otherwise there is no way to differentiate between customers inside EU and those outside EU.

          Is this a solution for any shop? I think it depends on how a particular merchant calculates his margins. If he has low margins and needs mass sales it might not be a good way.

          • Ken Richman
            December 19, 2014 at 11:21 am #

            Guilio’s solution means systematically charging different amounts for the same product depending on location selling to. That may well breach EU laws.

            The price minus the VAT needs to be the same, in my opinion.

          • Giulio
            December 19, 2014 at 3:58 pm #

            Hi Dirk,
            I should also add that in my opinion, if a customer connects from outside the EU then the website won’t breach any regulations if the VAT changes later on because the website must comply to the local regulations. So to take your example, if I connect from Turkey and then add an Italian billing address the website could not be accused of violating the Italian law because it must comply to the Turkish law first.

            @Ken (sorry, I cant reply to your post)
            what matter to EU authorities is which final price is shown to the final customer, not my margin. In this case the final price would be the same all over Europe. If I practice the same price all over Europe and then have different margins depending on each country’s VAT, why would that be illegal?

          • visitonweb
            December 19, 2014 at 4:12 pm #

            Dirk, I can confirm that it is the same rule in Belgium.
            Catalog have to show prices included taxes (and correct one! I can not show 20% when the VAT is 21%).

    • Angel
      December 18, 2014 at 7:26 pm #

      You are completely right Dirk.
      Spanish regulation says that the commerce should write the price allways with the VAT included.
      So, I am not sure how the people is going to comply with this law and how EU is going to control it…

    • Lewi
      December 19, 2014 at 11:45 pm #

      Dirk, I’m wondering if this might address your concerns:


      See the paragraph:

      “VAT calculation – to pre-calculate VAT server-side. The only difference for Taxamo.js method is that the e-shop software should provide Taxamo with the customer’s ip address.”

      • Lewi
        December 19, 2014 at 11:48 pm #



        In the table:

        When? What? Comments
        Browsing the store VAT pre-calculation It is possible to update prices while the customer is browsing available offers/products.
        This step is optional, as Taxamo can exclusively calculate VAT amounts upon checkout in step 2.

        • Dirk
          December 20, 2014 at 2:29 pm #

          Lewi, in fact Taxamo seems to provide a lot of the needed functionality. The point is that WooCommerce doesn´t seem to make much use of it at this stage.

  6. thonk
    December 18, 2014 at 6:10 pm #

    I totally agree Dirk, the elephant in the room with WooCommerce is still the lack of support for displaying EU VAT correctly at the *start* of the shopping process. Returning logged in customers should have the correct prices displayed to them based on their stored billing/shipping location. I brought this up 18 months ago now and there is still no solution or even official acknowledgement of the problem.

    As well as displaying prices based on logged in customers stored location, furthermore there should also be an easy to access site-wide toggle switch that allows users to turn tax on or off before they have even registered on the site.

    WooCommerce have made a great platform that makes it easy to sell and create successful businesses, but they aren’t keeping up with the demands of those successful businesses as they grow. Too much focus on new customers perhaps.

    • Magnus Jepson
      December 18, 2014 at 6:15 pm #


      I’m sorry if we’re avoiding the elephant in the room. I wasn’t aware of the presence of one though 🙂

      I checked our ideas board, and saw a few low voted ideas on this http://ideas.woocommerce.com/forums/133476-woocommerce?query=eu%20vat

      We do want to keep up with demand, but we have to listen to those demands through our channels which are ideas board, support and community posts.

      Feel free to add/vote up on our ideas board and post a direct link here.

    • visitonweb
      December 18, 2014 at 6:54 pm #

      I do agree with @thonk concerning displaying catalog prices correctly for logged-in users.

      It is an EU obligation.

      And for guest users, trying to display prices with their country VAT based on IPadress seems a good idea to fit EU obligations.

  7. visitonweb
    December 18, 2014 at 6:22 pm #

    After testing, VAT is not recalculated correctly after applying coupons.

    • Magnus Jepson
      December 18, 2014 at 6:39 pm #

      This should work, but it would be great if you could submit a ticket so we can look into this.

      • visitonweb
        December 19, 2014 at 4:28 pm #

        This issue has been submitted 6 month ago in the community.
        Without any answer.
        Could you transmit to you devs ?

      • visitonweb
        December 19, 2014 at 4:37 pm #

        I’ve open a ticket for you 😉

      • Sarah
        December 31, 2014 at 11:31 pm #

        I’m having possibly the same issue. If the coupon is applied before tax, the tax is charged correctly but taxamo thinks they’ve paid the full taxed amount instead of the tax after coupon. ie for a product priced at $9, VAT would be 2.12, but after coupon comes in at 1.11, user pays 1.11, taxamo reports 2.12.

  8. Gabriele
    December 18, 2014 at 6:29 pm #

    It is very interesting that non-EU businesses are included in this ruling, questionable if lawful. This said, I would expect that this ruling exempts U.S. based businesses who don’t have and never had any clients located in the EU member countries.

    • Dirk
      December 18, 2014 at 7:39 pm #

      If you don´t deal with EU consumers at all continue your business as usual. Just make sure that EU consumers cannot order anything. When your first EU customer orders you have to join the club though.

      • Steve
        January 1, 2015 at 7:51 am #

        From what i gather you still have to collect the location data to PROVE your customers are in the EU?

  9. Morgen
    December 18, 2014 at 7:17 pm #

    As far as I know this new law only relates to Digital SERVICES- not GOODS, as told in this article. Makes quite a difference for 99% of all Woocomerce users.

  10. Tim Graham-Jones
    December 18, 2014 at 8:05 pm #

    You are missing a trick here and the debate is moving on.
    VAT is only payable on digital services – i.e. direct downloads.
    If you insert a human element into the equation, the VAT is not payable (such as accepting and order then emailing the product or putting it where it can be downloaded subsequent to the order).

    However this is for 2015 and in 2016 it will cover goods as well.
    One of the problems is you are only getting the english version of the rules as described by HMRC ,who readily admit that they have been caught out in providing information to micro-businesses. In the 18 months preceding this they have been rolling this out to businesses but only to those that were already VAT registered.

    A reply from somebody in France stated that she was registered for French VAT but until she actually reached the French VAT threshold the state was not interested.

    Ok – Yes the rules are published and are a complete pain, give it a bit of time and a solution will be found there are 450, 000 micro-businesses in the UK affected by this and judging by the French answer HMRC are not yet acting in the most efficient way .

    • Dirk
      December 19, 2014 at 4:50 pm #

      Tim, can you point me to any source that confirms that in 2016 this stuff will apply to physical goods purchased online as well? My quick search didn´t show any results.

    • Diane Chapman
      January 25, 2015 at 3:43 pm #

      I live in France. If I register as an auto-entrepreneur which is normal for all small business starting up I am not allowed by LAW to charge VAT. If my income goes above the vat limit I have to change regime and I am in the VAT mess (sorry moss). So what do I do, break the law or wait 3 years (it is normally 3 years) until France catches up and comes looking for all the tax I should have charged but have not? No, I will sell through Clickbank as they are the only company to give me a written assurance they will collect the tax if and whey necessary.

      Total mess and it will never work as there are not enough people to check on it.

  11. Bryan In The US
    December 18, 2014 at 9:15 pm #

    So let me get this right… Digital goods are not taxed in the United States, but because EU politicians want to “level the playing field” (AKA collect more tax revenues) US businesses now have to collect taxes? And the proposed solution by Woo to calculate VAT at checkout, which is perfectly acceptable here in the US, is illegal to do in the EU?

    Our micro-business, which sells digital goods for $1 USD, now has to decide if:

    1) We block sales to all EU countries, which of course violates other EU laws
    2) Ignore the EU VAT law and hope the US tells the EU to go pound sand when they try to collect against us
    3) Lose 9% – 27% (depending on the EU country tax) of profit on each sale

    I am at a loss for words at how politicians are incapable about understanding unintended side effects to their actions.

    I certainly hope someone can come up with a solution fast.

    • Bill Robbins
      December 19, 2014 at 6:22 pm #

      Remember all treaties in the US have to be ratified by congress. This US Congress is not going to ratify a treaty that requires US companies to collect taxes and send them to the EU.

      Taxamo has incentive to overplay the likelihood of this tax situation becoming reality so that they get people using their products out of fear.

      “No taxation without representation” seems appropriate here.

      • Mike
        January 27, 2015 at 12:12 am #

        “This US Congress is not going to ratify a treaty that requires US companies to collect taxes and send them to the EU.”


  12. Rafael Serna
    December 19, 2014 at 1:06 am #

    I wonder what would happen if we don’t follow this law; how the EU controls this info, how they’ll know? Also, what are you sellers going to do? Will you loose that 20% by keeping the same prices or will you add that 20% to the price and loose new potential customers?

    • Dirk
      December 19, 2014 at 11:10 am #

      You are from the US? I guess if you don´t follow this *censored* nothing will happen for a long time. But keep in mind that agreements are in place (or beeing worked on) between the US and the EU or between the US and particular EU countries. Some of them deal with taxation. And it might come the day when a tax audit for your business is triggered by some EU authority. If won´t be some EU guy checking your book-keeping but your very own US tax boys and gals.

      Your EU customer most probably doesn´t care if you charge tax or not. He might even be happy to get lower prices if you don´t charge vat. So basically it is not the customer himself you have to fear. But there are lawyers, consumer protection organizations, other legal workers that might check you shop and even do some test shopping – and *censored* up if something is not as it should be. This is what is going on for instance in Germany for a long time. So after 1st January why this bad practise shouldn´t be extended, say, to the US? The (EU) law will be in place, bilateral agrrements are in place or will be in place…

      • Bill Robbins
        December 19, 2014 at 6:25 pm #

        The US Congress has the role in our government of ratifying treaties like this. It is highly unlikely they will approve something like that. We can’t get even reasonable taxes passed here at home. Why on earth would they then pull money out of the US economy and send it to the EU?

        One of the major reasons we stopped being colonies was over taxation without representation from Europe. I don’t see that changing in our current political climate.

  13. Tomas
    December 19, 2014 at 9:56 am #

    To my opinion the only way to get this right and to make it (hopefully) compliant with the new EU-Law is, that you have ONE price – no matter which EU country the customer lives in. The ONE price always includes the VAT, as it should. So it will be the “profit” that variates, not the customer price!

    Let say you sell an e-book for 10,-€. So your profit will depend on the VAT of the country, the customer comes from. All you have to do is to recalculate your prices. If the VAT in the different EU countries vary from 9% – 27% and you sell your digital products equally to each of them, than calculate your prices with 18% VAT. I hope you get the idea.
    Please correct me if I miss something 😉

    I think this is what for example Apple is going to the with their App-Stores (article in German)

    Would this actually be possible with one of the above mentioned plug-ins??

    • Magnus Jepson
      December 19, 2014 at 10:12 am #

      Yes you can set WooCommerce to have prices including taxes.

      • Dirk
        December 19, 2014 at 10:43 am #

        Yes, but still you need a way to differentiate consumers and business customers. And again this differentiation has to be done way before checkout because a business customer expects to see prices excl. tax which you are not permitted to display to consumers. Unless you don´t care and display prices always incl. tax no matter if the particular customer is a consumer or a business.

    • Ken Richman
      December 19, 2014 at 11:31 am #

      If you have one price including a notional VAT then you in fact have many different prices, and selling the same product at different prices depending on country of customer could break EU laws. That’s my take on it.

      • Dirk
        December 19, 2014 at 12:57 pm #

        Ken, I don´t think so. The customer pays always the same price, no matter where in the EU he is situated. It is just vat and margin that vary – but they always vary together. In fact the customer pays different prices if you start with one single net price and add the various VAT rates on top.

        • Mike
          December 19, 2014 at 8:51 pm #

          How would this work when taking VAT off for businesses? Lets say 20% vat is included and one customer is in the UK (20%) and one is in Belgium (21%).

          • Dirk
            December 20, 2014 at 2:12 pm #

            Hey Mike, good point. That´s why further up I replied to Magnus that you still have to differentiate between consumer and business user – and this you have to do early enough because you need to display net prices to business users as this is what they expect to see. I think no matter how you look at the whole situation WooCommerce requires a change. It needs to gather customer location and type of customer (consumer or business) early enough to display correct prices (with correct VAT or net) all along the way from shop page (if this is the page where prices are displayed the first time) to checkout.

            This can be done by a plugin – I know because I wrote it already. But such a plugin requires to hook in to so many places and tweak so many things Woo that I don´t consider it an ideal solution. Woo should really consider a redesign of the core parts involved because I fear if you don´t sooner or later you will loose users and subsequentially customers to the competition. Ubnless you call quits on Europe. Here is an example of how it might work: https://secure.vemmaeurope.com/

      • Tomas
        December 19, 2014 at 1:07 pm #

        It’s rather the other way round. The consumer has to pay the VAT anyway, so he doesn’t really care about it. If the net price is 10.00,-€, than the consumer will have to pay 11.90-€ in Germany and 12.50,-€ in Sweden. If you use the ONE price method, he will pay let say 12.00-€ regardless which EU country he comes from.

  14. Bart
    December 19, 2014 at 2:05 pm #

    Unfortunately the option of Taxamo is useless in my case.

    We sell software to B2B and B2C.

    As told by the support staff from Taxamo their stuff only works for B2C.

    When I use it for B2B I get several wrong values, for example incorrect VAT for companies in our own country (Netherlands). When I use Taxamo, they correct it to 0 euro VAT, but this is incorrect. It should still charge the VAT for companies inside our own country. Unfortunately Taxamo does not support this.

    Hopefully WooThemes can solve this out with Taxamo and make a solution which works also for B2B.

    • Koen
      December 20, 2014 at 1:53 pm #

      Are you sure about this? I have a hard time believing a service like Taxamo can’t handle the B2B part. This is so bad if it is true.

  15. Dirk
    December 19, 2014 at 4:43 pm #

    Just out of interest I would like to know which solution to display prices inc. VAT to consumers you guys think is the best:

    1. Give WooCommerce a price without VAT and have the system add the VAT with the rate specific to the consumers country. This leads to different gross prices displayed depending on the consumers country, but your margin remains the same.

    2. Give WooCommerce an end price including VAT and have the system subtract the rate specific to the consumers country to calculate the net price. This leads to cross prices that are always the same no matter which country the consumer comes from, but your margin changes according to the specific VAT rate.

    What do you say?

    • Tomas
      December 19, 2014 at 4:56 pm #

      Dirk, I think option 2 is far easier to accomplish.
      For option 1 you would actually need some kind of splash screen in some 20+ different languages (!!!) asking the customer which country she/he/it comes from. As far as I understand it, this splash screen should appear as soon as the customer enters the shop.

      • businessdad
        December 21, 2014 at 10:09 pm #

        Tomas, our implementation of solution #1 doesn’t involve a splash screen. It simply uses geolocation detection and shows the detected country in the sidebar. If customer wishes, he can change it and see the prices that apply to him/her. No complex translations, no popups, very simple approach (we sticked to the KISS principle as much as we could). 🙂

        • Asbjoern
          December 30, 2014 at 11:23 pm #

          I’ll just chime in here: I’ve used the product referenced above (use it every day in my shop, in fact), and it’s absolutely brilliant. It ensures that a) visitors see the correct VAT rates the second they enter the store (using geo-location), any VAT-related stuff will be completely hidden for non-EU visitors, and 3) in case of an incorrect IP identification, the user can just pick his or her location in the sidebar. It’s called Tax Display by Country and is by a company called Aeila, btw. And I have NO affiliation with them – I’m just genuinely happy with that plugin, and can’t believe more people haven’t noticed it yet.

    • businessdad
      December 21, 2014 at 10:06 pm #

      I don’t want to start a polemic, but we developed a solution months ago to display prices using the VAT that applies to visitor’s location as soon as the visitor reaches the site. Location is detected via IP address and customer can change it via a selector. Incidentally, we submitted such plugin for review and inclusion on WooThemes marketplace, and it was rejected on the ground of it being “too niche to be of any real value” (official reply), so we started distributing it independently.

      As for the price display, we also started working on a solution to allow keeping prices unchanged no matter what applies to the customer. At the moment we have a patch that works in 100% of cases, but it requires a modification in WooCommerce core (at least until our pull request is integrated in WooCommerce 2.2).

  16. Sabina
    December 19, 2014 at 6:23 pm #

    I love you guys. You are the best! the only shopping cart which is up to date with everything. I am so glad I didnt build my shop on Shopify or other platform where >I cant comply with the EU regulations and I would have been forced to close my shop.

  17. quanto
    December 19, 2014 at 10:56 pm #


    Do you plan adding an automatic updating functionality for the EU VAT Rates for your “EU VAT Number”

    Also, do you plan export of the sales as a SAF-MOSS auditing file (see here: http://www.taxamo.com/moss-audit )?

  18. Bryan In The US
    December 20, 2014 at 2:38 am #

    For all of the shop owners who live in the United States, I suggest that you write to Congress ASAP. I sent off letters to my congressman, two senators, and one additional congressman who is interested in technology oriented issues.

  19. Jeffrey
    December 20, 2014 at 6:46 pm #

    We’re in the USA, launching a new shop with digital downloads and another site for webinars and the like.

    I think in light of all this, unfortunately, we want to exclude sales to EU… which I’m sure is our right. Any idea on the best way to do this?

    • Magnus Jepson
      December 20, 2014 at 6:58 pm #

      You can select all the countries you want to sell to in WC General settings.

      • Jeffrey
        December 20, 2014 at 7:05 pm #

        Perfect. And so it is. Regrettably.

  20. Koen
    December 22, 2014 at 11:53 pm #

    Hi, I think the Taxamo plugin has a CRITICAL bug in it.
    When given a valid VAT-number, It correctly deducts the B2B VAT for businesses within the EU, but it also deducts this VAT for a business that is in the same country as the Selling Business. At least, this plugin does so for my shop that is actually located in Belgium.
    When a business from Belgium buys something from another business in Belgium, the VAT should NOT be deducted. And the Woocommerce Taxamo plugin does deduct the VAT in that case, and that is a HUGE problem.
    I don’t know whose fault it is for sure, but after having contact with Taxamo I think there are issues with the implemenation of the woocommerce plugin and not with Taxamo itself.
    Could this problem be resolved?

    • Magnus Jepson
      December 30, 2014 at 12:19 pm #

      Hi Koen,

      As this is specific to Belgium, I would ask Taxamo how they handle it. They have full access to our integration and will uncover if there are any changes that need to be made.

      • Koen
        December 30, 2014 at 2:28 pm #

        Hi Magnus,
        I am in talk with Taxamo for more than a week now. Problems went worse. Now, for some reason, a person from Nigeria (Africa) did have to pay VAT for a product that I sell from Belgium.
        Taxamo is in talk with your developer apparently. So they want to nail this, and that is a good thing of course.
        I wonder it has something to do with the fact I am using product variations.

  21. Andrea
    December 24, 2014 at 9:35 pm #

    OK, this is my situation…

    – I am in the UK, but my customers are in Italy.
    – I sell ebooks which from Jan 1st should include 4% VAT (down from 22% as it is now).
    – I cannot think why a business shold buy from me, so I can discount that.
    – Also I could easily restrict my market to Italy alone as so far the number of sales from outside Italy are virtually zero.

    Said all this I can easily charge whatever price I charge and then work out the VAT backwards. If someone buys from the UK the VAt woujld be nil. If they but from other countries it would be… who knows… but I could absorb whatever loss a higher tax rate requires me to lose.

    Bearing all this in mind, what is the easiest solution for me? Taxamo i think is way too elaborate for my needs…


    Have you all a Merry Christmas.

    • andrea
      December 26, 2014 at 1:23 am #

      And one more thing… what about Paypal; is there any difference? Nobody has mentioned it, so I woud say no… But is there a certain type of “checout” I would need for Paypal transactions? I currently have Express Checkout, but I wouldn’t mind downgrading…

      • Magnus Jepson
        December 30, 2014 at 12:17 pm #

        There isn’t any dependence on which payment gateway you use, as the Taxamo solution calculates VAT on checkout before you proceed with payment. PayPal Express will work fine.

    • Magnus Jepson
      December 30, 2014 at 12:16 pm #

      Taxamo is the easiest solution to become compliant, as it requires the least setup in WooCommerce.

  22. allmyhoney
    December 25, 2014 at 11:38 am #

    Is there any ability for the customer to store their VAT number in their account now? Like the address is stored or billing address. Just incase they need to update it or it saves them time on return orders? I have a b2b site and well this is important now.

  23. Sebastian Nielsen
    December 28, 2014 at 10:04 pm #

    Want to say that this extension is NOT compliant unless the billing solution uses AVS or post-payment.

    According to the rules, you cannot use 2 evidences of the same “type”, you need to use 2 distict evidences.

    If the billing adress is NOT validated against the card, it Counts as self-certification.
    Unless the payment type is “billing” itself – eg post-payment by bill. Then the adress will validate itself since the customer’s bill will be sent to the billing adress.

    I would recommend using BIN validation (6 first digits of credit card – you can in many cases get the BIN and “card issuance country” from your payment gateway) and IP-adress validation in unison.

  24. Kristjan
    December 30, 2014 at 2:00 pm #

    We installed the WooCommerce Taxamo plugin and everything seems to work well with “Simple Products”. It looks like “Variable Products” are missing the option to make them “Virtual” or “E-Book” in the sense of tax class.

    The “Virtual” checkbox is there for all the variations but flagging that doesn’t influence whether or not the taxes are calculated upon checkout.

    • Koen
      December 30, 2014 at 2:32 pm #

      Here it is. I am using variations also. All my variations are flagged as virtual, but calculating VAT by Taxamo is a mess: VAT to be paid for persons outside of the EU where my business is located within EU, deduction of VAT for a business that’s for the same country as my business…
      Hope they can solve these issues.

    • manmademan
      December 30, 2014 at 6:34 pm #

      I have this same issue

  25. JenniferEklund
    December 31, 2014 at 10:09 pm #

    There’s supposedly an update but it’s not showing up in my WP Dashboard or here on the site. Where is it?

  26. visitonweb
    January 2, 2015 at 3:02 pm #

    I’m a Woocommerce subscriptions user.
    I’d like to know how to recalculate VAT for all future renewals ?

    Thank you


  1. Weekly Roundup: December 19, 2014 – Sell with WP
  2. Weekly WordPress News: WordPress 4.1 Live, Happy Holidays & 2015 Plans
  3. WooCommerce and the 2015 EU VAT Changes to Digital Goods - WordPress Community | powered by Mpress Studios
  4. Handling EU VAT on WPJobManager.com with WooCommerce - Mike Jolley
  5. New Year Brings Tax Changes for Digital Business with EU Customers | Page Progressive - Raleigh Custom Web Design
  6. Sell Digital Products Online? The EU Wants You To Pay Them Money #VATMOSS
  7. Evermore is Ready for 2015 EU Vat Changes
  8. 5 Links to Help You Understand EU VAT & MOSS Obligations
  9. This Week in WordPress: Tributes for #wpmom, WP Predictions for 2015 - WPMU DEV
  10. 2.3 Handsome Hippo Beta 1: Release and Highlights | Develop WooCommerce
  11. What Does VAT Mean for US Bloggers? - Inspired Bloggers Network
  12. How to Avoid VAT for Bloggers and Small Businesses