Romania: company identifier formats (CUI / CIF)

Shape, check digit, accepted and refused examples and the API call for CUI / CIF in Romania. Every example on this page is run through the same validators as the free identifier validator, so a value shown as accepted is a value the validator accepts.

CUI / CIF

FieldValue
RegisterONRC
ShapeN{1,9} C
Check digitAdvisory. 2 to 10 digits without a leading zero. The body is padded to 9 digits and weighted 7,5,3,2,1,7,5,3,2; check = sum x 10 mod 11 (10 reads as 0). Advisory: a mismatch is a warning.
Worked example (accepted)5022670
Normalised form5022670
Also accepted as inputRO5022670
A one-character slip5022671 is accepted with a warning
Regex (normalised form)^[1-9][0-9]{1,9}$
API callGET /companies/search?country=RO&company_number=5022670
VAT numberRO + CUI — built from the identifier by rule; the registration is not confirmed

Notes and scope

A few genuine CUI fail the check. An RO, CUI or CIF prefix is accepted; a 13-digit number is a personal code and is refused.

Call it from code

curl "https://api.prometiam.com/functions/v1/risk-api/companies/search?country=RO&company_number=5022670" \
  -H "Authorization: Bearer YOUR_API_KEY"

Shape notation: N digit · L letter · X digit or letter · C check digit or character · {n} repeat n times.

A valid shape and check digit prove that a number is well-formed, not that a company holds it. Only a lookup in the register answers that.

Source and credit

Register data that the API serves for Romania carries this credit:

Contains data from the National Trade Register Office (ONRC), CC BY 4.0

Related pages

Start your 14-day free trial · API documentation

The free trial lasts 14 days and includes 500 credits. A card is required and nothing is charged during the trial; it then continues as Starter (EUR 9.99/month) unless you cancel.

Frequently asked questions

How is the CUI / CIF checked?
2 to 10 digits without a leading zero. The body is padded to 9 digits and weighted 7,5,3,2,1,7,5,3,2; check = sum x 10 mod 11 (10 reads as 0). Advisory: a mismatch is a warning.