PHPackages                             alegiac/laravel-vat-checker - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Validation &amp; Sanitization](/categories/validation)
4. /
5. alegiac/laravel-vat-checker

ActiveLibrary[Validation &amp; Sanitization](/categories/validation)

alegiac/laravel-vat-checker
===========================

European VAT Validator package for Laravel

v1.1.8(7mo ago)039MITPHPPHP ^8.0CI failing

Since Sep 5Pushed 6mo agoCompare

[ Source](https://github.com/alegiac/laravel-vat-checker)[ Packagist](https://packagist.org/packages/alegiac/laravel-vat-checker)[ Docs](https://github.com/alegiac/laravel-vat-checker)[ RSS](/packages/alegiac-laravel-vat-checker/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (2)Versions (11)Used By (0)

Laravel VAT Checker
===================

[](#laravel-vat-checker)

[![Latest Version on Packagist](https://camo.githubusercontent.com/dc4632417d4099d66668f25dd4d5df56660f747d06620337bb280c086500e9ff/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f616c65676961632f6c61726176656c2d7661742d636865636b65722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/alegiac/laravel-vat-checker)[![Total Downloads](https://camo.githubusercontent.com/0c83c6b75187c7bcb4bb7e924b89200418e80a491312e22805a69531ecdf053e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f616c65676961632f6c61726176656c2d7661742d636865636b65722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/alegiac/laravel-vat-checker)

European VAT validator for Laravel with format checks and VIES verification. Includes optional caching and email notifications on connection errors.

Installation
------------

[](#installation)

```
composer require alegiac/laravel-vat-checker
```

Usage
-----

[](#usage)

### Facade (Laravel)

[](#facade-laravel)

```
use LaravelVatChecker;

$result = LaravelVatChecker::check('IT12345678901');
// $result = [
//   'isFormatted' => bool,
//   'isVies' => bool,
//   'isError' => bool,
//   'errorDescription' => string|null,
//   'details' => array
// ];
```

### Class

[](#class)

```
use Alegiac\LaravelVatChecker\LaravelVatChecker;

$checker = new LaravelVatChecker();
$result = $checker->check('DE123456789');
```

### Examples

[](#examples)

UK (format validation only):

```
$result = LaravelVatChecker::check('GB123456789');
// $result['isFormatted'] === true/false
```

Switzerland (format validation only, accepts separators and suffixes):

```
$result = LaravelVatChecker::check('CHE-421.098.863 MWST');
// $result['isFormatted'] === true/false
```

Norway (format validation only, MOD11 check, optional MVA suffix):

```
$result = LaravelVatChecker::check('NO999888777MVA');
// $result['isFormatted'] === true/false
```

Australia (format validation only, ABN 11 digits with checksum):

```
$result = LaravelVatChecker::check('AU51824753556');
// $result['isFormatted'] === true/false
```

Canada (format validation only, BN 9 digits with optional RT0001):

```
$result = LaravelVatChecker::check('CA123456789RT0001');
// $result['isFormatted'] === true/false
```

New Zealand (format validation only, GST 8–9 digits):

```
$result = LaravelVatChecker::check('NZ123456789');
// $result['isFormatted'] === true/false
```

Configuration (optional)
------------------------

[](#configuration-optional)

Publish config and views (for email notifications):

```
php artisan vendor:publish --tag=vat-checker-config
php artisan vendor:publish --tag=vat-checker-views
```

Environment variables:

```
VAT_CHECKER_CACHE=true
VAT_CHECKER_CACHE_TTL=86400   # 0 = forever
VAT_CHECKER_NOTIFICATIONS=true
VAT_CHECKER_NOTIFICATIONS_MAIL=true
VAT_CHECKER_NOTIFICATIONS_MAIL_TO=ops@example.com
```

Supported countries
-------------------

[](#supported-countries)

- EU: AT, BE, BG, CY, CZ, DE, DK, EE, EL, ES, FI, FR, HR, HU, IE, IT, LT, LU, LV, MT, NL, PL, PT, RO, SE, SI, SK
- CH: Switzerland (format validation only)
- GB: United Kingdom (format validation only)
- NO: Norway (format validation only)
- AU: Australia (format validation only)
- CA: Canada (format validation only)
- NZ: New Zealand (format validation only)

Testing
-------

[](#testing)

```
composer test
```

License
-------

[](#license)

MIT

### Changelog

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Credits
-------

[](#credits)

- [Alessandro Giacomella](https://github.com/alegiac)
- [Stefano Gallina](https://github.com/tuungsteno)

License
-------

[](#license-1)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance65

Regular maintenance activity

Popularity8

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 94.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~3 days

Total

10

Last Release

223d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/0b12fe83a0640b7339d5967041de63639817b48e2c7a8a44ebab2b955b3a53c1?d=identicon)[alegiac](/maintainers/alegiac)

---

Top Contributors

[![eurostep-commerce](https://avatars.githubusercontent.com/u/116254142?v=4)](https://github.com/eurostep-commerce "eurostep-commerce (17 commits)")[![alegiac](https://avatars.githubusercontent.com/u/12858077?v=4)](https://github.com/alegiac "alegiac (1 commits)")

---

Tags

alegiaclaravel-vat-checker

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/alegiac-laravel-vat-checker/health.svg)

```
[![Health](https://phpackages.com/badges/alegiac-laravel-vat-checker/health.svg)](https://phpackages.com/packages/alegiac-laravel-vat-checker)
```

###  Alternatives

[webmozart/assert

Assertions to validate method input/output with nice error messages.

7.6k894.0M1.2k](/packages/webmozart-assert)[bensampo/laravel-enum

Simple, extensible and powerful enumeration implementation for Laravel.

2.0k15.9M104](/packages/bensampo-laravel-enum)[swaggest/json-schema

High definition PHP structures with JSON-schema based validation

48612.5M73](/packages/swaggest-json-schema)[stevebauman/purify

An HTML Purifier / Sanitizer for Laravel

5325.6M19](/packages/stevebauman-purify)[ashallendesign/laravel-config-validator

A package for validating your Laravel app's config.

217905.3k5](/packages/ashallendesign-laravel-config-validator)[crazybooot/base64-validation

Laravel validators for base64 encoded files

1341.9M8](/packages/crazybooot-base64-validation)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
