oneapi
Sign in
Financiar v1 / RiscCredit

Personal remittances

The money sent home by Romanians working abroad and, in the other direction, by foreigners working in Romania — quarterly since 2013, with the top ten partners on each side. In the latest quarter: receipts 1,858.8 million euro, payments 683.3.

The countries do not sum to the total. They are the top ten partners, not a partition: measured across all quarters, they cover between 84.0% and 91.6% of receipts, but only between 52.1% and 80.3% of payments. That is why they are not presented as a summing hierarchy, and identitati.acoperire_tari gives the measured percentage period by period — otherwise someone adds ten figures believing they have the total.

The partner countries differ by direction: Belgium and Austria only on receipts, Nepal and the Republic of Moldova only on payments, eight in common.

The net compensation here is not the compensation of employees in the balance of payments — it is 40.5–48.1% of it on receipts and 32.7–42.8% on payments, because it is net, after taxes and living costs abroad. In the latest quarter: 509.2 against 1,080.

The composition total = transfers + compensation is written out explicitly, because neither the code prefix nor the path in the name gives it correctly, and it is checked on every request on the aggregates and on each country.

GET
https://oneapi.ro/api/financiar/v1/remiteri

Query parameters

NameTypeDescriptionAccepted values
sensoptional string | null Optional: incasari (money into Romania) or plati (money out). Without it, both. incasariplati
taraoptional string | null Optional, two-letter ISO code. The lists differ by direction, and a country requested on the wrong side returns 404. e.g. GBe.g. DEe.g. IT
de_laoptional string | null Optional, YYYY-Tn or YYYY-MM. A month is rounded to the quarter containing it. e.g. 2024-06-15
pana_laoptional string | null Optional, YYYY-Tn or YYYY-MM. e.g. 2024-06-15

How it behaves

  • Money sent by Romanians working abroad and, in the other direction, by foreigners working in Romania — quarterly since 2013-Q1, 66 series. In 2026-Q1: inflows 1,858.8 million euro, outflows 683.3.
  • The countries do not add up to the total. They are the top ten partners on each side, not a partition. Measured across all quarters, they cover between 84.0% and 91.6% of inflows, but only between 52.1% and 80.3% of outflows — up to 47.9% of the payments total is missing. So they are not presented as a summing hierarchy and are not checked by sums — that would report a deviation which is not an error. Instead identitati.acoperire_tari gives the measured percentage, quarter by quarter, so that nobody adds ten figures believing they have the total.
  • The partner countries differ by direction: Belgium and Austria appear only on inflows, Nepal and the Republic of Moldova only on outflows, eight are shared. This is not an omission by the source — those who send money out of Romania do not send it to the countries the money comes from. Requesting a country on the wrong side returns 404, with both lists.
  • The composition total = workers' transfers + net compensation is written out explicitly, because neither the code nor the name gets it right. By code prefix, REMT_ITR would be a child of REMT_IT while REMT_IRS would be its sibling — an incoherent tree. By name, all three are siblings under "Încasări", which puts the total alongside its own components. The sums decided. It is verified on every request, on the aggregates and on each country: 1,166 checks, all of them close.
  • The tolerance of 0.1 is inferred from the deviations, because the column type lies. scale() reports six decimals for all 3,498 values, so the real precision cannot be read from it. The distribution of deviations settles it: −0.1 in 10.5% of cases, 0 in 75.2%, +0.1 in 14.2%, and nothing else. These are figures published to one decimal.
  • Net compensation here is not compensation of employees from the balance of payments. It is 40.5–48.1% of it on inflows and 32.7–42.8% on outflows — in 2026-Q1, 509.2 against 1,080 — because it is net, after taxes and living costs abroad. Without this note the two routes look like they contradict each other twofold.
  • The two series REMT_I and REMT_P are headings with no values, carrying the unit *; they do not appear in the response.

