WooCommerce EU VAT Number

WooCommerce EU VAT Number

Collect and validate EU VAT numbers on WooCommerce checkout. Automatically exempt VAT for valid numbers. Add all EU countries VAT standard rates to WooCommerce


When enabled, WooCommerce EU VAT Number module lets you collect and validate EU VAT numbers on WooCommerce checkout and automatically (if necessary) exempt VAT for valid numbers. You can also add predefined set of 28 European Union countries standard VAT rates to WooCommerce.

Collecting and Validating EU VAT Numbers

You should start by visiting module’s settings at WooCommerce > Settings > Booster > Emails & Misc. > EU VAT Number.

WooCommerce EU VAT Number Module Options

Field Label
Field label on shop’s checkout (frontend).

Default: EU VAT Number
Field placeholder on shop’s checkout.

Default: EU VAT Number
Should the field be required for customer to fill on checkout?

Default: No
CSS clear after the field.

Default: Yes
CSS class.

Default: Wide
Should the VAT be validated? VAT is validated through “VAT Information Exchange System (VIES)”.

Default: Yes
Message on Not Valid
Message to the customer if VAT is not valid.

Default: EU VAT Number is not valid.
Disable VAT for Valid Numbers
Subtract VAT from order for validated numbers.

Default: Yes
Preserve VAT in Base Country
This will prevent from subtracting the VAT for validated customers with billing country same as shop’s base country.

Default: No
Check for IP Location Country
Allow only customers located in country to enter that country’s VAT code. Customer is located by IP.

Default: No

Adding customer’s EU VAT Number to PDF Invoices

This can be done with wcj_order_checkout_field shortcode.

[wcj_order_checkout_field field_id="billing_eu_vat_number" before="VAT Code: "]

EU Countries VAT Rates Tool

List of EU VAT rates to be added

Country Rate
1 AT – Austria 20%
2 BE – Belgium 21%
3 BG – Bulgaria 20%
4 CY – Cyprus 19%
5 CZ – Czech Republic 21%
6 DE – Germany 19%
7 DK – Denmark 25%
8 EE – Estonia 20%
9 ES – Spain 21%
10 FI – Finland 24%
11 FR – France 20%
12 GB – United Kingdom (UK) 20%
13 GR – Greece 23%
14 HU – Hungary 27%
15 HR – Croatia 25%
16 IE – Republic of Ireland 23%
17 IT – Italy 22%
18 LT – Lithuania 21%
19 LU – Luxembourg 17%
20 LV – Latvia 21%
21 MT – Malta 18%
22 NL – Netherlands 21%
23 PL – Poland 23%
24 PT – Portugal 23%
25 RO – Romania 19%
26 SE – Sweden 25%
27 SI – Slovenia 22%
28 SK – Slovakia 20%
Accessible through:
  • WooCommerce > Settings > Booster > Emails & Misc. > EU VAT Number
Tested on WooCommerce 3.5.4 and WordPress 5.0.3
Plugin can be downloaded here. If there are any locked fields in the module, you will need to get Booster Plus to unlock them.

