French VAT (TVA) Generator
GeneratorGenerate a valid French intracommunity VAT (TVA) number for testing. Produces a Luhn-valid 9-digit SIREN and computes its 2-digit key using the official formula. For testing purposes only.
Need the underlying SIREN/SIRET too?
This tool generates a French VAT (TVA) number from a random SIREN. To generate a standalone SIREN or SIRET, use our SIRET/SIREN Generator →
About this tool
About French VAT (TVA) Generator
The French intracommunity VAT number (numéro de TVA intracommunautaire) is FR followed by a 2-character key and the company's 9-digit SIREN. For the common numeric-key case, the key is computed as (12 + 3 × (SIREN mod 97)) mod 97 — a formula independently confirmed against Danone's real, published VAT number (FR27552032534, from SIREN 552032534).
This generator produces a Luhn-valid random SIREN and computes its correct numeric key using the official formula, giving you a complete, correctly-keyed FR VAT number for testing. A minority of real French VAT numbers use an alphanumeric key that follows no public formula — this generator only produces the verifiable numeric-key form.
Use generated TVA numbers to test European invoicing software, VIES-style lookup integrations, B2B checkout forms that collect an EU VAT number, or any test suite that needs a realistic, correctly-formatted French VAT identifier.
The key is always mathematically correct for the generated SIREN, verified against the same formula that produces real companies' published VAT numbers. Runs entirely in your browser with no data sent anywhere.
Key Features
- Official (12 + 3 × (SIREN mod 97)) mod 97 key formula
- Generates a fresh Luhn-valid SIREN each time
- Formula independently confirmed against a real published VAT number
- Instant copy to clipboard
- 100% browser-based, no data sent
- For testing purposes only
FAQ
French VAT (TVA) Generator — Frequently Asked Questions
How is the French VAT key calculated?
For the common numeric-key case: key = (12 + 3 × (SIREN mod 97)) mod 97. For example, Danone's real SIREN, 552032534, gives 552032534 mod 97 = 5, so key = (12 + 3 × 5) mod 97 = 27 mod 97 = 27 — which matches Danone's actual published VAT number, FR27552032534.
Is every French VAT number's key computed this way?
No. The vast majority use this numeric formula, but a minority of registrations — mostly older or certain public-sector entities — are assigned an alphanumeric key that follows no published formula. This generator only produces the verifiable, formula-based numeric form.
Is this a real, usable VAT number?
No. The underlying SIREN is randomly generated (though Luhn-valid), so the resulting VAT number is not assigned to any real company. It is intended purely for testing form validation, not for use on an actual invoice or tax filing.
Why does the tool generate a SIREN first?
A French VAT number is not independent data — it is mathematically derived from the company's SIREN. Generating a valid SIREN first, then computing the key from it, is the only way to produce an internally consistent VAT number.
Tips
- The format is always FR + 2-character key + 9-digit SIREN
- Use the SIRET/SIREN Generator if you only need the business number, not the VAT number
- Real French VAT numbers are only officially assigned by the tax administration — this tool is for test data only
- The EU's VIES service can confirm whether a VAT number is currently registered (not implemented here, since it requires a live API call)
Explore more
Related Tools
Other tools that might be useful for your workflow