Concepts
Regulatory reporting
Reporting is a mapping layer with a swappable schema — and it refuses to lie about which schema it used.
Written from docs/adr/0018, docs/adr/0034, docs/regulatory-reporting-workbook.md — this page is written for an external reader rather than extracted verbatim
A report is generated from controlled mappings between the case record and the report format. The mapping is versioned configuration, the generation retains its validation evidence, and the review, approval and filing history stay attached to the report.
Why it fails closedPermalink to this section
Direct submission fails closed by design. The legacy submit operation still exists so that an existing caller receives an explicit report-transport-unavailable conflict rather than a silence, but it cannot write submitted state. An institution supplies and accepts the authoritative artefacts, and the gate opens; until then the platform will produce, validate and retain a report but will not claim to have filed it.
Money on the filing pathPermalink to this section
Amounts reach a filing as minor units with their currency, and a mixed-currency set is presented as such rather than summed into a single figure. A report that silently added naira to dollars would be a defect that looks like a total.
What a submission recordsPermalink to this section
- The channel it went out on, and the reference the recipient returned.
- The timestamp, and a digest of the payload as sent.
- The acknowledgement state.
A submission cannot be recorded without all of them. A filing record missing its acknowledgement is not evidence of a filing.