A PHP package that helps you to check information about Union European companies through the combination of VAT number and Country code. This package is an interface to consume the SOAP API webservice provided by the European Commission. (http://ec.europa.eu/taxation_customs/vies/checkVatTestService.wsdl)
You can install the package via composer:
composer require florentinvintila/php-vat-checker
This check only validates whether the VAT information is valid.
use JairForo\VATChecker\Exceptions\VATCheckerException;
use JairForo\VATChecker\VATChecker;
try {
/** @var bool $isValid */
$isValid = (new VATChecker())->isValid($countryCode, $vatNumber);
} catch (VATCheckerException $exception) {
// Something went wrong during the request.
}
- If the information is not valid, an InvalidVATException is thrown.
- If something goes wrong during the request, an VATCheckerException is thrown.
use JairForo\VATChecker\Exceptions\InvalidVATException;
use JairForo\VATChecker\Exceptions\VATCheckerException;
use JairForo\VATChecker\Objects\VATResponse;
use JairForo\VATChecker\VATChecker;
try {
/** @var VATResponse $vatResponse */
$vatResponse = (new VATChecker())->check($countryCode, $vatNumber);
print_r($vatResponse);
} catch (VATCheckerException $exception) {
if ($exception instanceof InvalidVATException) {
// The VAT information was invalid.
return;
}
// Something else went wrong during the request.
}
The above, when successful, prints the following output:
{
"country_code": "NL",
"vat_number": "611989431B01",
"requested_at": {
"date": "2020-02-02 00:00:00.000000",
"timezone_type": 1,
"timezone": "+00:00"
},
"company_name": "UNICORN B.V.",
"address": "UNICORN STREET 007",
"zipcode": "1108DH",
"city": "AMSTERDAM",
"original_address": "UNICORN STREET 007 1108DH AMSTERDAM"
}
composer test
Please see CONTRIBUTING for details.
The BSD 2-clause "Simplified" license (bsd-2-clause). Please see License File for more information.