STRUCT-CURRENCY-VALUE - Currency columns take codes from the EBA currency list (B_01.02, B_02.01, B_05.01)
A currency cell holds a value outside the EBA currency list (ei1559, 166 codes); canonical codes look like eba_CU:EUR.
- Layer
- STRUCT
- Severity
- blocking
- Templates
- B_01.02, B_02.01, B_05.01
- Columns
- c0040, c0090, c0100
- Taxonomy version
- eba-4.0-errata5
- Status
- founder-approved
Reviewed at gate 1 (founder) on
Content last changed
Official control text (EBA, verbatim)
Extensible main property and explicit key dimension must only be reported with one of the restricted value of a hierarchy
Source: EBA technical check 503 (sheet "DPM Technical Checks", category "DPM Technical Checks" in the official overview of the RoI technical checks). The RoI Builder runs it as structural check STRUCT-CURRENCY-VALUE.
What this rule checks
The check covers the currency-typed columns. Measured in eba-4.0-errata5, these are 3 columns, all sharing the same 166-code dictionary ei1559: c0100 (Currency) in B_01.02; c0040 (Currency of the amount reported in RT.02.01.0050) in B_02.01; c0090 (Currency of the amount reported in RT.05.01.0070) in B_05.01.
Every non-empty cell must be one of the allowed currency codes - all codes live in the eba_CU namespace, encoding the ISO 4217 domain (e.g. eba_CU:EUR for the euro). The comparison is exact against the verbatim codes: a plain ISO code (EUR), a symbol or a currency name does not match. Measured quirk: the withdrawn eba_CU:HRK (Croatian kuna) is NOT in the taxonomy list - the taxonomy set is the source of truth here.
An empty cell is skipped here; whether the currency may stay empty next to a filled amount is W2 business (warnings).
This is a structural check (STRUCT layer, severity: blocking). If it fails, the package is technically rejected on receipt (feedbackMain = REJECTED). The structural layer is the only layer that blocks a filing.
Most common causes
- A plain ISO code without the prefix: EUR instead of eba_CU:EUR.
- A currency symbol or name typed as text.
- eba_CU:HRK carried over from an old sheet - the withdrawn code is not in the 166-code list.
How to fix it, step by step
- Open the flagged template (B_01.02, B_02.01 or B_05.01) and find the row - the finding gives the row number, the key values and the offending value.
- Enter the currency as the prefixed code, e.g. eba_CU:EUR; the finding shows sample allowed codes and the list size (166).
- Keep the amount itself in the amount column as a plain number - the currency cell holds only the code.
- Run the validation again and confirm the finding is gone.
Example: fails vs passes
Fails - a plain ISO code; the finding points at column c0100 of this B_01.02 row:
| c0010 (LEI of the entity) | c0100 (Currency) |
|---|---|
| 549300Q5EH2NP82EPE32 | EUR |
Passes - the prefixed EBA code:
| c0010 (LEI of the entity) | c0100 (Currency) |
|---|---|
| 549300Q5EH2NP82EPE32 | eba_CU:EUR |
Also fails (edge case) - eba_CU:HRK: it looks like a valid prefixed code, but the withdrawn currency is not in the 166-code list.
Related rules
- STRUCT-ENUM-VALUE - the same EBA check 503 on the general closed-list columns.
- STRUCT-COUNTRY-VALUE - the same EBA check 503 on the country columns.
- STRUCT-DECIMAL-FORMAT - the numeric format of the amounts these currency columns describe.
Fix it in the RoI Builder - it points at the exact row and cell and re-checks as you type.
This page describes what the software does. It is neither legal advice nor an interpretation of any regulation, and using the product does not by itself make any submission complete, correct or acceptable to any authority. The responsibility for what is filed stays with the entity that files it.