Romania VAT Number Format (RO12345678)
Taxa pe valoarea adăugată (TVA) number structure, regex & verified examples
Everything you need to know about Taxa pe valoarea adăugată (TVA) numbers in Romania — they follow the pattern RO + 2–10 digits (e.g. RO12345678), and can be verified against VIES. For the rates themselves, see Romania VAT rates and their history. Building a check into your app? See the Romania VAT API.
VAT Number Format
Structure
RO + 2–10 digitsExample format
RO12345678Regex
^RO\d{2,10}$VAT numbers are not case-sensitive — lowercase input is automatically normalised.
More on Romania
- Romania VAT rates and historyCurrent standard and reduced rates, and every past change.
- Romania VAT validation APIEndpoint, response fields and code samples for this country.
- Romania Reverse charge rulesWhen to zero-rate a cross-border B2B invoice, and what to write on it.
- Romania VIES uptimeAvailability of this country in the Commission database, sampled continuously.
What we return for Romania
- 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 →
Famous Romania VAT Numbers
Orange Romania SA
RO9010105
Major Romanian telecom operator
Verify →
Automobile Dacia SA
RO160796
Romanian automaker (Renault Group)
Verify →
OMV Petrom SA
RO1590082
Romania's largest oil and gas company
Verify →
Banca Transilvania SA
RO5022670
Romania's largest bank by assets
Verify →
CEC Bank SA
RO361897
Romanian state-owned savings bank
Verify →
Romgaz SA
RO14056826
Romania's largest natural gas producer, listed on BSE
Verify →
Check a Romania VAT Number
Enter a TVA number starting with RO to verify it against the official VIES database.
Format: RO + 2–10 digits
Validate a Romania RO VAT number via API
Get Romania VAT rates via API — free, no key
No API key requiredcurl "https://api.vatnode.dev/v1/rates/RO"
{
"countryCode": "RO",
"countryName": "Romania",
"vatName": "Taxa pe valoarea adăugată",
"vatAbbr": "TVA",
"standardRate": 21,
"reducedRates": [
11
],
"superReducedRate": null,
"parkingRate": null,
"vatNumberFormat": "RO + 2–10 digits",
"vatNumberPattern": "^RO\\d{2,10}$",
"updatedAt": "2026-08-13"
}Get Romania VAT rates via package — offline, no HTTP
eu-vat-rates-data# npm install eu-vat-rates-data
import { getRate } from 'eu-vat-rates-data'
const rate = getRate('RO')
console.log(rate.standard) // RO standard VAT rate{
"country": "Romania",
"currency": "RON",
"eu_member": true,
"vat_name": "Taxa pe valoarea adăugată",
"vat_abbr": "TVA",
"standard": 21,
"reduced": [
11
],
"super_reduced": null,
"parking": null,
"format": "RO + 2–10 digits",
"pattern": "^RO\\d{2,10}$"
}Validate Romania RO VAT numbers
Requires API keycurl "https://api.vatnode.dev/v1/vat/RO9010105" \ -H "Authorization: Bearer YOUR_API_KEY"
{
"valid": true,
"vatId": "RO9010105",
"countryCode": "RO",
"companyName": "Orange Romania SA",
"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": "Romania",
"countryVat": {
"vatName": "Taxa pe valoarea adăugată",
"vatAbbr": "TVA",
"currency": "RON",
"standardRate": 21,
"reducedRates": [
11
],
"superReducedRate": null,
"parkingRate": null,
"vatNumberFormat": "RO + 2–10 digits",
"vatNumberPattern": "^RO\\d{2,10}$",
"countryVatUpdatedAt": "2026-08-13"
},
"consultationNumber": null
}Frequently Asked Questions
What is the VAT number format in Romania?▾
VAT numbers in Romania follow the format: RO + 2–10 digits. Example: RO12345678. VAT numbers are not case-sensitive — lowercase input is automatically normalised.
What is the VAT number regex pattern in Romania?▾
Use this regular expression to validate VAT numbers in Romania TVA number format locally:
^RO\d{2,10}$Test against the uppercase number. Format validation catches typos locally — always follow with a VIES check to confirm the number is active.
How do I validate a VAT number in Romania 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 Romania?▾
TVA stands for Taxa pe valoarea adăugată — the Romanian name for Value Added Tax (VAT). It appears on Romanian invoices and tax documents.
VAT Number Formats for Other EU Countries
Validate Romania 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.