How to support sales tax in particular UK and EU VAT

  • Question
  • Updated 2 years ago
My business is based in the UK / EU and it seems I may have to charge sales tax (VAT) to some customers and not others depending on where they are. According to the accountant the rules are as follows:

1. Charge VAT to UK business + private customers
2. Charge VAT to EU private customers
3. Do not charge VAT to EU businesses (it's common practice for EU business customers to be asked for their local VAT number as proof)
4. Do not charge VAT to rest of the world customers

VAT is a % of the price and I believe varies by the EU country the business is located in, e.g. 17.5% in my case.

It is also necessary for tax reporting to be able to break down by quarter how much was charged in each category (the rules for this are a bit weird and I'm checking into them - for example depending on the rules that apply you may have to report tax based on when you offered the service, when you billed, or when you actually got the money).

Obvious this is a major PITA but it doesn't appear to be optional :-)

So the first question is, is this location information collected and available to my site when integrating?

Secondly I don't see any way to collect the additional information (such as VAT number) - could this be added to the wishlist? Every EU customer that is VAT registered is going to hit this issue (and they will have to VAT register once they hit a certain revenue).

Thirdly, some users (i.e businesses) will want to get a VAT receipt so they can claim that tax back. Again there are some rules about how this has to look, which I'm checking into. At least it has to show the seller's VAT number (i.e. mine) and maybe other company details also. I think this could be in an email or a PDF / web receipt they could print off.
Photo of

  • 8 Posts
  • 0 Reply Likes

Posted 6 years ago

  • 9
Photo of Nathaniel Talbott

Nathaniel Talbott, Official Rep

  • 969 Posts
  • 94 Reply Likes
The answer to the first question is no: Spreedly doesn't have special VAT handling at this point. Our suggestion for showing customers the right plan is to collect their location at signup and then only show them the plan(s) relevant to their region, i.e. with/without VAT added in.

The answer to the second question is yes, I will add VAT support (such as collecting the VAT number, etc.) to the wishlist, but for now I'd suggest collecting what you need in the signup process you already have for your users. Alternatively, if a customer's VAT number is nice to have but not necessary, you could ask them to give it to you after they subscribe.

For your final question, my current suggestion is to use the Subscription Plan description field we just added to give details about the VAT. You can spell out exactly how much VAT they're paying, what your VAT number is, etc.

I hope this helps - feel free to ask for clarification on anything that's fuzzy. We don't have VAT in the US so I'm learning right along with you!
Photo of Christoph C. Cemper

Christoph C. Cemper

  • 3 Posts
  • 0 Reply Likes
VAT is similar to the state sales tax (it IS actually a sales tax).
Photo of ambconsult

ambconsult

  • 1 Post
  • 0 Reply Likes
hi
the answear is more than 2 years old - is the vat support done right now?
Photo of

  • 8 Posts
  • 0 Reply Likes
Thanks - I'll need to check what is and isn't mandatory, but it sounds like asking for location and directing them to different plans could be a workaround that will work for this. It all depends on how much I'm expected to police this - e.g. the customer could just claim to be in the US and not pay VAT. And I don't really want to get into figuring out where they are based by looking up IP addresses (which might be wrong anyway, if they are travelling). A question for the accountant again.

The approach you suggest may also solve the problem of tax reporting if there is some way of breaking down revenues by plan and time period - e.g. if it is possible to query how much revenue 'ukplan', 'restofworldplan', etc made within Q1, Q2 etc.

The only gap then is giving the customer a VAT receipt if they want that. I'm sure there is a solution here (it's even possible that paypal handles this stuff, not sure), and it might be something that my app could do depending on how easy it is to query when and how much the subscriber paid. But I'll probably be able to comment a bit more intelligently on this once I've tried integrating a test site.

It would definitely be a nice to have if the email that spreedly sent to the customer filled this role (I think it would just need some header and footer info for seller company info, plus a line item for the tax portion of the subscription cost). I don't think it would be a difficult thing to do.
Photo of

  • 25 Posts
  • 1 Reply Like
I'm in the same position right now and am probably going to solve it by using multiple plans, like Nathanial suggests. One thing to bear in mind is that for VAT reporting purposes 0-rated VAT is different to no-VAT so you may need an additional plan to make it easy to determine the aggregate values in each.

As for determining where the user is, I'm pretty sure it's sufficient to simply ask them. If they lie, they're the ones defrauding the VAT, not you.
Photo of

  • 8 Posts
  • 0 Reply Likes
@denis - yep sounds like multiple plans is the way to go. I envisage a signup step something like asking the user for their country/region and whether they have an EU VAT no, then directing them to the appropriate plan set. Though it is a real PITA to have to maintain about 4x the number of plans to support this.

How do you deal with the pre-sale part - i.e. if someone wants to see the available plans before they've signed up at all do you show them all ex VAT or what? Or do you have a menu of plans by region?

Any ideas for the VAT receipt part?
Photo of

  • 25 Posts
  • 1 Reply Like
My plan is:

In the pre-sale pricing screen, I'm just going to show the ex-VAT prices, with a tiny note at the bottom that if you live in the EU, VAT will be added, much like http://dropsend.com/pricingsignup.php.

Then, during the registration, I'm going to ask what country they live in. If that's in the EU, then I'm going to allow a VAT ID to be entered. At that point, I can redirect them to spreedly with the correct plan loaded.

For the receipt bit, I'm going to change the description of the VAT-laden plans to include "This charge includes VAT at 21.5%." I'm pretty sure that'll satisfy most people.

It would be nice to be able to query spreedly for the transactions so that I also have the option of generating online receipts in my application.
Photo of

  • 8 Posts
  • 0 Reply Likes
Denis,

I will probably do something like that also. During the registration, are you collecting address details or just asking for the country? I'd rather avoid asking them the address information twice.

I found this which may be of some help in verifying VAT numbers:

http://ec.europa.eu/taxation_customs/...

Seems like a really flaky service (federated across the countries, none of them are up 24x7, and all have different down times). Very inconvenient form of the web service too - but seems to be all there is.

It also has some clues about what to do when you can't verify the VAT number - i.e. go ahead and charge VAT anyway.

No comment on what to do if they state the wrong country though. I asked my accountant about this, and his feeling is the onus is on the supplier (i.e. me) to collect the right amount of VAT.
Photo of

  • 25 Posts
  • 1 Reply Like
Thanks for the link - I'm going to investigate that a bit more.

I'm going to just as for the country and VAT number and trust that (if there's some basic syntax checks I can do, then I'll do those). In the past when I've purchased things from the UK, I've quoted my VAT number and I'm 99% sure they never checked it.

Once the volume grows a bit, I might do an offline check on the numbers I've captured if there's a way to automate that.
Photo of

  • 8 Posts
  • 0 Reply Likes
Somewhere in the FAQ linked off there, there is a guide to how the number syntax is in each country. I'm going to do some digging to see if anybody's done a function to check the syntax already - if you find anything like that I'd be interested.
Photo of Wolf

Wolf

  • 4 Posts
  • 0 Reply Likes
currently also battling with the whole EU VAT madness. Might be inappropriate here, but let me ask you which service providers (gateway&merchant bank account) are you using here in Europe? is there one suiting spreedly?
Photo of

  • 25 Posts
  • 1 Reply Like
I currently use SagePay (used to be ProtX). Once it's set up, it all works fine with spreedly but it was really painful to get configured properly (sagepays fault, not spreedly).

I would prefer to move to RealExPayments in the future but they're not currently supported by spreedly.
Photo of Wolf

Wolf

  • 4 Posts
  • 0 Reply Likes
I had a chat with paypoint last week very dissapointing i can say. chat suddenly broke down and i have never received any promising offer by mail, although they asserted to send one. what about paypal and spreedly would that be an option?
Photo of

  • 25 Posts
  • 1 Reply Like
I'd advise keeping away from paypal. They have some strange ideas about who owns the money your customers pay to you.
Photo of Wolf

Wolf

  • 4 Posts
  • 0 Reply Likes
Could you specify the Paypal issue? What about Wirecard, got an offer from their side, actually sounding quite good!
Photo of Nathaniel Talbott

Nathaniel Talbott, Official Rep

  • 969 Posts
  • 94 Reply Likes
We could add support for Wirecard pretty quickly; we just need test credentials from you so we can verify the integration.
Photo of

  • 25 Posts
  • 1 Reply Like
I had an experience where after I received a number of payments to my paypal account, they froze it for 'suspicious activity'. It took several weeks of calling their Indian call centre and dozens of faxed documents to unfreeze it. Painful.
Photo of Wolf

Wolf

  • 4 Posts
  • 0 Reply Likes
i guess that's why paypal is not supported in quite a number of webapps!
Photo of Duff OMelia

Duff OMelia, Official Rep

  • 282 Posts
  • 16 Reply Likes
We do support Wirecard now by the way. http://spreedly.com/#worldwide
Photo of brucegreigB

brucegreig

  • 23 Posts
  • 2 Reply Likes
Regarding VAT receipt - just including Denis's suggested text in the description wouldn't really work.

VAT receipts should have:

Company details (name, address)
VAT number
Date
Unique invoice number
Breakdown of VAT charged

Not really optional: if customer is claiming back the VAT you charge, then they'll want a VAT receipt showing this information and if they ask you for it, you have to provide it.

Ideal way to do this would be to customise the confirmation email the user gets when their card is charged to include this information.

I'm still exploring Spreedly, but I haven't yet found a way to do that (customise confirmation email).

So it looks like this would have to be something we do on our site: generate an invoice using transaction details (date, id) from Spreedly. Or is there a way to get Spreedly to generate an invoice for the user to save / print?
Photo of brucegreigB

brucegreig

  • 23 Posts
  • 2 Reply Likes
I just stumbled across another requirement for VAT invoices. Sharing here as it might be useful for other readers of this post.

If you are in the UK and set prices in a foreign currency, HMRC require that, where UK VAT is due, you must show GBP equivalent amount printed on the VAT invoice (even if you are paid in the foreign currency).

Covered here on HMRC website:

http://www.hmrc.gov.uk/vat/managing/i...
Photo of Nathaniel Talbott

Nathaniel Talbott, Official Rep

  • 969 Posts
  • 94 Reply Likes
If you need a VAT invoice with dynamic details you would currently need to generate it yourself.
Photo of Peter RousePR

Peter Rouse

  • 1 Post
  • 0 Reply Likes
Hi Frank/Nathaniel
Just came across Spreedly and would love to know how you are now working with the VAT issue in conjunction with Spreedly.
Nathaniel - have you made any improvements to Spreedly to assist folks in the EU? What about an affiliate marketing add on as well - any progress there?
Kind regards
Photo of Nathaniel Talbott

Nathaniel Talbott, Official Rep

  • 969 Posts
  • 94 Reply Likes
Peter, we haven't added anything specifically for handling VAT, but Spreedly clients seem to be handling it fine by just offering different plans to EU customers.

RE affiliate tracking, we don't have direct support, but this recent post on the Spreedly blog might interest you: http://blog.spreedly.com/2010/1/25/ad...
Photo of Christoph C. Cemper

Christoph C. Cemper

  • 3 Posts
  • 0 Reply Likes
well, your service looks really nice and I appreciate you have some payment gateways that work in the EU, but this whole "squeeze your tax info into the description" is not how "having a service that handles the billing stuff" should be... we're looking for a new billing backend and will def. NOT want to spend many days "work-arounding" things
Photo of Christoph C. Cemper

Christoph C. Cemper

  • 3 Posts
  • 0 Reply Likes
sad thing that the last year hasn't helped to have the simple VAT ( sales tax ) rules in the system
Photo of Chris @ BrightpearlC@

Chris @ Brightpearl

  • 1 Post
  • 0 Reply Likes
Hi Nathaniel
We were considering your service at Brightpearl but we're based in the UK, and this won't work for us. Just to let you know :)
Photo of Gijs Nelissen