Leave a Reply



  1. Gufix January 17, 2016 at 1:04 pm #

    From 01.012016, in RO-Romania, the VAT value in 20%. Please make the undate.

    Reply to thread

  2. Raul April 19, 2016 at 8:06 am #

    How can I had the VAT Number to the new order email alert? Thank you.

    Reply to thread

    • Booster Support Team April 19, 2016 at 3:59 pm #


      We’ve added EU VAT number to emails in our development version, please download it from here – http://booster.io/dev/. Please let me know if that works as expected.

      P.S. You will need to uninstall the old version first (don’t worry your saved settings won’t disappear).

      Best regards,

      Booster Support Team
  3. Paul July 2, 2016 at 9:08 am #


    I ahve eanbled the EU-vat check but my vat number is always wrong 🙂
    What can be the problem?

    Reply to thread

    • Booster Support Team July 6, 2016 at 3:05 pm #


      Please make sure that you are entering VAT number in CCXXXXXXX format, where CC is country code, XXXXXXX is the number and without spaces between them. If that is not the case please contact me at tom@booster.io for further support.

      Best regards,

      Booster Support Team
  4. M December 12, 2016 at 4:38 pm #

    Hi, right now, we are using this “EU VAT Number” Plugin: https://woocommerce.com/products/eu-vat-number/.

    To comply with tax laws, we need to disable Subtract VAT from order for validated numbers for events that are sold trough our online shop.

    Is it possible to make an exception (like “do not Subtract VAT from order even for validated numbers.”) with your plugin for specific products?

    Thanks for help!

    Reply to thread

  5. Bob March 2, 2017 at 2:06 pm #

    How do I display this field in ‘My account’ pages so it can be edited by the customer?

    Reply to thread

  6. Robin March 7, 2017 at 8:33 am #


    How do I change the list of VAT rates by country? Indeed, some are false, they must be corrected.

    Reply to thread

    • Booster Support Team March 7, 2017 at 8:37 am #

      Hi Robin,

      You can set/change VAT rates directly in WooCommerce > Settings > Tax > Standard Rates. Could you please let us know which VAT rates are wrong, so we could fix it in plugin?

      Best regards,

      Booster Support Team
  7. Robin March 7, 2017 at 8:50 am #

    Thanks but I tried to change the rates directly in WooCommerce> Settings> Tax> Standard Rates. Nothing change.

    The wrong rate is that of “la Reunion” (RE). This is a special case, the rate must be zero. The people of “la Reunion” pay a special tax called “octroi de mer”.

    Reply to thread

  8. Neale March 30, 2017 at 11:21 am #

    Is there a way I can have a toggle/switch which enables prices on the site to be shown with or without VAT added on products.
    I want our customers to be able to switch VAT prices on or off as they need it.

    Thanks, Neale

    Reply to thread

  9. Nathalie April 21, 2017 at 9:21 am #


    Due to regulations in the Netherlands we are required to print a statement on the invoice when EU VAT redemption is applied. If EU VAT redemption is not applied, the statement must not be shown.
    How can I do this?

    Kind regards, Nathalie

    Reply to thread

  10. andrew May 24, 2017 at 4:58 pm #

    hello from Malta – MT :]]] i love this booster – it will be a big help.. and i installed on my xtheme – with woocommerce..
    however on testing ( with valid vat numbers from my clients in Italy – none of them are being validated. – i made sure its CCXXXXXXX – no spaces – please help :]
    ( my shop is still offline at the moment ) – im testing – but its all set up and im stuck with this :]]

    Reply to thread

    • Booster Support Team May 24, 2017 at 9:01 pm #

      Hi Andrew,

      Is there any possibility for me login to your server and check it? If it’s offline – maybe we can do a Teamviewer session? My email is tom@booster.io.

      Best regards,

      Booster Support Team
  11. Wez September 11, 2017 at 10:17 am #

    Do you plan to have a tax toggle feature so that trade customers view the trade price excluding the VAT.

    Reply to thread

  12. Kamil January 25, 2018 at 8:54 am #

    Hello Tom,
    How do I display VAT number field in ‘My account’ pages so it can be edited by the customer? – It is possible? If customer can’t edit it is possible to only display VAT number in “My account”? Also how to change position of VAT number field in email that customer received right after make purchuase in shop like on this print screen prntscr.com/i5b43o ?

    Thank you for support.

    Reply to thread

    • Kamil January 26, 2018 at 5:47 pm #

      Hello Tom,
      can you help?


  13. Kamil February 1, 2018 at 9:53 am #

    How to change position of EU VAT number in emails? I add this code to the child theme in function.php:

    ###################### code ######################
    add_action(‘woocommerce_email_customer_details’,’add_custom_checkout_field_to_emails_notifications’, 25, 4 );
    function add_custom_checkout_field_to_emails_notifications( $order, $sent_to_admin, $plain_text, $email ) {

    $output = ”;
    $billing_eu_vat_number = get_post_meta( $order->id, ‘_billing_eu_vat_number’, true );

    if ( !empty($billing_eu_vat_number) )
    $output .= ‘‘ . __( “NIP:”, “woocommerce” ) . ‘ ‘ . $billing_eu_vat_number . ‘‘;

    echo $output;
    ###################### code ######################

    but after add this code, there appears double info EU VAT number in e-mails. It display before billing section and after billing section.
    How to hide EU VAT number before billing section that Booster add automaticaly?

    Thank you for support!

    Reply to thread

  14. andrew farrugia June 1, 2018 at 7:25 am #

    hi i have a customer from Spain – and their vat number is validated on eures website – but it does not work my site – so i even tried making an order myself – with all their details and same thing . . then i tried changing the number from the admin panel – and click validate and remove taxes – and again nothing works – can you please help me as this is an important customer – and i need to get the system to validate their number – :} thanks –

    ES75962048V – this the vat number that is not getting validated –

    Reply to thread

    • andrwe June 1, 2018 at 7:40 am #

      hi i think i found the fix – i changed Ccul to soap – in the first validation method – ( i think it works ) – so hope it helps others :}}

  15. andrew June 1, 2018 at 10:43 am #

    oh dear . . its Andrew again – all was working fine before – but now all is a big problem- i got a new order from Italy and same thing – the vat is not being validated and charged – and i can not remove it…

    so i change back to ccurl – and now still after purging cashes – nothing is removing the vat.

    Please help – urgently as my customers are compaling its a big hassle and putting them off.

    thanks – andrew

    Reply to thread

    • andrew farrugia September 5, 2018 at 3:38 pm #

      hi my name is Andrew – i have booster installed – and VAT module activated – with settings exactly as above – but it is not working – please help

    • Booster Support Team September 11, 2018 at 4:14 pm #

      In case anyone else is having similar issues – as we figured out in private emails, VAT is not validating because “WooCommerce PayPal Powered by Braintree Payment Gateway” plugin is outputting some JS errors on checkout. As soon as we disabled “WooCommerce PayPal Powered by Braintree Payment Gateway” plugin – VAT validation started to work normally.

      Booster Support Team
    • andrew September 12, 2018 at 4:34 pm #

      hello – this is my update since my last thread – so my problem was – braintree – and booster ( vat validation ) – were not working side by side . . Not after contacting booster for woocommce help and supporrt – i have a situation where both plugins are now on . . . and vat validation works . . .but – t o make a payment by VISA using braintree ( linked to my gateway ) – the boxes all show up . . ( to enter cc details ) – but the site does not allow the user to enter the details . ( i spoke to brainree help and they say to come here for help ) =so im still stuck for VISA paymnts

      thanks andrew

  16. Steve InDzine August 23, 2018 at 9:41 am #

    When running performance scans on my website, which has this module installed, I am getting a very slow post to admin-ajax with action=wcj_validate_eu_vat_number. It’s adding 1.4 seconds on to my page load time.

    Is there a way to make this only call admin-ajax when it is on a WooCommerce page?

    Reply to thread

    • Steve InDzine August 23, 2018 at 10:27 am #

      For anyone looking to do this, I have used the following:

      add_action( ‘wp_enqueue_scripts’, ‘dequeue_woocommerce_styles_scripts’, 99 );
      function dequeue_woocommerce_styles_scripts() {
      if ( function_exists( ‘is_woocommerce’ ) ) {
      if ( ! is_woocommerce() && ! is_cart() && ! is_checkout() ) {
      wp_dequeue_script( ‘wcj-eu-vat-number’ );

  17. matrix9 October 30, 2018 at 3:21 pm #

    A curl error is present when this module of the booster plugin is active. I’ve tried changing the validation method to SOAP, cURL & Simple, but there is still a curl error in the WordPress environment. The error is “Background tasks: No – cURL error 28: Operation timed out after 2001 milliseconds with 0 bytes received.

    This error disappears when the module is inactive.

    Please advise.

    Reply to thread

    • RokasJ October 30, 2018 at 10:21 pm #


      Can you contact us at support@booster.io?

      Best regards,
      Rokas – Support Team

  18. Thibault November 6, 2018 at 7:13 pm #

    Hi, for an unexpected reason, changing class doesn’t change the VAT field position.

    It’s always placed on top of the form while I need it at the bottom.

    Do you use the Woocommerce priority values or another one. For information I moved both cart & checkout on the same page, but this shouldn’t affect the class behavior.

    Reply to thread

  19. Jan Pieter January 15, 2019 at 10:42 pm #

    A customer of mine tells me that the VAT validation does not work. I checked the number he tried (a Spanish VAT number) in the VIES database and it shows to be valid. I checked the number therefore myself on the site and indeed is does not validate. I also checked other VAT numbers from clients.
    I deactivated all other plugin to check a conflict. But this has no effect. Only disabling the validation works but this is not what I want. So in fact the validation does not work anymore??
    Any advice?

    Thanks, Jan Pieter

    Reply to thread

    • RokasJ January 16, 2019 at 6:19 pm #


      Could you contact us directly at support@booster.io? Thank you.

      Best regards,
      Rokas – Support Team