EU VAT Assistant for WooCommerce updated to version 0.10.5.141231
EU VAT Assistant for WooCommerce – What’s new
EU VAT Assistant for WooCommerce has been updated to version 0.10.5.141231. This update brings the following improvements and fixes:
- Added possibility to make the EU VAT Number field optional, required, required for EU countries or hidden. This feature will make it possible to accept only B2B or B2C sales.
- Added exchange rates provider for Danish National Bank exhange rates feed.
- Improved checks on of VAT validation responses. The new validation logic will prevent issues caused by corrupt cached responses.
- Improved EU VAT by Country report. The report now loads VAT refunds dynamically.
- Added recording, against each order, of the timestamp and provider of the VAT currency exchange rate used for reporting. These details will be useful in case of audit, to prove why a specific exchange rate was used.
- Optimised loading of JavaScript parameters for Tax Settings admin pages.
- Improved validation of VAT rates to be used on WooCommerce > Tax settings page.
- Reorganised Admin user interface to make it tidier and more intuitive.
- Fixed bug in VAT Number validation. The bug caused validation to fail when “odd” characters were returned by VIES service
- Fixed incorrect reference to plugin class.
Fixed bug in range calculation. - Fixed bug in handling of VIES response containing non-Latin UTF-8 characters
- Fixed bug in handling of VAT rates for Isle of Man and Monaco
How to get the latest version
You can download the latest version of the EU VAT Assistant from the WordPress repository.
EU VAT Assistant for WooCommerce updated to version 0.9.14.141227
EU VAT Assistant for WooCommerce – What’s new
EU VAT Assistant for WooCommerce has been updated to version 0.9.14.141227. This update brings the following improvements and fixes:
- Added exchange rates provider for HMRC exchange rates feed. This will greatly simply VAT compliance for all the UK-based businesses
- Added possibility to further customise the self-certification message. Now the message can include a country placeholder, which will be replaced by the billing country selected by the customer at checkout.
- Added support for Monaco (VAT as France) and Isle of Man (VAT as United Kingdom), as well as their VAT rates.
- Added possibility to specify if shipping country should be used as location evidence
- Fixed call to WC_Aelia_EU_VAT_Assistant::get_eu_vat_countries().
How to get the latest version
You can download the latest version of the EU VAT Assistant plugin from its product page.
EU VAT Assistant for WooCommerce updated to version 0.9.11.141224
EU VAT Assistant for WooCommerce – What’s new
EU VAT Assistant for WooCommerce has been updated to version 0.9.11.141224. This update brings the following improvements and fixes:
- Added auto-update mechanism. This will simplify maintenance and allow to update the plugin automatically, with one click.
- Completed implementation of EU VAT by Country report. The report now works on both WooCommerce 2.1 and 2.2, and it allows to export the data to a CSV file.
- Added logic to fix incorrect country codes in the VAT Rates feed. The feed contains some non-existent country codes, such as “UK” and “EL”. The plugin now converts them to the correct ISO codes.
- Fixed several minor warnings and optimised code.
How to get the latest version
You can download the latest version of the EU VAT Assistant plugin from its product page.
EU VAT Assistant for WooCommerce updated to version 0.9.7.141221
EU VAT Assistant for WooCommerce – What’s new
EU VAT Assistant for WooCommerce has been updated to version 0.9.7.141221. This update brings the following improvements and fixes:
- Fixed logic in validation of VAT evidence at checkout. The logic contained two bugs that caused the validation that made customer VAT-exempt in the wrong circumstances.
- Redesigned EU VAT by Country report. The report now shows only the VAT collected. Data is also sorted by country, and includes totals at the bottom of the report.
How to get the latest version
You can download the latest version of the EU VAT Assistant plugin from its product page.
EU VAT Assistant for WooCommerce updated to version 0.9.6.141220
EU VAT Assistant for WooCommerce – What’s new
EU VAT Assistant for WooCommerce has been updated to version 0.9.6.141220. This is a major update, and it’s still backward compatible, as you would expect from us! This update brings the following improvements and fixes:
- Started implementation of reports. We are working on the EU VAT by Country report, which we will release soon.
- Optimised recording of VAT data and evidence. We reduced the amount of duplicate data stored in order’s “VAT paid” metadata, opting to perform calculations on the fly when needed. This will also reduce the confusion, as there will no longer be a chance of having conflicting information recorded against orders.
- Added support for refunds. This feature is available in WooCommerce 2.2 and newer.
- Added logic to append the VAT number to customer’s formatted billing address. This will allow to automatically display customers’ VAT number on the invoices, without having to manually tweak the templates to retrieve this information.
- Added exchange rates provider for ECB feed. This is the feed approved by most European Revenue Offices.
- Added exchange rates provider for Irish Revenue website. This is an experimental feature, because the Irish Revenue does not provide a machine readable feed of exchange rates. The provider attempts to parse all the rates from the HTML web page on revenue.ie and extract them. We would not recommend to use it in production, yet.
- Added integration with WooCommerce PDF Invoices & Packing Slips. The integration will make it simpler to produce EU VAT compliant invoices when using the PDF Invoices & Packing Slips plugin. Below this list you can find an example of a multi-currency invoice printed using this plugin.
- Fixed bug in logic used to determine the availability of sufficient evidence about customer’s location. The bug caused the detection to fail in some circumstances.
- Fixed bug in validation of sufficient customer’s location evidence.
- Added notice to invite site administrator to complete the plugin configuration. We added this notice because some users got confused by the plugin not working immediately after installation. A minimum setup is required before the EU VAT Assistant can do its job.
How to get the latest version
You can download the latest version of the EU VAT Assistant plugin from its product page.
EU VAT Assistant for WooCommerce updated to version 0.9.0.141216
EU VAT Assistant for WooCommerce – What’s new
EU VAT Assistant for WooCommerce has been updated to version 0.9.0.141216. This update brings the following improvements and fixes:
- Added feature to allow automatic population of EU VAT rates. This new feature extends the WooCommerce Tax Settings page, allowing to populate all the VAT rates for European Union countries with a single click. VAT rates are fetched automatically from EU VAT Rates website. Massive time saver!
- Added validation of customer’s location self-certification field. The self-certification field is now compulsory when the plugin is configured to display it at checkout and there isn’t enough evidence about customer’s location.
How to get the latest version
You can download the latest version of the EU VAT Assistant plugin from its product page
EU VAT Compliance plugin is now “EU VAT Assistant”
EU VAT Compliance plugin has been renamed
Shortly after we started working on our solution to help with EU VAT compliance, we gave it the name we used later on to announce it. While we were working on our product, we stumbled upon a plugin, developed by one of our customers and collaborators, which has the same purpose and the same name, and a slightly different set of features.
Initially, we didn’t think about changing our plugin’s name, as we were focused on getting it ready on time. Now that the product has been released, we realised that having two plugins with the same name and a similar purpose is not a good idea. It would cause confusion amongst users, and also mess up WordPress’ automatic updates mechanism, which would show updates available for the wrong plugin (i.e. it will tell you that there are updates available for the EU VAT Compliance plugin, while, in fact, it’s another product). Last, but not least, we don’t want to “hijack” visitors who are looking for the alternative plugin, developed by David Anderson.
For the above reasons, the EU VAT Compliance plugin is now called EU VAT Assistant.
Upgrade instructions
Since the plugin has been renamed, it’s folder is also different. To upgrade, please follow the instructions below:
- Take note of the configuration settings. Settings keys also changed, and the plugin will have to be reconfigured (only this time!)
- Deactivate and uninstall the EU VAT Compliance plugin.
- Upload and activate the new EU VAT Assistant plugin.
- Go to WooCommerce > EU VAT Assistance setting page.
- Re-apply the settings you saved at step #1 and click on “Save settings”.
All the orders that had been processed by the previous plugin will maintain their data.
EU VAT Compliance plugin for WooCommerce is now available
EU VAT Compliance, designed for the new MOSS VAT regime
Our new EU VAT Compliance for WooCommerce was conceived to help WooCommerce shop owners to help achieving compliance with the new European VAT regulations. The new regime, which is going to become effective on the 1st of January 2015, states that digital goods sold to consumers in the European Union are liable to EU VAT. The VAT rate to apply to each sale is the one charged in the country of consumption, i.e. where the customer resides. These new rules apply to worldwide sellers who are delivering digital products or services to consumers in the European Union. For more information: EU: 2015 Place of Supply Changes – Mini One-Stop-Shop.
How our product can help you
The EU VAT Compliance plugin can collect information about the VAT applied to each order, and it allows you to use this information to prepare the required VAT returns. Here is a summary of the most important features provided by our product.
Calculation of VAT totals for each order
The EU VAT Compliance plugin automatically calculates VAT totals when an order is generated. The totals are grouped by VAT rates, to cover the case in which a single order contains products taxed at different rates.
Collection of VAT evidence
One of the most controversial aspects of the new VAT regime is that it requires the merchant to prove that the correct VAT rate was applied for each order. To do so, the merchant must collect evidence to support the choice of VAT, which must be stored together with the invoice, and stored for up to 10 years. Our plugin automatically collects all the available evidence from an order and stores it within the order itself, making it easy to retrieve them on demand.
Collects and validates EU VAT numbers
The EU VAT Compliance plugin allows to display a new field at checkout, where Business customers can enter their own European VAT number. Our plugin validates EU VAT numbers, applying VAT exemption when appropriate, and stores it with the order. Validation of European VAT numbers is performed via the official VIES service, provided by the European Commission. This feature is equivalent to the one provided by the EU VAT Number plugin, which would no longer be required.
Supports a dedicated VAT currency
You may be running your shop in US Dollars, but your Revenue Office expects reports in Euro. Our plugin can help with this too! When it collects the VAT data, the EU VAT Compliance plugin automatically converts the amounts in the currency you specify as “VAT Currency”. This information can then be used to produce the VAT returns.
Fully compatible with all our other products
This new plugin is fully compatible, out of the box, with our other products, such WooCommerce Currency Switcher, Prices by Country, Tax Display by Country and Prices by Role (coming soon).
Interested?
Please go to the product page to learn more details about the EU VAT Compliance plugin. You will find a list of requirements, existing features and planned features. If you would like to try the plugin, simply download it and install it on your site. It’s completely free!
Enjoy!
EU VAT rate update – Greece
We have recently been informed that the standard VAT rate for Greece was changed on the 1st June 2016, from 23% to 24%. Some changes were made to reduced VAT rates as well.
We would recommend to take the opportunity to update the VAT rates configured in your system, to make sure that you are using the correct ones.
How to update the tax rates
Updating tax rates is a simple operation:
- Go to WordPress Admin > WooCommerce > Settings > Tax.
- Click on the tax rate you would like to update (e.g. “Standard“), at the top of the page.
- Change the rate in the row with the country code “GR” to “24”.
- Save the changes.
If you are using our EU VAT Assistant plugin, you can update all EU tax rates with a single click. Simply select the rate type at the bottom of the page and click on Update EU VAT Rates. Make sure that you select the appropriate rates (Standard or Reduced), the plugin will do the rest.
With our EU VAT Assistant you can update all VAT rates with a single click
Once the operation is completed, review the tax rates, to ensure that they are correct, and click on Save Changes. WooCommerce will now use the new rates.
Quick and easy!
WooCommerce EU VAT Assistant – Make VAT number optional when cart total is zero
Recently, we have been asked for a customisation for the EU VAT Assistant, to cover the following scenario:
- The VAT number should be required to complete a purchase, if a payment has to be made.
- The VAT number should not be required if the checkout doesn’t require a payment (i.e. if the cart total is zero). This could be the case if the customer only adds free products to the cart.
The above scenario is outside the scope of the EU VAT Assistant. The purpose of the “VAT number required” option is to force only B2B transactions. By making the VAT number required, only verified businesses can complete a transaction. By design, this rule applies whether the transaction requires a payment or not.
If you need to make the VAT number required only when a payment is needed, you can easily do so with a customisation. Your custom code will have to cover two elements:
- The validation of the VAT number on the checkout page
When the field is set as “required”, the customer cannot go ahead with the checkout until such field is filled. For this part, we will rely on JavaScript to show or hide the VAT number field dynamically, as well as making it required, or not required - The validation of the VAT number during the checkout process
For this part, we will use a simple filter to verify if the VAT number should be required during the final checkout phase.
Now we have a plan, let’s get started.
Step 1 – Expose the cart total to the JavaScript frontend
The cart total is not easily accessible via JavaScript, as it’s not stored in the data returned by the Ajax requests triggered on the checkout page. Luckily, there is a convenient filter that will allow us to add that information, called woocommerce_update_order_review_fragments. Our filter will be the following.
/**
* Adds the cart total to the fragments returned as a response to the Ajax
* requests on the checkout page.
*
* @param array fragments The fragments returned as a response.
* @return array
*/
add_filter(‘woocommerce_update_order_review_fragments’, function($fragments) {
$fragments[‘_cart_total’] = WC()->cart->total;
return $fragments;
});
Done. Now, every time the checkout form changes, we will have the cart total handy.
Step 2 – Get the cart total from the fragments, via JavaScript
Now that we have the cart total exposed to the JavaScript on the checkout page, we can use it to show or hide the VAT number field, as well as change its “required” status. For that purpose, we just have to add a simple script to the page footer.
/**
* Adds a script to the checkout page, to make the VAT number required or not
* required, depending on the cart total.
*/
add_action(‘wp_footer’, function() {
// We need to render our script only on the checkout page
if(!is_checkout()) {
return;
}
?>
<script>
jQuery(document).ready(function($) {
// Run the script every time the checkout form is updated. This will
// allow us to check if the total changed
$(document.body).on(‘updated_checkout’, function(ev, data) {
if(!data[‘fragments’] || !data[‘fragments’].hasOwnProperty(‘_cart_total’)) {
return;
}
var cart_total = parseFloat(data[‘fragments’][‘_cart_total’]);
var vat_number_required = (cart_total > 0);
var $eu_vat_number = $(‘#woocommerce_eu_vat_number’);
// Show the VAT number is the cart total is greater than zero,
// hide it otherwise
$eu_vat_number.toggle(vat_number_required);
// Make the VAT number required only if the cart total is greater than zero
$eu_vat_number.find(‘.form-row’).toggleClass(‘validate-required’, vat_number_required);
});
})
</script>
<?php
});
With this script, we covered the checkout page. The VAT number will appear automatically when the cart total is greater than zero, and disappear when it’s not. Customers will be able to checkout without entering a number, if no payment is needed.
Step 3 – Make the VAT number optional during the checkout process
This is the last step, to allow the checkout to complete when the cart total is zero and the customer did not enter a VAT number. This filter is very simple.
/**
* Sets the VAT number field as “not required” when the cart total is zero (or
* less; which should never happen, but better to cover that case).
*
* @param bool is_vat_number_required Indicates if the VAT number is required.
* @param string country The billing country selected at checkout.
* @return bool
*/
add_filter(‘wc_aelia_euva_order_is_eu_vat_number_required’, function($is_vat_number_required, $country) {
// Make VAT number “not required” if the cart total is zero
if($is_vat_number_required && (WC()->cart->total <= 0)) {
$is_vat_number_required = false;
}
return $is_vat_number_required;
}, 10, 2);
That’s it. We covered the checkout process as well. The result will be the following:
- When the cart total is greater than zero, the VAT number will be required. It won’t be possible to complete the checkout without entering it.
- When the cart total is zero, the VAT number will be hidden, and optional. Customers won’t need to enter it.
You can find the complete code here: WooCommerce – Make VAT number optional if cart total is zero (Pastebin).
Need help?
Should you need assistance adding this custom code to your site, or if you need it tailored to your needs, you can hire us on Codeable. We will analyse your specifications and send you an estimate for your customisation.
Thanks for reading, and for using our EU VAT Assistant. See you soon for the next WooCommerce Tips & Tricks!
The Aelia Team
VIES Validation Service is down, affecting EU VAT number validation
We have been informed that the VIES service used by our EU VAT Assistant to validate VAT numbers is currently inaccessible. Here is a screenshot from the European Commission website, taken today, 23rd January, at 11:30 GMT:
EU Commission – Website unavailable
This downtime will affect the validation operations performed by our plugin, which will be unable to validate VAT numbers. Unfortunately, this is outside of our control. We will have to wait until the service is back online, then the EU VAT Assistant will start working correctly again.
Apologies for the inconvenience on behalf of the team managing the EU website.
The Aelia Team
Tags: eu vat, eu vat compliance, extensions, moss, woocommerce
Happy new year! Time to update VAT rate for Romania
Happy new year to you all! We hope you had some great Christmas time, and that you are ready for a great 2017. Considering how 2016 went, it can only get better!
The new year starts with a good news for our Romanian friends. As announced last year, the Romanian government reduced the standard VAT rate from 20% to 19%, from the 1st January 2017.
This means that your products will be slightly cheaper. It would be a good idea to update your tax settings as soon as possible.
How to update the tax rates
Updating tax rates is a simple operation:
- Go to WordPress Admin > WooCommerce > Settings > Tax.
- Click on the tax rate you would like to update (e.g. “Standard“), at the top of the page.
- Change the rate in the row with the country code “RO” to “19”.
- If needed, update the tax rate description.
- Save the changes.
Now all that’s left is double checking that all tax rates are correct. Our plugin updates the rates related to EU countries, therefore you will have to check the rates that refer to countries outside the European Union. If you don’t have any, then you’re done. WooCommerce will now use the new rates for orders placed from now on, and our plugin will collect the tax data automatically.
Again, best wishes for an incredible 2017 from the Aelia Team. May the new year be full of joy and, of course, business opportunities!
The Aelia Team
EU VAT Assistant on WordPress.org – Update 12 December 2018
This post is a follow-up to the one we published on the 10 December 2018, in relation to the removal of our EU VAT Assistant from the WordPress repository.
Analysing the issue with the WordPress Team
As explained in the earlier post, due to technical limitations, the WP.org repository can only be used to host plugins that don’t have external dependencies. Plugins are expected to carry around a copy of all the files they need, even if this may cause conflicts with different versions of the same files, which might be installed on the site. Our EU VAT Assistant relies our Aelia Foundation Classes (or AFC, for short), which is an external framework. Due to that, it didn’t match the described requirement.
We had a long discussion with the WordPress Team, during which we went into the details of the decisions behind the design for our EU VAT Assistant, as well as our other plugins. We proposed several solutions, all of which were technically valid, but they were rejected on the ground of not being fully compliant with the current policies that apply to WordPress.org. The conclusion was our solutions are highly modular (and work well that way), but the public WordPress repository, in its current form, doesn’t support such architecture.
The challenge
The restrictions on the WordPress repository presented a significant challenge. We spent a significant amount of time and effort to create our existing, modular architecture. All our solutions are based on it, and they have been thoroughly tested. The WordPress Team insist that all plugins should carry around their own copy of the required files, while we have enough experience and statistical data to disagree with such statement. Besides, we couldn’t afford to discard years of work to go back to the required “monolithic” design, risking to introduce issues in the process.
The main hurdle came from one of the core principle on which the Aelia Foundation Classes is based. We wrote the AFC Framework with the assumption that there will always be one copy of such framework installed, at any given time. Such requirement can be easily enforced, and it allows to share the same code across multiple plugins. It also avoids having to write a convoluted logic to check if multiple copies of a framework are installed, and which one should be used. Based on our tests and experience, it’s a leaner and more effective approach.
Our challenge was to find a way to reach the following targets:
- Allow the EU VAT Assistant to carry around and load its own framework.
- Allow plugins that rely on the shared AFC Framework to keep doing so.
- Avoid substantial rewriting of any of the plugins, or the framework.
The AFC Framework as the key
After a careful analysis of our options, we realised that the AFC Framework could be the solution to the issue. Like our plugins, the framework is highly modular, and structured so that its components are loosely coupled. Although we designed the framework to be installed as a separate plugin, we were able to extract parts of it, and transform them into an “embedded framework”. This was also made easier by the logic used by our plugins to find the AFC, and interact with it, which allows for good flexibility. In short, we found a way to satisfy all the requirements, while keeping our modular structure and full compatibility with our other products.
The proposed solution
We reviewed the AFC Framework, focusing our attention on its basic, core elements, and we came up with a smart, yet simple solution:
- We built a smaller version of the framework, called AFC Embedded, which excludes non-essential features, as well as any feature that is not deemed “appropriate” for inclusion in the WordPress repository.
- We added the AFC Embedded framework to the EU VAT Assistant.
- We modified the loader logic used by the EU VAT Assistant, to perform the following operations:
- When the standalone AFC Framework is active, use that one. In such case, the plugin would behave exactly as it did before.
- When the standalone AFC Framework is not active, or not installed, load the embedded AFC Framework.
This approach required only minor changes in both the framework and the EU VAT Assistant, and no changes at all in our other products. It also covers the scenario where the EU VAT plugin is installed first, and the standalone framework at a later stage, e.g. after installing one of our premium WooCommerce plugins. In that case, the EU VAT Assistant switches from the embedded framework to the standalone one, transparently. Simple, yet effective!
Current status
We discussed the above solution with the WordPress Team, and they agreed that it would be within the guidelines of the WordPress.org repository. We have submitted an updated version of our EU VAT Assistant for their review, and we are waiting for their reply. If all goes well, our solution for EU VAT compliance should be back online very soon.
Any questions? Always happy to answer!
Should you have any questions about the EU VAT Assistant, or the progress with the new version, please feel free to contact us. We will be happy to answer all your questions, and give you any information you might need.
Thanks again for staying with us, we are looking forward to sharing with you some good news soon!
Regards,
The Aelia Team
The EU VAT Assistant for WooCommerce is still “alive and kicking”!
On the 9 December 2018, the WordPress Team removed our popular EU VAT Assistant from the public repository on WordPress.org. In this article, we are going to explain why they took that decision.
Preliminary note
Before explaining the reason for the removal, we would like to clarify that the EU VAT Assistant is still working fine, it’s fully supported and it will be maintained for the foreseeable future. There isn’t any technical issue, we’re just dealing with a minor conflict with the regulations on WordPress.org.
Why the plugin was closed on WordPress.org
The WordPress Team closed the EU VAT Assistant on the 9th of December, 2018, because that plugin, like (almost) every other Aelia plugin, requires our mini-framework, called Aelia Foundation Classes (or AFC, for short). That mini-framework comes as an independent plugin, which has to be installed separately. We introduced such framework in our development cycle back in 2013, when we realised that the old approach of bundling multiple copies of the same files and libraries in each plugin was inefficient. Since WordPress didn’t include a dependency management system (and still doesn’t), we implemented our own, simple solution. That allowed us to get the result we were looking for:
- We were able to the files and libraries common to multiple plugins to a shared framework (the Aelia Foundation Classes).
- We were able to leverage the functions offered by WordPress to detect when such plugin is missing, and prompt the administrator to install it.
Thanks to the above, the EU VAT Assistant and our other plugins can detect if the AFC framework is not installed. When that is the case, they ask the administrators if they want to install it manually. To make thins even easier, our plugins also offers a convenient “one click” interface to do that installation. This is how the EU VAT Assistant always worked, ever since we released its first version, back in 2014. Apparently, now this presents an issue.
The issue
The rules for the WordPress repository indicate that a plugin can’t download another plugin from sources other than WordPress.org. Since the “one click install” downloads the framework from our site, that feature is no longer allowed. Due to that, the WordPress team deemed necessary to close the plugin, and informed us about that closure right after it was performed. Unfortunately, we didn’t receive an advance notice about this, or we would have informed our users about it.
As mentioned, the reason for the plugin closure is not technical. The EU VAT Assistant works perfectly fine as it is, and it’s not affected by bugs or technical issues. More simply, there’s a disagreement about our plugin’s architecture, as the WordPress team deemed such design to no longer conform with the repository guidelines. Due to this, they decided to remove the plugin, despite its popularity and the fact that it has been running smoothly for over 4 years.
Possible solutions
The only reported non-conformity in the EU VAT Assistant is the dependency management that the plugin uses. Our solution allows administrators to download the required AFC mini-framework from our site, which is external to WordPress.org. From a technical perspective, this could be solved easily in a few ways:
- The AFC framework could be hosted on WordPress.org.
- The framework could be bundled within the EU VAT Assistant, which would then take care of installing it as a separate plugin, without having to download it from an external source.
- The “once click install” feature could be removed from the EU VAT Assistant, thus removing the “download from an external site” altogether.
Unfortunately, the WordPress team didn’t accept any of the above:
- The first solution won’t be allowed by another regulation, which doesn’t allow to use WordPress.org to host framework plugins.
- The third solution would involve “bundling a plugin within a plugin”, which is also not allowed.
- The third solution won’t be allowed either. Requiring a manual installation of the framework would imply that the EU VAT Assistant “doesn’t work” straight out of the box (unless the framework is installed first), which is another of the requirements on WordPress.org repository to ensure a smooth user experience.
Feedback from the WordPress Team
The WordPress Team suggested that we change the the EU VAT Assistant so that it doesn’t require the AFC framework, or so that the files from the framework are part of the plugin itself. Unfortunately, that won’t be an option. The decision of having the framework as an external plugin was deliberate, to make our plugins modular and more robust. Such design, fairly common on other platforms, allows to keep modules lean, and greatly reduces the chance of conflicts caused by the presence of multiple copies of the same files. Our target was to move away from the obsolete “monolithic” architecture, and all the bloating that it involves, and have a single, shared framework. Other developers adopted such approach (popular themes like Genesis and Avada also use a framework plugin), and it works well.
Rewriting the EU VAT Assistant to go back to the old “bundle everything” design would be a significant step backward, and it would introduce a high risk of causing conflicts with our other plugins, which are based on current “shared framework” architecture. Regrettably, we can’t redesign all the plugins we developed just to comply with a restriction on WordPress.org, which affects a single plugin.
Current status (updated 10 December 2018)
We had an extensive conversation with the WordPress Team about the removal of the EU VAT Assistant from the repository, and how it could be restored. As of the the 10th of December, we haven’t reached an agreement. We proposed a few solutions that would not require a radical changes in the plugin’s architecture. They would also avoid a cascade effect with other plugins based on the same design. Unfortunately, the WP Team keeps insisting that the only solution they deem acceptable by them is to rewrite the plugin and bundle the framework in it. As explained above, that’s basically the only approach we can’t follow. It’s simply not feasible.
We are aware that this sudden change could cause alarm among the merchants who are using our EU VAT Assistant. We received several enquiries, from our customers, asking what the future of the our VAT plugin is going to be. All of them expressed their support to us, and were puzzled by such sudden decision about an established and useful solution. You can read the conversation on the plugin’s public support forum, available here: https://wordpress.org/support/topic/plugin-removed-from-wordpress-repository/.
As anticipated, the EU VAT Assistant is still fully functional and supported, still free and it will be maintained for the time being. We will keep checking with the WordPress Team if we can find a compromise that can allow to restore our plugin on the WordPress repository. In the meantime, the EU VAT Assistant will still be available, free of charge, directly from our website. We will also take care of serving updates for our solution directly, while the files hosted on WordPress.org are offline.
Any questions? Always happy to answer!
Should you have any questions about the EU VAT Assistant, please feel free to contact us. We will get back to you as soon as possible.
Thanks for reading this long post, and apologies for the inconvenience caused by the sudden change, which was outside our control.
Regards,
The Aelia Team
VAT OSS Compliance – From Aelia EU VAT Assistant to Simba Hosting’s WooCommerce EU/UK VAT/IVA Compliance
In this post, we will describe our updated plans for the Aelia EU VAT Assistant, and our recommendation on a solution to comply with the new VAT regulations introduced by the UK and the EU, which affect the taxation of physical goods sold to customers in the EU, UK and Norway. Due to the complexity of the subject, the article is somewhat long, therefore we prepared a summary for your convenience, which you can find below:
- Aelia established a collaboration with David Anderson, founder of Simba Hosting and author of popular plugins such as Updraft Plus. They offer a comprehensive, fully tested solution, called WooCommerce EU/UK VAT / IVA Compliance, which offers an extensive feature set. It covers all the aspects handled by the EU VAT Assistant does, as well as the new regulations that came into effect in January and July 2021. From now on, Aelia will recommend WooCommerce EU/UK VAT / IVA Compliance as a solution for VAT compliance.
- We decided not to release our own version of a VAT compliance product to cover regulations for UK and OSS, which affect physical goods.
- We will offer an optional data migration service to users who wish to convert the data stored by the EU VAT Assistant to the format used by the WooCommerce EU/UK VAT / IVA Compliance plugin.
- We extended the lifespan of the EU VAT Assistant, in its current form, to the 30th of June, 2022. This is to give our users sufficient time to migrate to the solution from David Anderson, or to another solution for your choice.
Below you can find more details about this decision, and our recommendations to keep your shop running smoothly.
Background
We developed the EU VAT Assistant in 2014, and it was meant as a solution for internal use, to help us comply with the EU VAT MOSS regulations for digital products that would come into effect in 2015. At the time, there wasn’t a solution ready. We came into contact with David Anderson, founder of Simba Hosting, who was facing the same challenge, and we discussed the possibility to develop a plugin together, to help the owners of a WooCommerce shop complying with the new regulations. Although the plan didn’t go through, we remained in contact with David all these years, and we helped each other with the development of our respective solutions.
In 2015, we noticed the turmoil caused by the new regulations. Several analyses, performed by independent sources, indicated that the average cost to update an e-commerce for compliance with the VAT MOSS regulations would be around 10.000 (ten thousand) Euro. That would have been prohibitive for small and medium merchants, therefore we decided to make our EU VAT Assistant available to the public. Back then, we had three possible choices:
- Release the EU VAT Assistant exclusively as a paid plugin, like the Aelia Currency Switcher, Aelia Tax Display by Country, and our other plugins.
- Release the EU VAT Assistant as “freemium” plugin. That is, offer a free solution, with a basic set of features, and a paid solution, with a comprehensive set of features.
- Release the EU VAT Assistant as a free plugin, with all the features included, and fund its development and maintenance costs by selling premium support plans.
We evaluated each option, prepared plans for each one and made some projections in terms of potential cost and revenue. In the end, we decided to go with the 3rd option. We released the EU VAT Assistant as a free plugin, without restrictions or limitations, and encouraged our users to support its development by buying a paid support plan.
The challenge we faced
Our calculations indicated that, for the business plan to be sustainable, we would have had to reach a minimum “critical mass” of recurring revenue in no more than a year to be able to keep maintaining our plugin. We calculated that we needed at least a certain percentage of paying users to cover the cost introduced by the whole user base. Such a percentage was fairly low, and it seemed reasonable that we would have been able to reach. Other companies follow a similar model, and they charge between 50 to 60 Euro for every single support request, therefore we saw our pricing as competitive, and thought it would give us an additional edge. In short, it all sounded like a viable plan.
Unfortunately, even our worst case scenario forecast turned out to be too optimistic. The revenue from paying users has been dramatically lower than our most pessimistic forecast, and way too low to cover even the basic development and maintenance cost for the EU VAT Assistant. Based on our original business plan, we should have retired the plugin back in 2016, when it became clear that the product was severely underperforming. However, rather than just “pulling the plug” on it, we tried different strategies to increase the revenue. Unfortunately, they didn’t work, either.
The reason why we have been able to keep the EU VAT Assistant available for free was that we used the revenue generated by other projects to cover the running cost for our VAT solution. Although that was meant to be a temporary solution, we have been doing that for more than seven years. The year 2021 brought several important changes, and we had to review our plans accordingly.
The changes in 2021
It feels as if 2021 started yesterday and, yet, it’s already gone. Besides the “usual” news about the COVID pandemic, this year brought two important changes to the world of e-commerce:
- Brexit came into effect on the 1st of January, 2021.
- The new EU VAT OSS regulations, which affect the distance sales of physical goods, came into effect on the 1st of July, 2021.
These events introduced several changes in how an e-commerce would have to handle VAT. Amongst the most important, we can list the following:
- The UK left the VIES service for the validation of VAT numbers. UK VAT numbers now have to be validated using a dedicated service.
- The UK introduced a rule to apply a VAT exemption for consignments shipped from outside the UK, when their value is above 135 GBP.
- The EU introduced a “place of supply” rule to calculate VAT for physical goods.
- Similarly to the UK, the EU introduced a rule to apply a VAT exemption for consignments shipped from outside the EU, when their value is above 150 EUR.
As mentioned earlier, we developed the EU VAT Assistant for our internal use, and specifically to comply with the EU VAT MOSS regulations that affect the sales of digital products. Although the new rules may seem straightforward, from a human perspective, they introduce changes to reporting, filing of returns, and other ancillary aspects.
Our original plan for 2021 – Brexit
At the end of 2020, we announced the development of an addon for the EU VAT Assistant, to handle the changes introduced by Brexit. Amongst the other features, the addon would have added the possibility to validate UK VAT numbers. The addon required a lot of hard work to implement, especially due to the complicated logic required at the time by the online services provided by the HMRC Revenue and Customs. We launched a Beta of the UK Addon in January 2021, and made it available to selected users, to test the validation and VAT exemption of UK VAT numbers.
Soon after the release of the addon’s Beta, we reviewed our plan and we realised that, from a business perspective, we were again on the wrong track. The EU VAT Assistant still generated the bulk of the development and maintenance work, without bringing in sufficient revenue to cover them. Around the same time, we received the news about the VAT OSS regulations, coming into force in July 2021, which apply to the sales of physical goods. As an EU business that only deals with digital products, we weren’t aware of them.
Our second plan for 2021 – Brexit and EU VAT OSS
After reviewing the list of features required to cover Brexit and the VAT OSS, we came to the conclusion that we had to change our business model, to make it viable. We needed to find a way to deal with the existing maintenance cost, which we have been covering ourselves until now, as well as the development and maintenance of all the new features for Brexit and VAT OSS. We scrapped the idea of addons, which introduced additional complexity and made the pricing complicated, and decided that it would be a better option to replace the EU VAT Assistant with a new solution. The new plugin would be exclusively premium (i.e. paid), and include all the features needed to comply with the original VAT MOSS regulations, the new VAT OSS and Brexit. As a stop gap solution, we also provided a couple of workarounds that can be used to get closer to compliance with the OSS regulations while using the existing EU VAT Assistant.
The development of the new VAT solution proceeded through the year, although slower than expected. This was due to a series of events, some of which outside of our control, as well as the fact that we had to prioritise several large projects for our customers. During the development, we kept in touch with the authors of other VAT solutions, to share opinions and check if we were going in the right direction.
An unforeseen challenge
The conversations with other developers were productive, and brought to light a gap in our process. The new regulations from the UK and the EU are complex, and they may change in the future. However, we’re not accountants, nor tax advisors. Taxation is not our field of expertise. We don’t have staff dedicated to that area, and our solutions are not vetted or audited by a Revenue Office. Due to this, there could be regulations of which we are not aware. Just like we didn’t know about the VAT OSS coming into effect in July 2021, we also didn’t know about Norway’s VOEC scheme, which came into effect in April 2021.
It became clear to us that, before we could claim that we have a solution to help complying with the new regulations for the UK, the EU, Norway and, possibly, other countries, we would have to fill this gap. To do so, we would need to bring on board someone with the required expertise on international tax compliance, up to speed with each new regulation. The investment would be significant, and that would reflect upon the price tag of our new premium solution. That price would become higher than initially planned and, most likely, out of reach for most of our existing user base.
Our new plans
After reviewing all the information at hand, we realised that our new product would not be competitive. There are other VAT compliance plugins available, which already offer the features we were working on, at a much lower price than what we could possibly offer. Due to that, our conclusion is that the best course of action for our users would be to switch to one of the existing solutions and, eventually, migrate the existing data from the EU VAT Assistant to the new one. As of December 2021, we are no longer planning to release a OSS VAT compliance solution and we put its development on hold.
Our recommendation for OSS compliance
If you’re using the Aelia EU VAT Assistant, and you need a plugin to help you with the compliance with the VAT OSS regulations, Brexit, or Norway’s VOEC Scheme, we recommend to switch to the WooCommerce EU/UK VAT / IVA Compliance. Its author is is David Anderson, founder of Simba Hosting and author of the popular Updraft Plugins backup plugin. We worked together on a common VAT compliance solution in 2014, before we went to develop the EU VAT Assistant. We kept in contact with David since then, exchanging opinions and suggestions on how to improve our respective solutions. Having seen his VAT plugin at work, we can vouch for its quality. If you have any questions about his product, you can reach David via the Simba Hosting website: https://www.simbahosting.co.uk/s3/contact/.
Need to migrate the EU VAT Assistant data? We can help!
We are planning to offer a migration service to convert the data stored by the EU VAT Assistant into the format used by the WooCommerce EU/UK VAT / IVA Compliance plugin. This would be a once-off operation, which we can schedule at a time convenient to you. After the migration, we can help you removing the extra data from the database, as well as the EU VAT Assistant, so that you can keep using the WooCommerce EU/UK VAT / IVA Compliance plugin instead. If you wish to avail of that service, please contact us and we will get back to you with a plan and an estimate for the migration.
What are the plans for the existing EU VAT Assistant?
We will keep the EU VAT Assistant available, in its current form, until the 30 June 2022. The plugin will keep working as it does now. We will keep testing it against the new version of WooCommerce up until the retirement date. You can keep using the plugin for now, but we would encourage you to switch to the WooCommerce EU/UK VAT / IVA Compliance in due time, to ensure that you can keep collecting VAT information.
Any questions?
We would like to thank you for having read this far. We’re aware that this is a long post, but we thought appropriate to give you a good overview of the reasons behind our decisions. If you have any questions, please feel free to reach us at any time: https://aelia.co/contact/. We will be happy to give you any information you need.
The Aelia Team
Remember to update your EU VAT rates!
If you didn’t do it already, it’s time to update the VAT rates on your system. From the 1st of January 2016, Romania cut its standard VAT rate from 24% to 20%. This quite good news, as the change will make your products cheaper to your Romanian customers, therefore we would recommend to update your tax settings as soon as possible.
How to update the tax rates
Updating tax rates is a simple operation:
- Go to WordPress Admin > WooCommerce > Settings > Tax.
- Click on the tax rate you would like to update (e.g. “Standard“), at the top of the page.
- Change the rate in the row with the country code “RO” to “20”.
- Save the changes.
If you are using our popular EU VAT Assistant, you can also refresh all EU tax rates with a single click. Simply select the rate type at the bottom of the page and click on Update EU VAT Rates.
With our EU VAT Assistant you can update all VAT rates with a single click
All tax rates will be updated automatically to their most recent value. No risk to forgetting any of them behind!
Now all that’s left is double checking that all tax rates are correct. Our plugin updates the rates related to EU countries, therefore you will have to review the rates that refer to countries outside the European Union. If you don’t have any, then you’re done. WooCommerce will now use the new rates for orders placed from now on, and our plugin will collect the tax data automatically.
It couldn’t be easier!
The Aelia Team