Business v1 / Firme
Situaţii financiare
Bilanțurile anuale ale firmei (2008–prezent), cu indicatorii decodați prin dicționar (denumire +
valoare). Filtrează un an cu ?an=. Adaugă ?raw=true pentru valorile brute (cod→valoare).
GET
https://oneapi.ro/api/business/v1/firme/{cui}/financiar
Parametri de cale
NumeTipDescriereExemplu
cuiobligatoriu
string
Codul de identificare fiscală al firmei, fără prefixul
RO (ex. 6719278).
Parametri de interogare
NumeTipDescriereValori acceptate
anopțional
integer | null
Opţional: un singur an fiscal. Fără el, toată seria.
ex. 2023ex. 2009
rawopțional
boolean | null
true adaugă şi codurile de indicator brute.
ex. true
Cum se comportă
- Ruta nu cere ca firma să fie în registrul comerţului. Ministerul Finanţelor primeşte raportări şi de la entităţi din afara ONRC — asociaţii, fundaţii, instituţii: 103.953 de entităţi, cu 905.993 de rânduri. Pentru ele, bilanţurile se servesc normal, dar
/firme/{cui}răspunde 404, fiindcă profil în registru chiar nu există.data.in_registru_onrcspune de care caz e vorba, ca 404-ul de pe profil să nu pară o inconsecvenţă. - Când o firmă a depus de două ori pentru acelaşi an, se serveşte raportarea din setul specializat (cea completă), nu oglinda generică
web. Dacă cele două chiar se contrazic pe cifre — 17 cazuri în toată baza, toate pe 2009 — anul poartă câmpulconflict, cu familia cealaltă şi indicatorii care diferă. Sursa nu dă nici dată de depunere, nici marcaj de rectificare, deci nu putem spune care cifră e cea corectă; o arătăm pe cea mai completă şi semnalăm că a existat un dezacord. - Bilanţurile anuale ale firmei, aşa cum au fost depuse la Ministerul Finanţelor, decodate dintr-un format de stocare compact într-un set de indicatori numiţi (cifră de afaceri, profit, active, datorii, număr de salariaţi etc.).
- Decodarea se face printr-un dicţionar de indicatori pe familie şi an — acelaşi cod „I1…In" înseamnă lucruri diferite în ani şi tipuri de bilanţ diferite. Când o familie nu are dicţionar propriu pentru un an, se cade elegant pe cel mai apropiat an disponibil.
- Cu
?an=ceri un singur an; fără el, primeşti toată seria. Cu?raw=trueprimeşti şi codurile brute, utile pentru verificare. - Vezi şi variantele derivate:
/financiar/eur(convertite la cursul de sfârşit de an) şi/financiar/real(ajustate la inflaţie faţă de un an de bază).
La ce folosește
- Analiză financiară şi scoring de risc pe baza evoluţiei cifrei de afaceri şi a profitului.
- Verificarea dimensiunii unui partener înainte de un contract.
- Serii istorice pentru rapoarte şi vizualizări.
Structura răspunsului
Toate câmpurile de mai jos sunt în data.
CâmpTipDescriere
cui
integer
Codul fiscal.
in_registru_onrc
boolean
Dacă entitatea are şi profil la
/firme/{cui}. false pentru cele care raportează la Finanţe fără să fie în registrul comerţului.
ani[]
object[]
Bilanţurile pe ani, cu indicatorii fiecăruia.
ani[].conflict[].familie
string
Cealaltă raportare depusă pentru acelaşi an. Apare doar când cifrele chiar diferă.
ani[].conflict[].indicatori[]
array
Codurile indicatorilor pe care cele două raportări nu sunt de acord. Lipsa şi zero nu se numără ca dezacord.
Exemple de răspuns
GEThttps://oneapi.ro/api/business/v1/firme/6719278/financiar
{
"data": {
"cui": 6719278,
"in_registru_onrc": true,
"ani": [
{
"an": 2008,
"tip": "SOCIETATI COMERCIALE CARE DEPUN BILANT LUNG, BILANT SCURT SI RAPORTARI ANUALE",
"familie": "web",
"caen": 4711,
"decodat": true,
"indicatori": [
{
"cod": "I1",
"denumire": "ACTIVE IMOBILIZATE - TOTAL",
"valoare": 111431788
}
]
}
]
}
}
GEThttps://oneapi.ro/api/business/v1/firme/5829256/financiar
{
"data": {
"cui": 5829256,
"in_registru_onrc": false,
"ani": [
{
"an": 2008,
"tip": "ONG-uri",
"familie": "webong",
"caen": 0,
"decodat": true,
"indicatori": [
{
"cod": "I1",
"denumire": "A. Active imobilizate - total",
"valoare": 534467
}
]
}
]
}
}
GEThttps://oneapi.ro/api/business/v1/firme/6719278/financiar?an=2023
{
"data": {
"cui": 6719278,
"in_registru_onrc": true,
"ani": [
{
"an": 2023,
"tip": "SOCIETATI COMERCIALE CARE DEPUN BILANT LUNG, BILANT SCURT SI RAPORTARI ANUALE",
"familie": "webblbssl",
"caen": 4711,
"decodat": true,
"indicatori": [
{
"cod": "I1",
"denumire": "ACTIVE IMOBILIZATE - TOTAL",
"valoare": 2377113847
}
]
}
]
}
}
GEThttps://oneapi.ro/api/business/v1/firme/969470/financiar?an=2009
{
"data": {
"cui": 969470,
"in_registru_onrc": true,
"ani": [
{
"an": 2009,
"tip": "SOCIETATI COMERCIALE CARE DEPUN BILANT LUNG, BILANT SCURT SI RAPORTARI ANUALE",
"familie": "webblbssl",
"caen": 3109,
"decodat": true,
"indicatori": [
{
"cod": "I1",
"denumire": "ACTIVE IMOBILIZATE - TOTAL",
"valoare": 15953623
}
],
"conflict": [
{
"familie": "web",
"indicatori": [
"I2",
"I3",
"I10",
"I15",
"I18",
"I20"
]
}
]
}
]
}
}
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 | Firma cu CUI [{cui}] nu a fost găsită. |
| 422 | validare | Un parametru nedeclarat ori o valoare care nu trece validarea (an, raw). Câmpul vinovat e în detalii. |
| 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": "validare",
"mesaj": "Un parametru nedeclarat ori o valoare care nu trece validarea (an, raw). Câmpul vinovat e în detalii.",
"detalii": {
"cui": [
"Valoarea trimisă nu respectă regula parametrului."
]
}
}
}