tox82/vatnumber-validator

A simple VAT identification number validator, without any dependencies, NOT relying on the VIES service.

v1.2.2 2023-07-31 13:09 UTC

This package is auto-updated.

Last update: 2025-05-29 01:27:15 UTC


README

A formal VAT number validator

It's not a full validation tool, it just checks that the VAT number is formally valid: eg. 11 chars, digits only, etc. It's built using these rules:

It requires PHP >= 7.0.

Installation:

composer require tox82/vatnumber-validator

Usage

Just load the VatNumber class and execute a check, passing the country code and VAT code as parameters, and it will return a boolean value. True for valid VAT number, false for invalid.

use Tox82\VatNumber;

...

echo VatNumber::check('FR', '12345678901'); // true
echo VatNumber::check('HU', '12345678'); // true
echo VatNumber::check('PT', '123456789'); // true
echo VatNumber::check('SE', '123456789012'); // true

echo VatNumber::check('AT', 'U123456780'); // false because of invalid number's length
echo VatNumber::check('MK', 'AA4032013544513'); // false because of  invalid characters

TODO

Add specific, more robust validation for each country, when available. Eg. check digits. prefixes, suffixes, etc.

Resources