Closed (fixed)
Project:
Commerce European Union VAT
Version:
7.x-1.x-dev
Component:
Documentation
Priority:
Normal
Category:
Task
Assigned:
Reporter:
Created:
30 Jun 2012 at 08:51 UTC
Updated:
15 Feb 2013 at 15:00 UTC
VAT rates change in the last 4 years the UK standard rate of VAT has changed 3 times. How does the module handle this?
The standard rate of VAT was temporarily reduced to 15 per cent on 1 December 2008 and returned to 17.5 per cent on 1 January 2010. On 4 January 2011 the standard rate increased to 20 per cent. HMRC
It is possible to exclude VAT rates from the admin display using 'admin_list' => FALSE in hook_commerce_tax_rate_info().
All three rates are to be created using the suggested naming convention
eu_vat_gb_standard_15
eu_vat_gb_standard_175
eu_vat_gb_standard_20other rates for the UK are
eu_vat_gb_reduced_05
eu_vat_gb_zero_00Rules for each need to include date conditions for each.
Comments
Comment #1
dwkitchen commentedJust to add that this is useful for me as I am importing orders from Ubercart since May 2008 so all rates need to be covered - and as Ubercart did not cope with VAT rate changes well I might recalculate them as I import.
Comment #2
dwkitchen commentedI have added the rates and used hook_default_rules_configuration_alter() to edit the auto created rules.
However I am not sure how to a OR and AND groups.
This covers the time before Dec 2008 but the rule needs to be:
(date < 2008-12-01) OR ((date > 2010-01-01) AND (date < 2011-01-04))Comment #3
dwkitchen commentedComment #4
joachim commentedI can see why you need historic tax rates for something like an import.
But are there any other circumstances in which the site needs them?
Comment #5
dwkitchen commentedGoing forward current rates will become historic as they are changed, but import is probable the only reason for current-historic rates.
Comment #6
joachim commented> Going forward current rates will become historic as they are changed
I'm not sure about the need to have those either.
What I'm concerned about is this: suppose in 2013 the UK VAT rate changes. Say for sake of argument this is to 25%. We then have a migration issue on our hands, as every single product needs to add an extra VAT rate to its reference field. Newer products will have the gb_25 rate in the field, products that exist today will have gb_20 and gb_25, which also creates a bit of a UX unpleasantness.
So I wonder: what is the purpose of keeping these values in the reference fields?
If instead we call vat rates by functional names, eg gb_top_rate, then the numeric value can be changed and everything happens automatically.
Comment #7
joachim commentedI've just had a chat with my client's head of finance, who tells me there's no need for old tax rates to be kept.
What she said is: 'At midnight when the tax rate changes, everything should change, and there's no need to know what the tax rate on a product used to be'.
Interestingly, if a customer buys a product at 20% on December 31 and brings it back for a refund on January 1, the *new* VAT rate is applied on the refund price and the retailer takes a hit.
Hence I think we need to look at a way to make imports of old orders work with old vat rates, but not encumber new sites with them.
Comment #8
dwkitchen commentedEither method is possible but using a new rate is HMRCs prefered option. Check out the pros and cons of each method on page 3 of this guidance: Quickbooks VAT rate change advice.
It is true that you do not need to know what the tax rate on a product was before the change, but you do need to know what the tax rate was on all line items on orders before the change.
According to the HMRC Rate Change Guidance, a refund for a sale made before the rate change is made at the historic rate change, NOT the new rate as your client's head of finance suggests.
In hook_commerce_tax_rate_info() it is possible to set admin_list = TRUE/FALSE, this set if a rate should be listed in the admin page, perhaps the tax rate reference field needs to have a option to use this data as well.
Comment #9
dwkitchen commentedFor the UK I have included the rates and other countries will be done on a case by case basis
Comment #10.0
(not verified) commented15% twice