Financiar v1 / RiscCredit
Loans and deposits — the old framework
The loans and deposits picture under the methodological framework closed in 2008, with the pre-crisis arrears. It does not join the new series: the definitions differ, so they must not be stitched together.
GET
https://oneapi.ro/api/financiar/v1/credite-depozite/arhiva
Query parameters
NameTypeDescriptionAccepted values
blocoptional
string | null
Optional:
credite or depozite.
creditedepozite
monedaoptional
string | null
Optional:
lei or valuta. The old framework does not break foreign currency down by currency.
leivaluta
de_laoptional
string | null
Optional,
YYYY-MM, within 2007-01 → 2008-09.
e.g. 2024-06-15
pana_laoptional
string | null
Optional,
YYYY-MM.
e.g. 2008-09
How it behaves
- Credit institutions' loans and deposits under the old statistical framework, abandoned in October 2008. Twenty-one months, 2007-01 → 2008-09, in millions of lei, 52 positions cut by currency, sector, residency, purpose and status.
- The figures are NOT comparable with
/credite-depozite, although they cover exactly the same months. Measured: total lending differs by 31.8%, and "non-residents" by 98.8% — 0.44 billion here against 38 in the new framework, where interbank exposures are included. The cuts that mean the same thing do agree: household lending matches in 18 of 21 months, within 1.3%. Anyone splicing the two series together gets a jump that never happened. - It carries a dimension nothing else in the module has: CURRENT versus OVERDUE loans. Arrears in lei rise from 0.69% of the stock in January 2007 to 1.82% in September 2008, where the series stops; in foreign currency, from 0.20% to 0.55%. Twenty-one months of month-by-month deterioration, right at the entry into the crisis, that cannot be reconstructed from anything else.
- A coding trap, resolved in the response: the same letter means different things in the two blocks. Among loans
Ris "overdue" andZis "residents"; among depositsRis "residents" andZis "non-residents". The positions are declared one by one and the response carries the meaning in plain words — deriving it from the suffix would read arrears as residents. - Fifteen of sixteen identities close across all 21 months. One does not: for deposits in lei, residents plus non-residents drifts by up to 0.5 million in 13 months. It is small — 0.0007% — but systematic, and only on the lei side; in foreign currency it closes exactly. It is reported, not hidden.
- The purpose breakdown of household credit is not a partition, and is not checked as one. Consumption plus housing plus other purposes is always smaller than the total, and the gap grows: 397 million in June 2007, 705 in September 2008, in lei. The source does not name the remainder, so the route does not invent one: it sits in
defalcari_incomplete, with the difference in plain sight, outside the verified identities. - The route sits beside
/datorie-externa/arhivaand/pozitie-investitionala/arhiva— superseded statistical frameworks, kept apart from the current series.
What it is for
- The month-by-month arrears ratio going into the 2008 crisis.
- The structure of lending before the statistical framework changed.
- Reconstructing a report prepared under the methodology of the time.
Response structure
FieldTypeDescription
data.de_la
string
Start of the interval the response covers.
data.pana_la
string
End of the interval the response covers, inclusive.
data.unitate
string
The unit of the values. Read it before plotting or adding them up.
data.cadru
string
data.filtre
array
The filters actually applied, as the route understood them — useful when a value was normalised.
data.luni
array
Number of months covered.
data.pozitii[].pozitie
string
Position of the item in the response order.
data.pozitii[].cod
string
Code from the source code list — the key you filter on.
data.pozitii[].bloc
string
data.pozitii[].moneda
string
Currency the values are expressed in.
data.pozitii[].eticheta
string
The position's meaning in plain words — not derivable from the code letters, which change meaning between blocks.
data.pozitii[].unitate
string
Unit of measure of the values. Read it before plotting or summing them.
data.pozitii[].luni_publicate
integer
How many months the source actually published.
data.pozitii[].valori
object
The values of the series, by period.
data.identitati.nota
string
A note on how to read the data — a pitfall, a convention or a limit of the source.
data.identitati.identitati_declarate
integer
data.identitati.identitati
integer
The identity checks run on the values in the response.
data.identitati.identitati_inchise
integer
How many identities closed within tolerance.
data.identitati.identitati_neverificate
integer
How many identities could not be checked, for lack of data on one side.
data.identitati.verificari
integer
How many combinations were checked.
data.identitati.verificari_inchise
integer
How many checks closed within tolerance.
data.identitati.detalii[]
array
The sixteen declared identities, with the
(k+1) × 0.05 tolerance and each one's maximum deviation.
data.identitati.detalii[].identitate
string
The identity being checked — which sum must equal which total.
data.identitati.detalii[].toleranta
string
How much deviation is accepted before the identity counts as unclosed — the source rounding, not an error.
data.identitati.detalii[].luni_verificate
integer
How many months entered the check.
data.identitati.detalii[].luni_inchise
integer
How many months closed within tolerance.
data.identitati.detalii[].abatere_maxima
string
Largest deviation found between the sum of components and the total.
data.identitati.neverificate
array
The declared identities the requested window could not check, each with its reason:
serie_inexistenta (the source never publishes that component), nepublicata_in_fereastra (it exists, but not in this interval) or fara_perioada_completa (the components exist but never in the same period). The verified count changes with the window, and this says why.
data.defalcari_incomplete[]
array
The breakdowns that do not add up to their total, with the undistributed remainder for each month.
data.defalcari_incomplete[].total
string
data.defalcari_incomplete[].eticheta
string
Display label for the value — the readable version of the code next to it.
data.defalcari_incomplete[].componente
array
The components that add up to the total.
data.defalcari_incomplete[].nota
string
A note on how to read the data — a pitfall, a convention or a limit of the source.
data.defalcari_incomplete[].luni
object
Number of months covered.
meta.sursa
string
The official source the data comes from, with its licence where one is required.
meta.acoperire.de_la
string
The first period we have data for.
meta.acoperire.pana_la
string
The last period we have data for.
meta.luni
integer
Number of months covered.
meta.pozitii_totale
integer
How many positions match the filters, beyond the current page.
meta.pozitii_returnate
integer
How many positions this response actually returned.
meta.nota_incomparabil
string
A note on how to read the response: a caveat, a convention or a limit of the source.
meta.nota_restante
string
A note on how to read the response: a caveat, a convention or a limit of the source.
meta.nota_coduri
string
A note on how to read the response: a caveat, a convention or a limit of the source.
meta.nota_identitati
string
How to read the identity checks in the response.
meta.nota_defalcari
string
A note on how to read the response: a caveat, a convention or a limit of the source.
meta.nota_null
string
Why some values are missing: the source did not publish, did not compute, or suppressed them.
meta.fara_date
string
data is null and this says why. No values in the database. The interval falls outside the coverage; the framework closed in September 2008, and the response points to /credite-depozite.
meta.fara_date_cod
string
The short, STABLE word for the reason, for clients that branch on it in code:
fara_date is prose and may be rephrased, this is not.
Response examples
GEThttps://oneapi.ro/api/financiar/v1/credite-depozite/arhiva
{
"data": {
"de_la": "2007-01",
"pana_la": "2008-09",
"unitate": "milioane lei",
"cadru": "vechi (înlocuit în octombrie 2008)",
"filtre": [],
"luni": [
"2007-01",
"2007-02",
"2007-03",
"2007-04",
"2007-05",
"2007-06",
"2007-07",
"2007-08",
"2007-09",
"2007-10",
"2007-11",
"2007-12",
"2008-01",
"2008-02",
"2008-03",
"2008-04",
"2008-05",
"2008-06",
"2008-07",
"2008-08",
"2008-09"
],
"pozitii": [
{
"pozitie": "CRL",
"cod": "CFINROL_CRL",
"bloc": "credite",
"moneda": "lei",
"eticheta": "total",
"unitate": "mil.lei",
"luni_publicate": 21,
"valori": {
"2007-01": "46828.8",
"2007-02": "48818.4",
"2007-03": "50503.4",
"2007-04": "52558.5",
"2007-05": "54825.7",
"2007-06": "57359.7",
"2007-07": "58913.5",
"2007-08": "60406.8",
"2007-09": "62723.1",
"2007-10": "64780.9",
"2007-11": "66334.5",
"2007-12": "67800.2",
"2008-01": "69412.4",
"2008-02": "71492.7",
"2008-03": "74215.9",
"2008-04": "76655.5",
"2008-05": "78511.6",
"2008-06": "80137.2",
"2008-07": "82117.8",
"2008-08": "83660.6",
"2008-09": "85457.6"
}
}
],
"identitati": {
"nota": "Identităţile sunt declarate, nu deduse din coduri: în această clasă aceeaşi literă înseamnă altceva în cele două blocuri — la credite `R` e „restante” şi `Z` e „rezidenţi”, la depozite `R` e „rezidenţi” şi `Z` e „nerezidenţi”.",
"identitati_declarate": 16,
"identitati": 16,
"identitati_inchise": 15,
"identitati_neverificate": 0,
"verificari": 336,
"verificari_inchise": 323,
"detalii": [
{
"identitate": "credite în lei: total = rezidenţi + nerezidenţi",
"toleranta": "0.1500",
"luni_verificate": 21,
"luni_inchise": 21,
"abatere_maxima": "0.1"
}
],
"neverificate": []
},
"defalcari_incomplete": [
{
"total": "CRLP",
"eticheta": "populaţie",
"componente": [
"CRLPC",
"CRLPL",
"CRLPX"
],
"nota": "Componentele nu însumează totalul, şi nu se verifică aşa: sursa nu numeşte restul. Golul creşte în timp.",
"luni": {
"2007-06": {
"total": "27883.8",
"suma_componentelor": "27486.8",
"nedefalcat": "397.0"
},
"2007-07": {
"total": "28888.4",
"suma_componentelor": "28472.8",
"nedefalcat": "415.6"
},
"2007-08": {
"total": "30024.7",
"suma_componentelor": "29595.3",
"nedefalcat": "429.4"
},
"2007-09": {
"total": "31011.5",
"suma_componentelor": "30567.6",
"nedefalcat": "443.9"
},
"2007-10": {
"total": "32080.1",
"suma_componentelor": "31617.3",
"nedefalcat": "462.8"
},
"2007-11": {
"total": "32924.0",
"suma_componentelor": "32442.0",
"nedefalcat": "482.0"
},
"2007-12": {
"total": "33573.7",
"suma_componentelor": "33074.3",
"nedefalcat": "499.4"
},
"2008-01": {
"total": "33956.4",
"suma_componentelor": "33435.4",
"nedefalcat": "521.0"
},
"2008-02": {
"total": "34781.6",
"suma_componentelor": "34229.9",
"nedefalcat": "551.7"
},
"2008-03": {
"total": "35708.4",
"suma_componentelor": "35117.4",
"nedefalcat": "591.0"
},
"2008-04": {
"total": "36605.3",
"suma_componentelor": "35982.2",
"nedefalcat": "623.1"
},
"2008-05": {
"total": "37360.5",
"suma_componentelor": "36715.6",
"nedefalcat": "644.9"
},
"2008-06": {
"total": "38038.8",
"suma_componentelor": "37376.0",
"nedefalcat": "662.8"
},
"2008-07": {
"total": "39291.7",
"suma_componentelor": "38609.6",
"nedefalcat": "682.1"
},
"2008-08": {
"total": "40242.1",
"suma_componentelor": "39549.3",
"nedefalcat": "692.8"
},
"2008-09": {
"total": "41016.8",
"suma_componentelor": "40311.7",
"nedefalcat": "705.1"
}
}
}
]
},
"meta": {
"sursa": "BNR — credite şi depozite în cadrul statistic vechi, înlocuit în octombrie 2008 (clasa 574).",
"acoperire": {
"de_la": "2007-01",
"pana_la": "2008-09"
},
"luni": 21,
"pozitii_totale": 52,
"pozitii_returnate": 52,
"nota_incomparabil": "Cifrele NU sunt comparabile cu /financiar/v1/credite-depozite, care acoperă aceleaşi luni în cadrul nou. Măsurat: totalul creditelor diferă cu 31,8%, iar „nerezidenţi” cu 98,8% — acolo intră şi expunerile interbancare. Tăieturile care înseamnă acelaşi lucru se potrivesc: creditele către populaţie coincid în 18 din 21 de luni, sub 1,3% abatere.",
"nota_restante": "Defalcarea curente/restante nu există nicăieri altundeva în modul. Restanţele în lei urcă de la 0,69% din stoc în ianuarie 2007 la 1,82% în septembrie 2008, când seria se opreşte.",
"nota_coduri": "Aceeaşi literă înseamnă altceva în cele două blocuri: la credite `R` e „restante” şi `Z` e „rezidenţi”, la depozite `R` e „rezidenţi” şi `Z` e „nerezidenţi”. Poziţiile sunt declarate una câte una, nu deduse din sufix.",
"nota_identitati": "15 din 16 identităţi se închid pe toate lunile lor, pe 336 verificări.",
"nota_defalcari": "Creditul către populaţie pe scopuri NU însumează totalul; golul creşte de la 397 milioane în iunie 2007 la 705 în septembrie 2008, pe lei. Stă în `defalcari_incomplete`, cu diferenţa la vedere, nu între identităţi.",
"nota_null": "`null` într-o lună înseamnă că poziţia n-a fost publicată atunci, nu zero."
}
}
GEThttps://oneapi.ro/api/financiar/v1/credite-depozite/arhiva?bloc=depozite&moneda=valuta
{
"data": {
"de_la": "2007-01",
"pana_la": "2008-09",
"unitate": "milioane lei",
"cadru": "vechi (înlocuit în octombrie 2008)",
"filtre": {
"bloc": "depozite",
"moneda": "valuta"
},
"luni": [
"2007-01",
"2007-02",
"2007-03",
"2007-04",
"2007-05",
"2007-06",
"2007-07",
"2007-08",
"2007-09",
"2007-10",
"2007-11",
"2007-12",
"2008-01",
"2008-02",
"2008-03",
"2008-04",
"2008-05",
"2008-06",
"2008-07",
"2008-08",
"2008-09"
],
"pozitii": [
{
"pozitie": "DDV",
"cod": "CFINROL_DDV",
"bloc": "depozite",
"moneda": "valuta",
"eticheta": "total (disponibilităţi, depozite la termen şi repo)",
"unitate": "mil.lei",
"luni_publicate": 21,
"valori": {
"2007-01": "32416.8",
"2007-02": "33618.5",
"2007-03": "34388.1",
"2007-04": "33853.1",
"2007-05": "34368.9",
"2007-06": "33841.8",
"2007-07": "34836.1",
"2007-08": "36806.8",
"2007-09": "38216.2",
"2007-10": "40035.0",
"2007-11": "42881.3",
"2007-12": "46742.5",
"2008-01": "48770.1",
"2008-02": "50265.6",
"2008-03": "50057.5",
"2008-04": "54393.6",
"2008-05": "52620.5",
"2008-06": "53645.6",
"2008-07": "54634.9",
"2008-08": "55143.3",
"2008-09": "57235.5"
}
}
],
"identitati": {
"nota": "Identităţile sunt declarate, nu deduse din coduri: în această clasă aceeaşi literă înseamnă altceva în cele două blocuri — la credite `R` e „restante” şi `Z` e „rezidenţi”, la depozite `R` e „rezidenţi” şi `Z` e „nerezidenţi”.",
"identitati_declarate": 16,
"identitati": 16,
"identitati_inchise": 15,
"identitati_neverificate": 0,
"verificari": 336,
"verificari_inchise": 323,
"detalii": [
{
"identitate": "credite în lei: total = rezidenţi + nerezidenţi",
"toleranta": "0.1500",
"luni_verificate": 21,
"luni_inchise": 21,
"abatere_maxima": "0.1"
}
],
"neverificate": []
},
"defalcari_incomplete": [
{
"total": "CRLP",
"eticheta": "populaţie",
"componente": [
"CRLPC",
"CRLPL",
"CRLPX"
],
"nota": "Componentele nu însumează totalul, şi nu se verifică aşa: sursa nu numeşte restul. Golul creşte în timp.",
"luni": {
"2007-06": {
"total": "27883.8",
"suma_componentelor": "27486.8",
"nedefalcat": "397.0"
},
"2007-07": {
"total": "28888.4",
"suma_componentelor": "28472.8",
"nedefalcat": "415.6"
},
"2007-08": {
"total": "30024.7",
"suma_componentelor": "29595.3",
"nedefalcat": "429.4"
},
"2007-09": {
"total": "31011.5",
"suma_componentelor": "30567.6",
"nedefalcat": "443.9"
},
"2007-10": {
"total": "32080.1",
"suma_componentelor": "31617.3",
"nedefalcat": "462.8"
},
"2007-11": {
"total": "32924.0",
"suma_componentelor": "32442.0",
"nedefalcat": "482.0"
},
"2007-12": {
"total": "33573.7",
"suma_componentelor": "33074.3",
"nedefalcat": "499.4"
},
"2008-01": {
"total": "33956.4",
"suma_componentelor": "33435.4",
"nedefalcat": "521.0"
},
"2008-02": {
"total": "34781.6",
"suma_componentelor": "34229.9",
"nedefalcat": "551.7"
},
"2008-03": {
"total": "35708.4",
"suma_componentelor": "35117.4",
"nedefalcat": "591.0"
},
"2008-04": {
"total": "36605.3",
"suma_componentelor": "35982.2",
"nedefalcat": "623.1"
},
"2008-05": {
"total": "37360.5",
"suma_componentelor": "36715.6",
"nedefalcat": "644.9"
},
"2008-06": {
"total": "38038.8",
"suma_componentelor": "37376.0",
"nedefalcat": "662.8"
},
"2008-07": {
"total": "39291.7",
"suma_componentelor": "38609.6",
"nedefalcat": "682.1"
},
"2008-08": {
"total": "40242.1",
"suma_componentelor": "39549.3",
"nedefalcat": "692.8"
},
"2008-09": {
"total": "41016.8",
"suma_componentelor": "40311.7",
"nedefalcat": "705.1"
}
}
}
]
},
"meta": {
"sursa": "BNR — credite şi depozite în cadrul statistic vechi, înlocuit în octombrie 2008 (clasa 574).",
"acoperire": {
"de_la": "2007-01",
"pana_la": "2008-09"
},
"luni": 21,
"pozitii_totale": 52,
"pozitii_returnate": 15,
"nota_incomparabil": "Cifrele NU sunt comparabile cu /financiar/v1/credite-depozite, care acoperă aceleaşi luni în cadrul nou. Măsurat: totalul creditelor diferă cu 31,8%, iar „nerezidenţi” cu 98,8% — acolo intră şi expunerile interbancare. Tăieturile care înseamnă acelaşi lucru se potrivesc: creditele către populaţie coincid în 18 din 21 de luni, sub 1,3% abatere.",
"nota_restante": "Defalcarea curente/restante nu există nicăieri altundeva în modul. Restanţele în lei urcă de la 0,69% din stoc în ianuarie 2007 la 1,82% în septembrie 2008, când seria se opreşte.",
"nota_coduri": "Aceeaşi literă înseamnă altceva în cele două blocuri: la credite `R` e „restante” şi `Z` e „rezidenţi”, la depozite `R` e „rezidenţi” şi `Z` e „nerezidenţi”. Poziţiile sunt declarate una câte una, nu deduse din sufix.",
"nota_identitati": "15 din 16 identităţi se închid pe toate lunile lor, pe 336 verificări.",
"nota_defalcari": "Creditul către populaţie pe scopuri NU însumează totalul; golul creşte de la 397 milioane în iunie 2007 la 705 în septembrie 2008, pe lei. Stă în `defalcari_incomplete`, cu diferenţa la vedere, nu între identităţi.",
"nota_null": "`null` într-o lună înseamnă că poziţia n-a fost publicată atunci, nu zero."
}
}
GEThttps://oneapi.ro/api/financiar/v1/credite-depozite/arhiva?de_la=2024-06-15
{
"data": null,
"meta": {
"de_la": "2024-06",
"pana_la": "2008-09",
"acoperire": {
"de_la": "2007-01",
"pana_la": "2008-09"
},
"fara_date": "Intervalul cerut e în întregime în afara acoperirii (2007-01 → 2008-09). Cadrul s-a închis în septembrie 2008; pentru lunile de după, /financiar/v1/credite-depozite.",
"fara_date_cod": "in_afara_acoperirii"
}
}
Error codes
| Code | Slug | When it occurs |
|---|---|---|
| 401 | neautentificat | Token missing, invalid, expired or revoked. |
| 403 | feature_indisponibil | The current plan does not include the feature the route depends on. |
| 422 | validare | A block or currency outside the list, a period written other than YYYY-MM, or interval_prea_lung beyond 36 months. |
| 429 | cota_depasita | The plan's monthly quota has been exceeded (see Retry-After). |
All errors share the same shape. eroare.cod is stable and is the value you should branch on in code — not the text in mesaj, which may change.
{
"eroare": {
"cod": "validare",
"mesaj": "A block or currency outside the list, a period written other than YYYY-MM, or interval_prea_lung beyond 36 months.",
"detalii": {
"bloc": [
"The value sent does not satisfy the parameter rule."
]
}
}
}