Gijs Nelissen

  • 1 Post
  • 1 Reply Like
For two new web based tools based in Belgium, Europe. We are bound by Belgian/European laws, and have to comply with all the VAT regulations.

Will Spreedly ever support basic VAT support ? Without having to hack with custom plans & self-generated invoices ?
Photo of brucegreigB

brucegreig

  • 23 Posts
  • 2 Reply Likes
Yes, this is a problem for us too. It seems to be really hard to generate an invoice ourselves, because it is hard to get from Spreedly the actual amount charged (unless we use Payments API, which kind of defeats the object).

I don't understand why Spreedly seems to see this as just a European issue. We have (business) customers all over the world, and they all want an invoice for their records (the sparse confirmation email that Spreedly sends is not sufficient, it doesn't have a date, nor a unique identifying number and doesn't show the customer's legal entity or address.)

We are currently working around this with a clunky semi-automated process, but that's not sustainable.

Option to customise the outgoing email would solve this at a stroke, I think.

Or maybe there is a simple way to programatically get the actual amount (including pro-rated amounts) that Spreedly has charged? Have we missed how to do that?
Photo of brucegreigB

brucegreig

  • 23 Posts
  • 2 Reply Likes
And I'm not sure why European VAT is so different from USA sales tax. VAT needs to be charged to some customers but not others, based on their location, but that also applies to USA sales tax, right? I understand that many states don't charge sales tax on web-based software, but some do (quick Google search reveals), e.g.:

