France VAT Numbers

Format, rates & examples

Everything you need to know about Taxe sur la valeur ajoutée (TVA) numbers in France — format rules, current rates, and real company examples you can verify against VIES.

EU Member StateTVATaxe sur la valeur ajoutéeEUR

VAT Number Format

Structure

FR + 2 alphanumeric + 9 digits

Example format

FRXX123456789

Regex

^FR[A-HJ-NP-Z0-9]{2}\d{9}$

VAT numbers are not case-sensitive — lowercase input is automatically normalised.

Current VAT Rates

Standard

20%

Reduced

0.9%

Reduced

1.05%

Reduced

5.5%

Reduced

8.5%

Reduced

10%

Reduced

13%

Super reduced

2.1%

Rates from EU Commission TEDB · Updated 2026-05-12

What we return for France

  • VIES validation (valid / not valid)
  • Company name & address
  • National registry ID
  • Founded date
  • Legal form
  • Industry
  • Works if VIES is down

See the full coverage table for all 27 EU member states + Northern Ireland →

Check a France VAT Number

Enter a TVA number starting with FR to verify it against the official VIES database.

Format: FR + 2 alphanumeric + 9 digits

Example:

France FR VAT — rates & validation via API

Get France VAT rates via API — free, no key

No API key required
Request
curl "https://api.vatnode.dev/v1/rates/FR"
Response200 OK
{
  "countryCode": "FR",
  "countryName": "France",
  "vatName": "Taxe sur la valeur ajoutée",
  "vatAbbr": "TVA",
  "standardRate": 20,
  "reducedRates": [
    13,
    10,
    8.5,
    5.5,
    1.05,
    0.9
  ],
  "superReducedRate": 2.1,
  "parkingRate": null,
  "vatNumberFormat": "FR + 2 alphanumeric + 9 digits",
  "vatNumberPattern": "^FR[A-HJ-NP-Z0-9]{2}\\d{9}$",
  "updatedAt": "2026-05-12"
}

View full rates API reference

Get France VAT rates via package — offline, no HTTP

eu-vat-rates-data
Request
# npm install eu-vat-rates-data
import { getRate } from 'eu-vat-rates-data'

const rate = getRate('FR')
console.log(rate.standard) // FR standard VAT rate
getRate() result200 OK
{
  "country": "France",
  "currency": "EUR",
  "eu_member": true,
  "vat_name": "Taxe sur la valeur ajoutée",
  "vat_abbr": "TVA",
  "standard": 20,
  "reduced": [
    0.9,
    1.05,
    5.5,
    8.5,
    10,
    13
  ],
  "super_reduced": 2.1,
  "parking": null,
  "format": "FR + 2 alphanumeric + 9 digits",
  "pattern": "^FR[A-HJ-NP-Z0-9]{2}\\d{9}$"
}

View package on GitHub

Validate France FR VAT numbers

Requires API key
Request
curl "https://api.vatnode.dev/v1/vat/FR81775670417" \
  -H "Authorization: Bearer YOUR_API_KEY"
Response200 OK
{
  "valid": true,
  "vatId": "FR81775670417",
  "countryCode": "FR",
  "companyName": "LVMH Moët Hennessy Louis Vuitton SE",
  "companyAddress": null,
  "companyRegistrationDate": null,
  "companyForm": null,
  "industryDescription": null,
  "registryCode": null,
  "registryCodeName": null,
  "verifiedAt": "2026-04-25T12:00:00.000Z",
  "checkId": "019dc41e-d64d-7255-8ed7-cf5443103cd8",
  "countryName": "France",
  "countryVat": {
    "vatName": "Taxe sur la valeur ajoutée",
    "vatAbbr": "TVA",
    "currency": "EUR",
    "standardRate": 20,
    "reducedRates": [
      13,
      10,
      8.5,
      5.5,
      1.05,
      0.9
    ],
    "superReducedRate": 2.1,
    "parkingRate": null,
    "vatNumberFormat": "FR + 2 alphanumeric + 9 digits",
    "vatNumberPattern": "^FR[A-HJ-NP-Z0-9]{2}\\d{9}$",
    "countryVatUpdatedAt": "2026-05-12"
  },
  "consultationNumber": null
}

View full API response schema

Frequently Asked Questions

What is the VAT number format in France?

VAT numbers in France follow the format: FR + 2 alphanumeric + 9 digits. Example: FRXX123456789. VAT numbers are not case-sensitive — lowercase input is automatically normalised.

What is the VAT number regex pattern in France?

Use this regular expression to validate VAT numbers in France TVA number format locally:

^FR[A-HJ-NP-Z0-9]{2}\d{9}$

Test against the uppercase number. Format validation catches typos locally — always follow with a VIES check to confirm the number is active.

What is the standard TVA rate in France?

The standard TVA rate in France is 20%. Reduced rates: 0.9%, 1.05%, 5.5%, 8.5%, 10%, 13%. Super-reduced rate: 2.1%. Rates are sourced from the EU Commission TEDB and updated daily.

How do I validate a VAT number in France programmatically?

Send a GET request to https://api.vatnode.dev/v1/vat/{vatId} with your Authorization: Bearer header. The API checks the number against the official EU VIES database and returns a JSON response with a valid field, company name, address, and current TVA rates. Free plan available — 100 requests/month, no credit card required.

What does TVA stand for in France?

TVA stands for Taxe sur la valeur ajoutée — the France name for Value Added Tax (VAT). It appears on France invoices and tax documents.

Validate France VAT numbers in your app

Use the vatnode API to automate TVA validation in your invoicing or checkout flow. Free plan available, no credit card required.