PHPackages                             gr3grst/php-french-business-id-validator - 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. gr3grst/php-french-business-id-validator

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

gr3grst/php-french-business-id-validator
========================================

A PHP validator for French business ID including French VAT validator/calculator

01PHP

Since Jun 19Pushed 10mo agoCompare

[ Source](https://github.com/Gr3G-RST/php-french-business-id-validator)[ Packagist](https://packagist.org/packages/gr3grst/php-french-business-id-validator)[ RSS](/packages/gr3grst-php-french-business-id-validator/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)DependenciesVersions (1)Used By (0)

PHP French Business ID Tools
============================

[](#php-french-business-id-tools)

A set of PHP classes with : \\

- Validating for French business ID (SIRET/SIREN)
- Refactoring for French business ID (SIRET/SIREN)
- Calculating French VAT number from SIREN

**Authors**

- Greg ROUSSAT -

**Licence** : MIT

Install
-------

[](#install)

> composer require gr3grst/php-french-business-id-validator

Class : Validator
-----------------

[](#class--validator)

### Method : isSiren

[](#method--issiren)

*Validate a SIREN number - 9 digits + Luhn*

**arguments**
*string* `$siren` The SIREN number
**returns**
*bool* Returns true if the SIRET number is valid, false otherwise.

### Method : isSiret

[](#method--issiret)

*Validate a SIRET number - 14 digits + Luhn*

**arguments**
*string* `$siret` The SIRET number
**returns**
*bool* Returns true if the SIRET number is valid, false otherwise.

### Method : isVatFr

[](#method--isvatfr)

*Validates a French VAT (TVA) number.*

**arguments**
*string* $tva The VAT number to validate, which must follow the French format: "FR" + 2 alphanumeric characters + 9 digits.
**returns**
*bool* Returns true if the VAT number is valid according to the format and checks, false otherwise.

Class : Calculator
------------------

[](#class--calculator)

### Method : calculateVatFr

[](#method--calculatevatfr)

*Calculates the French VAT (TVA) number based on a given SIREN number.*

**arguments**
*string* `$siren` The SIREN number
**returns**
*string|false* Returns the computed French VAT number in the format "FR\[key\]\[SIREN\]" if the input SIREN is valid. Returns false if the SIREN is not valid.

Class : Refactor
----------------

[](#class--refactor)

### Method : refactorSiren

[](#method--refactorsiren)

*Refactor a SIREN number - 9 digits and validate it with Luhn*

**arguments**
*string* `$siren` The SIREN number to refactor
**returns**
*string|false* Returns the SIREN number if valid, false otherwise.

### Method : refactorSiret

[](#method--refactorsiret)

*Refactor a SIREN number - 14 digits and validate it with Luhn*

**arguments**
*string* `$siret` The SIRET number to refactor
**returns**
*string|false* Returns the SIRET number if valid, false otherwise.

Examples
--------

[](#examples)

```
