Business v1 / Firme
Profilul unei firme
Profilul sintetic al unei firme după CUI: identitate ONRC, formă juridică, stare, CAEN principal,
stare fiscală (TVA/inactiv/e-factura), sediu în ambele variante — RAW (ONRC) și REZOLVAT (Locations:
SIRUTA, UAT, județ, regiune, NUTS, populație) — plus un rezumat al sub-resurselor disponibile.
GET
https://oneapi.ro/api/business/v1/firme/{cui}
Parametri de cale
NumeTipDescriereExemplu
cuiobligatoriu
string
Codul de identificare fiscală al firmei, fără prefixul
RO (ex. 6719278).
Parametri de interogare
Ruta nu acceptă parametri de interogare.
Cum se comportă
- Profilul unificat al unei firme, cheiat pe codul fiscal (CUI). Adună la un loc identitatea de la ONRC (denumire, formă juridică, sediu, stare, dată de înmatriculare), starea fiscală de la ANAF (plătitor de TVA, inactivitate) şi CAEN-ul principal.
- CAEN-ul principal vine din starea fiscală (ANAF), nu din lista de activităţi autorizate. În registru, câmpul „activitate principală" de la ONRC e gol pe toate firmele, aşa că sursa de adevăr pentru CAEN-ul curent e vectorul fiscal. Acoperirea e ~97%.
- Sediul e servit în două forme:
sediu.raw(textul brut de la ONRC) şisediu.rezolvat(legat de modulul Locations la nivel de judeţ, localitate şi, unde se poate, stradă). Rezolvarea acoperă 99,9% din firme la localitate. - Pentru felii individuale există rute dedicate:
/firme/{cui}/fiscal,/financiar,/activitati,/persoane,/achizitii,/contact,/locatie. Profilul complet (toate feliile într-un apel) e la/firme/{cui}/profil-complet.
La ce folosește
- Autocompletarea datelor de firmă la facturare sau la înscrierea unui client business.
- Verificarea rapidă a stării şi a statutului de TVA înainte de o tranzacţie.
- Îmbogăţirea unei baze de clienţi cu date oficiale, pornind de la CUI.
Structura răspunsului
Toate câmpurile de mai jos sunt în data.
CâmpTipDescriere
cui
integer
Codul fiscal.
denumire
string | null
Denumirea.
cod_inmatriculare
string | null
Numărul de ordine în registrul comerţului (J…).
euid
string | null
Identificatorul european unic al firmei.
forma_juridica
string | null
Forma juridică (SRL, SA, PFA…).
stare
string | null
Starea firmei, ca obiect:
denumire e textul brut din ONRC (107 valori distincte folosite), categorie e clasificarea noastră în 7 cutii — activa, suspendata, dizolvata, lichidare, radiata, insolventa, alta — pe care o foloseşti ca să filtrezi sau să grupezi. cod e codul ONRC al stării.
data_inmatriculare
string | null
Data înmatriculării la registrul comerţului.
sediu
object
Obiect cu sediul brut (
raw) şi cel rezolvat prin Locations (rezolvat).
sediu.raw[]
string | integer
Adresa sediului aşa cum e la sursă, câmp cu câmp; cheile goale lipsesc.
sediu.rezolvat.localitate_id
integer
Id-ul intern al localităţii în Locations.
sediu.rezolvat.localitate
string
Localitatea.
sediu.rezolvat.cod_siruta
integer | null
Codul SIRUTA al localităţii — chainable spre /locations/v1.
sediu.rezolvat.uat
string | null
Unitatea administrativ-teritorială.
sediu.rezolvat.judet
string | null
Judeţul.
sediu.rezolvat.regiune
string | null
Regiunea de dezvoltare.
sediu.rezolvat.cod_nuts
string | null
Codul NUTS al unităţii teritoriale.
sediu.rezolvat.populatie
integer | null
Populaţia localităţii (recensământ).
sediu.rezolvat.strada_id
integer | null
Id-ul străzii în Locations — chainable spre /locations/v1/strazi/{id}.
sediu.rezolvat.strada
string | null
Strada.
sediu.rezolvat.potrivire[]
string
Cât de sigură e legarea la nomenclator, pe localitate şi pe stradă.
sediu.rezolvat.coordonate.lat
number
Latitudinea punctului (WGS84, 6 zecimale ≈ 11 cm).
sediu.rezolvat.coordonate.lng
number
Longitudinea punctului (WGS84).
sediu.rezolvat.coordonate.precizie
string
Vezi
precizie de la /firme/{cui}/locatie: numar, numar_aproximativ, strada ori localitate. ⚠️ Nu desena ac decât pe primele două.
caen_principal
object
Codul CAEN principal, din starea fiscală.
null unde ANAF nu îl publică.
caen_principal.cod
string
Codul CAEN principal.
caen_principal.denumire
string | null
Denumirea activităţii principale.
caen_principal.versiune
string
Revizia CAEN în care e exprimat codul.
fiscal.platitor_tva
boolean
Plătitoare de TVA la ultima sincronizare.
fiscal.tva_la_incasare
boolean
Aplică TVA la încasare.
fiscal.split_tva
boolean
Aplică split TVA.
fiscal.inactiv_fiscal
boolean
Declarată inactivă fiscal.
fiscal.e_factura
boolean
Înrolată în e-Factura.
fiscal.radiata
boolean
Firma e radiată.
prezente[]
mixed
În ce seturi de date mai apare firma (financiar, achiziţii, registre…).
tva
Plătitor de TVA la data ultimei sincronizări ANAF.
Exemple de răspuns
GEThttps://oneapi.ro/api/business/v1/firme/6719278
{
"data": {
"cui": 6719278,
"denumire": "MEGA IMAGE SRL",
"cod_inmatriculare": "J1994027872407",
"euid": "ROONRC.J1994027872407",
"forma_juridica": "SRL",
"stare": {
"cod": "1048",
"denumire": "funcțiune",
"categorie": "activa"
},
"data_inmatriculare": "1994-12-27",
"sediu": {
"raw": {
"judet": "Bucureşti",
"localitate": "Bucureşti Sectorul 6",
"strada": "Timişoara",
"numar": "26",
"etaj": "2",
"sector": 6,
"cod_postal": "61331"
},
"rezolvat": {
"localitate_id": 13755,
"localitate": "București Sectorul 6",
"cod_siruta": 179196,
"uat": "București",
"judet": "București",
"regiune": "București-Ilfov",
"cod_nuts": "RO321",
"populatie": 324994,
"strada_id": 221585,
"strada": "Timișoara",
"potrivire": {
"loc": "exact",
"str": "exact"
},
"coordonate": {
"lat": 44.428876,
"lng": 26.036041,
"precizie": "numar"
}
}
},
"caen_principal": {
"cod": "4711",
"denumire": "Comerț cu amănuntul în magazine nespecializate, cu vânzare predominantă de produse alimentare, băuturi și tutun",
"versiune": "CAEN Rev.2"
},
"fiscal": {
"platitor_tva": true,
"tva_la_incasare": false,
"split_tva": false,
"inactiv_fiscal": false,
"e_factura": false,
"radiata": false
},
"prezente": {
"nr_persoane": 5,
"ani_financiar": [
2008,
2009,
2010,
2011,
2012,
2013,
2014,
2015,
2016,
2017,
2018,
2019,
2020,
2021,
2022,
2023,
2024,
2025
],
"nr_achizitii": 776,
"registre": [
"anaf_datorii",
"anpm_eee",
"ansvsa",
"contribuabili",
"mcpds_sponsorizari"
]
}
}
}
GEThttps://oneapi.ro/api/business/v1/firme/14399840
{
"data": {
"cui": 14399840,
"denumire": "DANTE INTERNATIONAL SA",
"cod_inmatriculare": "J2002000372404",
"euid": "ROONRC.J2002000372404",
"forma_juridica": "SA",
"stare": {
"cod": "1048",
"denumire": "funcțiune",
"categorie": "activa"
},
"data_inmatriculare": "2002-01-23",
"sediu": {
"raw": {
"judet": "Bucureşti",
"localitate": "Bucureşti Sectorul 6",
"strada": "Şos. VIRTUŢII",
"numar": "148",
"sector": 6,
"cod_postal": "60787"
},
"rezolvat": {
"localitate_id": 13755,
"localitate": "București Sectorul 6",
"cod_siruta": 179196,
"uat": "București",
"judet": "București",
"regiune": "București-Ilfov",
"cod_nuts": "RO321",
"populatie": 324994,
"strada_id": null,
"strada": null,
"potrivire": {
"loc": "exact",
"str": "none"
},
"coordonate": {
"lat": 44.435278,
"lng": 26.102778,
"precizie": "localitate"
}
}
},
"caen_principal": {
"cod": "4754",
"denumire": "Comerț cu amănuntul al articolelor și aparatelor electrocasnice, în magazine specializate",
"versiune": "CAEN Rev.2"
},
"fiscal": {
"platitor_tva": true,
"tva_la_incasare": false,
"split_tva": false,
"inactiv_fiscal": false,
"e_factura": false,
"radiata": false
},
"prezente": {
"nr_persoane": 4,
"ani_financiar": [
2008,
2009,
2010,
2011,
2012,
2013,
2014,
2015,
2016,
2017,
2018,
2019,
2020,
2021,
2022,
2023,
2024,
2025
],
"nr_achizitii": 67306,
"registre": [
"anpm_eee",
"anspdcp",
"ansvsa",
"bnr_moneda_electronica",
"contribuabili",
"marci",
"ted_ro",
"transparency_register"
]
}
}
}
GEThttps://oneapi.ro/api/business/v1/firme/2054341
{
"data": {
"cui": 2054341,
"denumire": "SMIRODAVA S.A.",
"cod_inmatriculare": "J27/24/1991",
"euid": "ROONRC.J27/24/1991",
"forma_juridica": "SA",
"stare": {
"cod": "1084",
"denumire": "radiată",
"categorie": "radiata"
},
"data_inmatriculare": "1991-01-22",
"sediu": {
"raw": {
"judet": "Neamţ",
"localitate": "Municipiul Roman",
"strada": "B-dul REPUBLICII",
"numar": "123-125",
"sector": 0,
"cod_postal": "5550"
},
"rezolvat": {
"localitate_id": 9302,
"localitate": "Roman",
"cod_siruta": 120879,
"uat": "Roman",
"judet": "Neamț",
"regiune": "Nord-Est",
"cod_nuts": "RO214",
"populatie": 48644,
"strada_id": 142741,
"strada": "Republicii",
"potrivire": {
"loc": "exact",
"str": "exact"
},
"coordonate": {
"lat": 46.924989,
"lng": 26.943953,
"precizie": "numar"
}
}
},
"caen_principal": {
"cod": "1410",
"denumire": "Fabricarea articolelor de îmbrăcăminte prin tricotare sau croșetare",
"versiune": "CAEN Rev.3"
},
"fiscal": {
"platitor_tva": true,
"tva_la_incasare": false,
"split_tva": false,
"inactiv_fiscal": false,
"e_factura": false,
"radiata": false
},
"prezente": {
"nr_persoane": 3,
"ani_financiar": [
2008,
2009,
2010,
2011,
2012,
2013,
2014,
2015,
2016,
2017,
2018,
2019,
2020,
2021,
2022,
2023,
2024,
2025
],
"nr_achizitii": 0,
"registre": [
"mcpds_sponsorizari"
]
}
}
}
GEThttps://oneapi.ro/api/business/v1/firme/24890577
{
"data": {
"cui": 24890577,
"denumire": "UNIVERS-ALL DISTRIBUTION SRL",
"cod_inmatriculare": "J19/1161/2008",
"euid": "ROONRC.J19/1161/2008",
"forma_juridica": "SRL",
"stare": {
"cod": "1048",
"denumire": "funcțiune",
"categorie": "activa"
},
"data_inmatriculare": "2008-12-18",
"sediu": {
"raw": {
"judet": "Harghita",
"localitate": "Municipiul Gheorgheni",
"strada": "POMPIERILOR",
"numar": "118",
"cod_postal": "535500"
},
"rezolvat": {
"localitate_id": 6756,
"localitate": "Gheorgheni",
"cod_siruta": 83570,
"uat": "Gheorgheni",
"judet": "Harghita",
"regiune": "Centru",
"cod_nuts": "RO124",
"populatie": 15762,
"strada_id": 128938,
"strada": "Pompierilor",
"potrivire": {
"loc": "exact",
"str": "exact"
},
"coordonate": {
"lat": 46.724202,
"lng": 25.589422,
"precizie": "strada"
}
}
},
"caen_principal": {
"cod": "4619",
"denumire": "Intermedieri în comerțul cu produse diverse",
"versiune": "CAEN Rev.2"
},
"fiscal": {
"platitor_tva": true,
"tva_la_incasare": false,
"split_tva": false,
"inactiv_fiscal": false,
"e_factura": true,
"radiata": false
},
"prezente": {
"nr_persoane": 1,
"ani_financiar": [
2009,
2010,
2011,
2012,
2013,
2014,
2015,
2016,
2017,
2018,
2019,
2020,
2021,
2022,
2023,
2024
],
"nr_achizitii": 520,
"registre": [
"ansvsa",
"mcpds_sponsorizari"
]
}
}
}
Coduri de eroare
| Cod | Slug | Când apare |
|---|---|---|
| 401 | neautentificat | Token lipsă, invalid, expirat sau revocat. |
| 403 | feature_indisponibil | Planul curent nu include funcţia de care ţine ruta. |
| 404 | negasit | CUI inexistent în registru. Codul de eroare este negasit. |
| 429 | cota_depasita | Cota lunară a planului a fost depăşită (vezi Retry-After). |
Toate erorile au aceeași formă. eroare.cod e stabil și e cel după care trebuie să ramifici în cod — nu după textul din mesaj, care se poate schimba.
{
"eroare": {
"cod": "negasit",
"mesaj": "CUI inexistent în registru. Codul de eroare este negasit."
}
}