http://sta-ga.com/sales-tax-georgia-b...

So this must be a USA issue also, right? Or do our American cousins just wing it and swallow the sales tax bill if they get hit with one, and not bother trying to actually pass it on to the customer?

(I understand the conceptual difference between VAT and sales tax, one takes into account cost of producing item, the other doesn't, but that's immaterial here. The difficulty arises from having to charge the tax to some customers but not others, and that shouldn't just be a Euro problem, I think that problem must exist in USA also, but maybe is small enough to sort-of ignore).
Photo of Rahoul Baruah

Rahoul Baruah

  • 12 Posts
  • 2 Reply Likes
No - it's not really based upon location (although it does play a part) - it's based upon if you are a VAT registered business based in Europe.

A UK VAT registered business charges 20% to all UK purchasers (although VAT registered purchasers can claim the VAT back from the government).

They also charge that 20% to all EU purchasers - but as a convenience VAT-registered EU purchasers who can prove that they are VAT-registered can opt to avoid paying it (as that then saves the two governments a bit of negotiation when it comes to claims/collection time).

Non-EU purchasers do not have to pay VAT.

The key things are the EU VAT-registered purchasers who need to prove their VAT-registration - normally done by providing their registration number.

And the fact that if the purchaser wants to claim the VAT back from the government then the invoice needs to be in a specific format - in particular listing the VAT numbers involved and the country, rate and amount.
Photo of Nathaniel Talbott

Nathaniel Talbott, Official Rep

  • 969 Posts
  • 94 Reply Likes
This isn't at all an EU vs. US issue; charging tax on web services is just much more common in the EU and thus that's usually what gets discussed. At this point we're not planning on adding any kind of explicit tax support this year; we may tackle it next year, or provide you with better tools to handle it yourself.

As far as getting the actual amount that Spreedly has charged, that is returned in the list of invoices attached to the subscriber XML.
Photo of fsnvlabF

fsnvlab

  • 1 Post
  • 0 Reply Likes
Indeed it is quite a pain. I heard of a new startup in the UK that is tackling this issue so hopefully they will be up and running soon. Subsify

I would still like to see Spreedly include this though!
Photo of vincentV

vincent

  • 1 Post
  • 0 Reply Likes
Hi, just to say that I'm considering using Spreedly for a French-based service and the VAT support is a deal breaker for me. So, definitely looking forward to seing it implemented.