What it is for

  • How much the Romanian diaspora sends home, by country and over time.
  • Who the foreign workers in Romania are, judged by the money sent to their countries.
  • Remittances against foreign direct investment, as sources of foreign currency.

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.filtre array The filters actually applied, as the route understood them — useful when a value was normalised.
data.perioade array Periods for which values exist.
data.pozitii[].cod string Code from the source code list — the key you filter on.
data.pozitii[].sens string incasari or plati.
data.pozitii[].indicator string total, transferuri_lucratori or remunerare_neta.
data.pozitii[].tara null The partner's ISO code, or null for the aggregate.
data.pozitii[].eticheta string Display label for the value — the readable version of the code next to it.
data.pozitii[].unitate string Unit of measure of the values. Read it before plotting or summing them.
data.pozitii[].trimestre_publicate integer How many quarters the source actually published.
data.pozitii[].valori object The values of the series, by period.
data.identitati.compunere.identitate string The identity being checked — which sum must equal which total.
data.identitati.compunere.serii_verificate integer
data.identitati.compunere.verificari integer How many (total, components) pairs could be checked — across all positions, not only those returned by filters.
data.identitati.compunere.verificari_inchise integer How many checks closed within tolerance.
data.identitati.compunere.abatere_maxima string Largest deviation found between the sum of components and the total.
data.identitati.compunere.toleranta string Inferred from the distribution of deviations, not from the column type.
data.identitati.compunere.nota string A note on how to read the data — a pitfall, a convention or a limit of the source.
data.identitati.acoperire_tari.nota string A note on how to read the data — a pitfall, a convention or a limit of the source.
data.identitati.acoperire_tari.pe_sens object The share of the total covered by the ten countries, per quarter, with the minimum and maximum. Not an identity: it is the measure of what is missing.
data.identitati.acoperire_tari.pe_sens.incasari.tari array Countries covered by the response.
data.identitati.acoperire_tari.pe_sens.incasari.procent_pe_trimestru object
data.identitati.acoperire_tari.pe_sens.incasari.minim string Smallest value in the interval.
data.identitati.acoperire_tari.pe_sens.incasari.maxim string Largest value in the interval.
data.identitati.acoperire_tari.pe_sens.plati.tari array Countries covered by the response.
data.identitati.acoperire_tari.pe_sens.plati.procent_pe_trimestru object
data.identitati.acoperire_tari.pe_sens.plati.minim string Smallest value in the interval.
data.identitati.acoperire_tari.pe_sens.plati.maxim string Largest value in the interval.
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.trimestre integer Quarters for which values exist.
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.tari.incasari array
meta.tari.plati array
meta.nota_tari string A note on how to read the response: a caveat, a convention or a limit of the source.
meta.nota_compunere string A note on how to read the response: a caveat, a convention or a limit of the source.
meta.nota_toleranta string Where the tolerance comes from and why it is not zero.
meta.nota_balanta 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 data is null and this says why. No remittance values in the database. The interval falls outside the coverage (2013-Q1 → present).
meta.fara_date_cod 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/remiteri
{
    "data": {
        "de_la": "2013-T1",
        "pana_la": "2026-T2",
        "unitate": "milioane EUR",
        "filtre": [],
        "perioade": [
            "2013-T1",
            "2013-T2",
            "2013-T3",
            "2013-T4",
            "2014-T1",
            "2014-T2",
            "2014-T3",
            "2014-T4",
            "2015-T1",
            "2015-T2",
            "2015-T3",
            "2015-T4",
            "2016-T1",
            "2016-T2",
            "2016-T3",
            "2016-T4",
            "2017-T1",
            "2017-T2",
            "2017-T3",
            "2017-T4",
            "2018-T1",
            "2018-T2",
            "2018-T3",
            "2018-T4",
            "2019-T1",
            "2019-T2",
            "2019-T3",
            "2019-T4",
            "2020-T1",
            "2020-T2",
            "2020-T3",
            "2020-T4",
            "2021-T1",
            "2021-T2",
            "2021-T3",
            "2021-T4",
            "2022-T1",
            "2022-T2",
            "2022-T3",
            "2022-T4",
            "2023-T1",
            "2023-T2",
            "2023-T3",
            "2023-T4",
            "2024-T1",
            "2024-T2",
            "2024-T3",
            "2024-T4",
            "2025-T1",
            "2025-T2",
            "2025-T3",
            "2025-T4",
            "2026-T1",
            "2026-T2"
        ],
        "pozitii": [
            {
                "cod": "REMT_IT",
                "sens": "incasari",
                "indicator": "total",
                "tara": null,
                "eticheta": "Total remiteri personale",
                "unitate": "milioane EUR",
                "trimestre_publicate": 54,
                "valori": {
                    "2013-T1": "626.9",
                    "2013-T2": "662.4",
                    "2013-T3": "756.9",
                    "2013-T4": "672.4",
                    "2014-T1": "674.2",
                    "2014-T2": "681.9",
                    "2014-T3": "695.4",
                    "2014-T4": "733.4",
                    "2015-T1": "722.8",
                    "2015-T2": "899.5",
                    "2015-T3": "828.4",
                    "2015-T4": "868.0",
                    "2016-T1": "770.9",
                    "2016-T2": "923.0",
                    "2016-T3": "1076.1",
                    "2016-T4": "914.1",
                    "2017-T1": "783.3",
                    "2017-T2": "1117.8",
                    "2017-T3": "1059.1",
                    "2017-T4": "1104.0",
                    "2018-T1": "911.4",
                    "2018-T2": "1114.8",
                    "2018-T3": "1118.1",
                    "2018-T4": "1079.1",
                    "2019-T1": "1088.5",
                    "2019-T2": "1342.8",
                    "2019-T3": "1384.3",
                    "2019-T4": "1463.1",
                    "2020-T1": "1084.5",
                    "2020-T2": "1022.9",
                    "2020-T3": "1401.9",
                    "2020-T4": "1359.8",
                    "2021-T1": "1280.6",
                    "2021-T2": "1504.1",
                    "2021-T3": "1550.0",
                    "2021-T4": "1287.5",
                    "2022-T1": "1368.4",
                    "2022-T2": "1560.8",
                    "2022-T3": "1707.9",
                    "2022-T4": "1521.7",
                    "2023-T1": "1416.2",
                    "2023-T2": "1666.8",
                    "2023-T3": "1632.3",
                    "2023-T4": "1951.2",
                    "2024-T1": "1555.5",
                    "2024-T2": "1741.9",
                    "2024-T3": "1804.0",
                    "2024-T4": "1659.7",
                    "2025-T1": "1570.4",
                    "2025-T2": "1767.8",
                    "2025-T3": "1909.3",
                    "2025-T4": "1786.0",
                    "2026-T1": "1969.0",
                    "2026-T2": "2281.6"
                }
            }
        ],
        "identitati": {
            "compunere": {
                "identitate": "total = transferuri ale lucrătorilor + remunerarea netă a salariaţilor",
                "serii_verificate": 22,
                "verificari": 1188,
                "verificari_inchise": 1188,
                "abatere_maxima": "0.1",
                "toleranta": "0.1",
                "nota": "Compunerea e scrisă explicit: nici prefixul codului, nici calea din denumire nu o dau corect."
            },
            "acoperire_tari": {
                "nota": "Ţările sunt primii parteneri, nu o partiţie a totalului. Suma lor e mai mică decât totalul, iar pe plăţi diferenţa trece de 45%.",
                "pe_sens": {
                    "incasari": {
                        "tari": [
                            "GB",
                            "DE",
                            "IT",
                            "ES",
                            "US",
                            "FR",
                            "NL",
                            "BE",
                            "AT",
                            "IE"
                        ],
                        "procent_pe_trimestru": {
                            "2013-T1": "87.1",
                            "2013-T2": "87.6",
                            "2013-T3": "88.8",
                            "2013-T4": "88.6",
                            "2014-T1": "89.1",
                            "2014-T2": "88.2",
                            "2014-T3": "88.3",
                            "2014-T4": "88.3",
                            "2015-T1": "86.9",
                            "2015-T2": "90.7",
                            "2015-T3": "91.1",
                            "2015-T4": "90.2",
                            "2016-T1": "86.8",
                            "2016-T2": "87.9",
                            "2016-T3": "88.7",
                            "2016-T4": "87.5",
                            "2017-T1": "84.9",
                            "2017-T2": "86.8",
                            "2017-T3": "87.0",
                            "2017-T4": "88.7",
                            "2018-T1": "88.2",
                            "2018-T2": "89.1",
                            "2018-T3": "90.1",
                            "2018-T4": "89.1",
                            "2019-T1": "88.6",
                            "2019-T2": "89.0",
                            "2019-T3": "89.7",
                            "2019-T4": "88.8",
                            "2020-T1": "86.9",
                            "2020-T2": "90.0",
                            "2020-T3": "89.0",
                            "2020-T4": "88.8",
                            "2021-T1": "89.1",
                            "2021-T2": "88.4",
                            "2021-T3": "89.6",
                            "2021-T4": "86.5",
                            "2022-T1": "91.6",
                            "2022-T2": "90.1",
                            "2022-T3": "89.4",
                            "2022-T4": "90.1",
                            "2023-T1": "91.2",
                            "2023-T2": "91.2",
                            "2023-T3": "87.1",
                            "2023-T4": "88.7",
                            "2024-T1": "88.0",
                            "2024-T2": "88.3",
                            "2024-T3": "87.5",
                            "2024-T4": "87.8",
                            "2025-T1": "88.6",
                            "2025-T2": "86.4",
                            "2025-T3": "86.3",
                            "2025-T4": "88.0",
                            "2026-T1": "84.6",
                            "2026-T2": "84.4"
                        },
                        "minim": "84.4",
                        "maxim": "91.6"
                    },
                    "plati": {
                        "tari": [
                            "GB",
                            "DE",
                            "IT",
                            "NP",
                            "ES",
                            "NL",
                            "FR",
                            "IE",
                            "MD",
                            "US"
                        ],
                        "procent_pe_trimestru": {
                            "2013-T1": "71.2",
                            "2013-T2": "74.1",
                            "2013-T3": "74.8",
                            "2013-T4": "76.8",
                            "2014-T1": "77.4",
                            "2014-T2": "77.1",
                            "2014-T3": "77.4",
                            "2014-T4": "77.8",
                            "2015-T1": "77.1",
                            "2015-T2": "78.2",
                            "2015-T3": "78.2",
                            "2015-T4": "79.4",
                            "2016-T1": "65.8",
                            "2016-T2": "62.2",
                            "2016-T3": "62.7",
                            "2016-T4": "64.6",
                            "2017-T1": "62.4",
                            "2017-T2": "60.9",
                            "2017-T3": "61.0",
                            "2017-T4": "62.0",
                            "2018-T1": "53.3",
                            "2018-T2": "62.7",
                            "2018-T3": "62.7",
                            "2018-T4": "62.9",
                            "2019-T1": "63.7",
                            "2019-T2": "62.6",
                            "2019-T3": "62.8",
                            "2019-T4": "64.0",
                            "2020-T1": "62.6",
                            "2020-T2": "60.3",
                            "2020-T3": "68.7",
                            "2020-T4": "67.1",
                            "2021-T1": "67.9",
                            "2021-T2": "68.9",
                            "2021-T3": "70.6",
                            "2021-T4": "63.4",
                            "2022-T1": "72.7",
                            "2022-T2": "70.3",
                            "2022-T3": "75.9",
                            "2022-T4": "70.1",
                            "2023-T1": "74.3",
                            "2023-T2": "75.9",
                            "2023-T3": "75.2",
                            "2023-T4": "80.3",
                            "2024-T1": "74.7",
                            "2024-T2": "77.3",
                            "2024-T3": "77.3",
                            "2024-T4": "79.3",
                            "2025-T1": "66.3",
                            "2025-T2": "65.5",
                            "2025-T3": "61.3",
                            "2025-T4": "61.0",
                            "2026-T1": "68.7",
                            "2026-T2": "70.1"
                        },
                        "minim": "53.3",
                        "maxim": "80.3"
                    }
                }
            }
        }
    },
    "meta": {
        "sursa": "BNR — remiteri personale, serii trimestriale.",
        "acoperire": {
            "de_la": "2013-T1",
            "pana_la": "2026-T2"
        },
        "trimestre": 54,
        "pozitii_totale": 66,
        "pozitii_returnate": 66,
        "tari": {
            "incasari": [
                "GB",
                "DE",
                "IT",
                "ES",
                "US",
                "FR",
                "NL",
                "BE",
                "AT",
                "IE"
            ],
            "plati": [
                "GB",
                "DE",
                "IT",
                "NP",
                "ES",
                "NL",
                "FR",
                "IE",
                "MD",
                "US"
            ]
        },
        "nota_tari": "Ţările sunt primii zece parteneri pe fiecare sens, nu o partiţie: suma lor e sub total, iar pe plăţi lipseşte până la 47,9%. `identitati.acoperire_tari` dă procentul măsurat. Listele diferă între sensuri — Belgia şi Austria doar la încasări, Nepal şi Republica Moldova doar la plăţi.",
        "nota_compunere": "1188 din 1188 verificări se închid, pe 22 serii. Compunerea e scrisă explicit fiindcă nici prefixul codului, nici calea din denumire nu o dau corect.",
        "nota_toleranta": "Toleranţa de ±0.1 e dedusă din distribuţia abaterilor, nu din tipul coloanei: acesta raportează şase zecimale pentru toate valorile, dar abaterile sunt exclusiv −0,1, 0 şi +0,1, deci cifrele sunt publicate cu o zecimală.",
        "nota_balanta": "Remunerarea netă de aici nu e remunerarea salariaţilor din contul curent al balanţei de plăţi: e 40,5–48,1% din ea pe încasări şi 32,7–42,8% pe plăţi, fiind netă după taxe şi cheltuielile de trai în străinătate.",
        "nota_null": "`null` într-un trimestru înseamnă că poziţia n-a fost publicată atunci, nu zero."
    }
}

Error codes

CodeSlugWhen it occurs
401neautentificatToken missing, invalid, expired or revoked.
403feature_indisponibilThe current plan does not include the feature the route depends on.
422validareinterval_prea_lung beyond 60 quarters, a direction outside the list, or a country written as anything other than two letters. tara_necunoscuta — the country is not among the partners published for that direction; the response carries both lists.
429cota_depasitaThe 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": "interval_prea_lung beyond 60 quarters, a direction outside the list, or a country written as anything other than two letters. tara_necunoscuta — the country is not among the partners published for that direction; the response carries both lists.",
        "detalii": {
            "sens": [
                "The value sent does not satisfy the parameter rule."
            ]
        }
    }
}