Northern Ireland Protocol & VAT Numbers

Hi,

I’m just trying out Tryton and based in Northern Ireland. Whilst part of the UK we also remain inside the EU customs territory for goods even now after Brexit. We therefore have two VAT numbers. One prefixed GB for sales to customers in Great Britain and an XI number for customers in EU customs area. UK VAT number remains the same, in the same format as before and still prefixed with GB. I notice that when I enter the VAT number in with the prefix it removes the prefix to only leave the VAT number. That concerns me then that if I were to create invoices, way down the line if I ever get there, that it will add an automatic prefix of GB when in fact it could be GB or XI. I know next to nothing about Tryton so just making assumptions here based on that behaviour. Perhaps there is a need for an NI specific Identifier type to cover these XI prefixed EU VAT numbers. The XI VAT numbers can be verified on VIES and that started on 1 January 2021 after the Brexit Transition period finished.

Yes, it’s quite complicated isn’t it!

Am I right in thinking/reading that the numeric part of the VAT number is the same for both GB and EU customers, it is just the prefix that changes?

Yes, this is based on the functionality from the python-stdnum library that Tryton uses with the identifiers.

There may be a few different options, but you should be able to save it aswell against the party by using the “European VAT Number” type. Although you will still need to take care that the invoice has the correct vat number depending on where the company you are invoicing is based.

The VAT number are managed using the python-stdnum library. It seems there is not yet support for the XI prefix. Once such prefix landed in python-stdnum it could be used in Tryton and so you could register two tax identifier and link the proper one to each invoice.

I think it is in version 1.16: Release 1.16 · arthurdejong/python-stdnum · GitHub

It looks like GB and XI are treated as equivalent: python-stdnum/stdnum/gb/vat.py at b93d69581f35aa18e7fdd52b3f7fdf06770215e3 · arthurdejong/python-stdnum · GitHub

Indeed so the best is to register a “European VAT Number” with the prefix ‘XI’ and a “United Kingdom (and Isle of Man) VAT Number” for which the GB prefix will be striped.

1 Like

Hi all,

Thanks for the response.

@dave It is a bit of hassle at the minute for sure. We’ve had suppliers who we’ve used for years who just stopped supplying however that’s life and there is always an alternative who will take our money. We get over half of our stock from EU suppliers, mainly in the South of Ireland, Germany & Italy therefore the new arrangements suit us fine overall. About 25% of our customers, retail mainly, are based in the EU also but our sales to GB aren’t affected by new paperwork. That’s just the other way. GB into NI is where the issues arise and we don’t have that many GB suppliers and any that we do have for stock are all able to still supply. It’s more packing material that we’ve had problems getting.

As regards the VAT number itself. The reality is that the are the same number with a different prefix however HMRC advises that this cannot be relied upon in all circumstances but for us it is the same and the EORI, which we already had, is just the same again with three zeros on the end.

@ced and @dave It’s great when you can leverage an existing library like that it means you don’t have reimplement everything yourself so it’s great that option exists. I’ve tested it and it works. I suspect this is the easy bit.

1 Like