Comments (6)
Well we actually can't. The old numbers user the same algo as VAT commercial numbers. We still need to validate the old method otherwise a VAT number of a hotel would not pass a checksum validation.
NL824155890B08 - this is a random VAT number of a hotel in Amsterdam. It uses the same MOD 11 method to calculate a checksum as old OB numbers.
From what i've read there is no way to say if the specified VAT number is a commercial one or an old OB number
Event if we pass and old OB number as valid (checksum valid) it will return as invalid from the VIES endpoint.
from vies.
If we cannot make the distinction we cannot prevent people from validating a now invalid VAT ID (OB number) against the VIES service where it will be marked as invalid.
Guess we should mention in our documentation that we cannot make the distinction on our end and the only way to actually validate Dutch VAT ID's is by using the VIES service through our library.
What a pitty, but we can only do so much right?
from vies.
we cannot make the distinction on our end and the only way to actually validate Dutch VAT ID's is by using the VIES service through our library.
That sounds about right.
Also: I just ran a little test with my own VAT numbers with the VIES service which I presume you are using as an end-point and it correctly validates the new number and marks the old number as invalid.
However, this also means that for people who don't do their accounting on a daily basis and retroactively need to check an old Dutch VAT number, there is currently no way to validate this anymore.... and this of course would also apply to applications doing a bulk check of the VAT numbers once in a while.
from vies.
That sounds about correct @jrfnl. This VIES library pre-validates VAT ID's before they are send to the official VIES service provided by the European Commission. It allows people to perform their required validation checks for their suppliers and clients and offers a way to do this offline because the official service is known to have stability and uptime issues.
I feel that by not having the ability to disallow OB numbers to be marked valid we're not giving our users the value they need. The Dutch Tax Office implemented this change starting the beginning of the year, but it will require lots of time for people to change their habbits and their stack of pre-printed invoice and order papers.
I will close this issue now as there's not much we can do on our side to reject OB-numbers, but if the situation changes in the future I would be very happy re-open this issue.
Thank you @krzaczek and @jrfnl for your input, very much appreciating your thoughts on this.
from vies.
@DragonBe Sorry I couldn't be of more help or offer a solution. If I hear of anything which could help I'll post it here.
from vies.
The Dutch Tax Office implemented this change starting the beginning of the year, but it will require lots of time for people to change their habbits and their stack of pre-printed invoice and order papers.
Regarding this: as far as I know everyone whose VAT number has changed got a letter about this already some two months ago with the new number. This was done explicitly to allow them to get their (pre-printed) paperwork sorted before January 1st, as well as inform their regular suppliers.
from vies.
Related Issues (20)
- Validation of Irish VAT ID failed for valid VAT ID HOT 7
- Making VIES package more inclusive
- Missing BG checksum validation for foreign natual persons
- VIES_EU_COUNTRY_LIST Visibility HOT 1
- Package upgrade to composer 2.0
- Ensure this package can be installed with Composer 2.0
- Implementing a Symfony constraint based on this library HOT 2
- Remove support for the United Kingdom ("GB") HOT 16
- Add support for United Kingdom (Northern Ireland) ("GB-NIR") HOT 7
- Support php8
- Validation failed for valid VAT numbers HOT 8
- 32 Bit Support HOT 1
- The service moved to SSL endpoint. HOT 1
- use of ::VIES_EXCLUDED_COUNTRY_CODES
- ValidatorLV results inconsistent with official EU validation
- heartbeat is not working anymore HOT 12
- Cannot populate CheckVatResponse after using `toArray`
- Optional Argument Validation Fails for ® HOT 2
- Heathbeat check always false HOT 1
- GetAddress non getting separated city, zip
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vies.