IFRS Risk Assessment Solution
Technologies: Java 21 · Spring Boot · Spring Batch · Spring Data JPA · WebSocket · MySQL / Oracle · React · Next.js · Material UI · Docker · Nginx · Kerberos / AD SSO · Swagger / OpenAPI · CI/CD (GitHub Actions)
- Industry: Banking & Financial Services · IFRS / ISL Provisioning
- Client: HNB
- Solution: IFRS‑ISL Assessment Platform
How Majstro partnered with HNB to replace spreadsheet‑driven loan‑loss provisioning with a single cycle‑based platform - covering data import, complex cash‑flow calculation, multi‑level approvals, reporting and analytics.
| 10 | 12 | 11+ | 100% |
|---|---|---|---|
| months, requirements to go‑live | governed user roles in one workflow | reports generated on demand | data validated before it's used |
At a Glance
Every reporting cycle, HNB's Account Relationship Managers (ARMs), reviewers and approvers had to assess impaired facilities, build multi‑year recovery cash flows and produce a stack of regulatory reports - largely by hand. Majstro designed and built the IFRS‑ISL Assessment Platform to run that entire cycle inside one governed system: from raw account data to board‑ready reports.
| Client | Objective | Engagement |
| HNB - retail & corporate banking | Automate IFRS / ISL provision assessments end‑to‑end | Discovery → build → test → deploy, on HNB's own infrastructure |
Impact at a Glance
| Metric | What it means |
|---|---|
| 65% | Faster assessment turnaround per cycle - days, not weeks, of paperwork |
| 90% | Less manual effort on multi‑year, multi‑scenario cash‑flow calculations |
| 80% | Faster report generation - 11+ report types produced in one click |
| 100% | Of uploaded & entered data validated before it reaches an assessment |
| 12 | Roles (ARM → Reviewer → Approver → Final Approver, + oversight) on one workflow |
| 10 | Months from business‑requirement workshops to production go‑live |
Impact figures are indicative, estimated from a before/after comparison of HNB's prior manual, spreadsheet‑based provisioning process against the delivered platform.
Why It Matters
- Time back for risk teams - Hours spent re‑keying and re‑checking spreadsheets are now spent reviewing exceptions and judgement calls.
- Confidence in the numbers - Every cash flow, stage and provision figure is calculated the same way, every time, for every facility.
- Visibility for decision‑makers - Live dashboards show cycle progress and compare it against prior cycles - no waiting on a report request.
- Audit‑ready governance - Every hand‑off between 12 roles is enforced and logged by the system, not tracked over email.
The Challenge
Provisioning ran on spreadsheets, email threads and manual re‑checking. IFRS / ISL provisioning is one of a bank's most calculation‑heavy, audit‑sensitive processes. Before the platform, HNB's teams carried that whole process by hand, cycle after cycle - which made it slow, hard to trust at a glance, and hard to reconstruct later.
- Weeks of manual paperwork - Every impaired facility was assessed and documented by hand, one loan at a time, across shared spreadsheets and file evidence.
- Error‑prone cash‑flow spreadsheets - Multi‑year, multi‑scenario recovery cash flows were rebuilt from scratch for every facility, every cycle - a single formula slip could ripple through the numbers.
- No single source of truth - Risk and business heads had no live view of where a cycle stood, or how it compared with the one before it.
- Approvals chased over email - Reviews and sign‑offs across many reviewers and approvers travelled by email and shared folders, with no enforced order and a thin audit trail.
- Reports assembled by hand, every time - Exception lists, progress trackers, loan‑staging and cash‑flow reports were each compiled manually from scattered sources - for every reporting cycle, all over again.
The result: Provisioning cycles took longer than they needed to, tied up skilled reviewers in re‑keying and cross‑checking, and made it harder to demonstrate - quickly and consistently - how a provision figure was reached.
The Shift
| Provisioning Task | Before | With the Platform |
|---|---|---|
| Facility data entry | Re‑typed per spreadsheet | Bulk CSV import, validated |
| Recovery cash flows | Rebuilt by hand, every cycle | Calculated automatically |
| Reviews & approvals | Chased over email | System‑routed, 12‑role chain |
| Cycle visibility | Requested on demand | Live, current vs. prior cycle |
| Reports | Assembled manually | 11+ reports, one click |
The Solution
Majstro designed the platform around HNB's real provisioning cycle - not around a generic form builder. Every cycle moves through the same validated, calculated, reviewed path, so nothing depends on who remembered to check what.
CSV Upload (Account, master & recovery‑schedule data) → Validation (Field‑level checks & exception flagging) → Cycle Assessment (ARM entry, questionnaire & collateral review) → Cash‑Flow Engine (Multi‑scenario calculation & consistency checks) → Review & Approval (Multi‑level, role‑based sign‑off chain) → 11+ Reports · Live Dashboards · Analytics (Generated on demand, current & prior cycles compared instantly)
- Cycle‑based, not one‑off - Each provisioning round is its own tracked cycle - current and historical cycles stay side by side, always comparable.
- Every stage is connected - Data, calculations, approvals and reports share one model - nothing is re‑typed between steps.
- Nothing moves forward unchecked - Validation and consistency checks sit in front of every stage, not just at the end.
- Full cycle history retained - Every past cycle stays queryable - nothing is overwritten when a new cycle opens.
- One view, every role - ARMs, reviewers, approvers and oversight roles all work from the same live cycle data.
- Instant recalculation - Change an input and every dependent cash flow, stage and report updates automatically.
"Every number an ARM enters is validated, calculated and routed automatically - no parallel spreadsheet required, for any facility, in any cycle."
Core Capabilities
Every module below was shaped directly by HNB's IFRS‑ISL process - from how an ARM opens an assessment, to how a cash flow is proven consistent before it reaches an approver.
Cycle & Assessment Management
- Cycle lifecycle control - Draft, In‑Progress, Closed and On‑Hold states keep every provisioning cycle under control end‑to‑end.
- Guided ARM assessments - Structured, questionnaire‑driven qualitative assessments tied to objective evidence - no blank‑page starts.
- Collateral & property tracking - Stage‑wise monitoring of collateral value and status against every facility.
- 360° customer & facility view - Every customer, account and facility linked in one place - no more hunting across systems.
Cash‑Flow & Risk Engine
- Multi‑year cash‑flow modelling - Facility‑level recovery cash flows computed automatically across the full recovery horizon.
- Scenario forecasting - What‑if recovery scenarios generated without touching a single manual spreadsheet.
- Sensitivity analysis - Automated stress‑testing of key recovery assumptions for every facility.
- Consistency & back‑testing checks - Built‑in checks catch calculation drift before it ever reaches a reviewer.
Risk Classification
- WL / MRL categorisation - Automatic risk categorisation applied consistently across every facility.
- Loan staging - Stage classification kept in step with the latest assessment data.
- Off‑balance‑sheet classification - Exposures classified automatically alongside the main provisioning flow.
Data Management & Integrity
- Bulk CSV import engine - Account, master and recovery‑schedule data loaded in batches through a dedicated import pipeline.
- Field‑level validation - Every record validated on upload, and again on every manual entry or update - before it can enter an assessment.
- Automatic exception reporting - Bad or inconsistent records are flagged and routed for correction - never silently accepted into a calculation.
Workflow & Governance
- 12‑role governed workflow - ARM → Reviewer L1/L2 → Approver L1/L2 → Final Approver, plus dedicated Risk Observer, Auditor, Admin and Business Head views.
- Maker‑checker user administration - Independent "Password Maker" / "Password Checker" roles enforce segregation of duties on every account created.
- Real‑time notifications - Live, WebSocket‑driven reminders keep every stage of every cycle moving.
- Single sign‑on - Kerberos / Active Directory integration for secure, password‑free login on HNB's own domain.
Reporting & Analytics
- 11+ one‑click reports - Exception, Progress, Cash Flow, Loan Summary, Objective Evidence, Back‑Testing, Scenario Forecasting, Sensitivity Analysis, Cash‑Flow Consistency, Loan Staging, Off‑Balance‑Sheet Classification & more.
- Cycle‑wise, by design - Every report is generated against a specific cycle - current or historical - and can be narrowed to a single ARM or reviewer, so results never mix across cycles.
- Live dashboards - Segment‑leader and admin dashboards compare the current cycle against previous ones at a glance.
Spotlight: Two of the Hardest Problems
Cash‑flow calculation, automated
Recovery cash flows for an impaired facility can run for years and split across several recovery scenarios. Rebuilding that by hand, per facility, per cycle, was the single biggest source of delay and risk.
Facility → Cash Flow (period‑by‑period elements) → Scenario Forecasting + Sensitivity Analysis (in parallel) → Consistency Check + Back‑Testing → Verified figure feeds the assessment & reports
90% less manual effort on multi‑scenario cash‑flow calculation, cycle over cycle.
Workflow state, stage & data - always in sync
An assessment carries three things that must never drift apart: which cycle it belongs to, which stage it's at, and the data behind it. Before the platform, a spreadsheet marked "reviewed" didn't always mean it had been.
Cycle Status: Draft → In‑Progress → Closed / Hold → Stage Check (New → Assess → Rev L1/L2 → App L1/L2) + Data Check (required fields & evidence present), in parallel → Guarded Transition - both checks must pass → Stage & cycle status update automatically
100% state‑checked - every stage change is gated by a live data check.
Together, the two engines mean an assessment can only move forward once the right path has been chosen for the customer - full cash‑flow assessment, an exceptional treatment, or none required at all - with the correct cash‑flow type selected and every value behind it checked at each stage.
Spotlight: The Third Hardest Problem - Reporting Across Every Cycle
Eleven‑plus report types, each one meaningless the moment it mixes two cycles together, or if pulling last year's numbers means a special request. Every report in the platform is generated against one specific cycle - current, or any cycle from the archive - and stays that way from generation to export.
| Report Type | Cycle 1 | Cycle 2 | Cycle 3 | Cycle 4 | Current Cycle |
|---|---|---|---|---|---|
| Exception Report | ✅ | ✅ | ✅ | ✅ | ✅ |
| Progress Report | ✅ | ✅ | ✅ | ✅ | ✅ |
| Cash Flow Report | ✅ | ✅ | ✅ | ✅ | ✅ |
| Loan Summary | ✅ | ✅ | ✅ | ✅ | ✅ |
| Objective Evidence | ✅ | ✅ | ✅ | ✅ | ✅ |
| Back‑Testing | ✅ | ✅ | ✅ | ✅ | ✅ |
| Scenario Forecasting | ✅ | ✅ | ✅ | ✅ | ✅ |
| Sensitivity Analysis | ✅ | ✅ | ✅ | ✅ | ✅ |
| Cash‑Flow Consistency | ✅ | ✅ | ✅ | ✅ | ✅ |
| Loan Staging | ✅ | ✅ | ✅ | ✅ | ✅ |
| Off‑Balance‑Sheet Classification | ✅ | ✅ | ✅ | ✅ | ✅ |
| Assessment Pending (ARM / Approvers) | ✅ | ✅ | ✅ | ✅ | ✅ |
All 11+ report types work the same way - pick any cycle, current or historical, and the report is ready.
- Every report scoped to a cycle - A cycle is required to generate any report - current or any closed cycle from the archive - so results can never mix across cycles.
- Drill to a single ARM or reviewer - Every report can be narrowed to one user's book of facilities, and paged through even for the largest portfolios.
- A full, queryable archive - Nothing is overwritten when a cycle closes - every past cycle's reports stay exactly as they were, ready for audit.
80% faster report generation & distribution.
"Pull the same report for last year's cycle or this morning's - the format, the checks and the speed never change."
Governance: A Workflow That Enforces Segregation of Duties by Design
Twelve distinct roles move an assessment from first entry to final sign‑off. The system - not an inbox - decides what happens next and who is allowed to do it.
ARM (New & Assess) → Reviewer L1 (First review) → Reviewer L2 (Second review) → Approver L1 (First approval) → Approver L2 (Second approval) → Final Approver
Continuous, read‑only oversight - Risk Observer · Auditor · Business Head · Admin (configuration & roles)
Password Maker (creates user) → Password Checker (approves)
- Nothing skips a step - The system routes each assessment to the next required role - a stage can't be bypassed.
- Full audit trail - Every activity, comment and decision is logged against the workflow, ready for audit.
- Segregation of duties - Maker‑checker controls apply even to administrative actions like creating a user.
All 12 Roles on One Platform
| Role | Function |
|---|---|
| ARM | Opens & assesses |
| Reviewer L1 / L2 | First & second review |
| Approver L1 / L2 | First & second approval |
| Final Approver | Closes the assessment |
| Risk Observer | Read‑only risk oversight |
| Auditor | Independent audit view |
| Business Head | Portfolio visibility |
| Admin | Configuration & roles |
| Password Maker | Creates user accounts |
| Password Checker | Independently approves them |
Challenges We Solved
What made this project hard - and how we approached it
01 · Cash Flows - Complex, multi‑year cash‑flow tables Approach - modelled cash flows as structured, facility‑linked data - not spreadsheets - with dedicated engines for scenario forecasting, sensitivity analysis, back‑testing and automated consistency checks. Outcome - every cash flow recalculates instantly and stays internally consistent, cycle after cycle.
02 · Data Integrity - Trustworthy data, from first CSV to every edit Approach - a layered validation pipeline: batch‑level checks on import, field‑level validation on every manual entry and update, with automatic exception reporting for anything that fails. Outcome - only clean, verified data ever reaches an assessment or a calculation.
03 · Workflow - Coordinating 12 roles across a multi‑level process Approach - a cycle‑based workflow engine with clear activity stages and maker‑checker controls, so every hand‑off, review and approval is tracked and enforced by the system. Outcome - full segregation of duties and a complete audit trail - no assessment can skip a required review.
04 · Assessment State - Every assessment in the right state, right stage, with the right data Approach - modelled each assessment as an explicit state machine - cycle status (Draft, In‑Progress, Closed, Hold) crossed with activity stage (New, Assess, Reviewer L1/L2, Approver L1/L2) - so every transition is checked against both the current stage and the data attached to it before it's allowed to move forward. Outcome - an assessment can never sit in an inconsistent state - stage, status and underlying data always agree, for every facility, in every cycle.
05 · Delivery - A feature‑rich, fast, user‑friendly system in 10 months Approach - a tight, phased delivery - requirement workshops, cycle‑based data modelling, iterative development, and calculation‑heavy QA - behind a modern, componentised UI. Outcome - a production‑ready platform, live on HNB's own infrastructure, in 10 months.
| 0 | 12/12 | 10 |
| Spreadsheets in the production cash‑flow process | Roles operating inside one governed workflow | Months from workshops to a live, production system |
How We Delivered It
From business requirements to go‑live, in 10 months
A calculation‑heavy, multi‑role system like this lives or dies on its data model. We spent real time getting the cycle‑based model right before writing production code - then tested the numbers as hard as the workflow.
- Requirement Discovery - Workshops with risk & credit teams
- Cycle‑Based Data Modelling - Facilities, cash flows, scenarios & roles
- Iterative Development - Assessment, cash‑flow, workflow & reporting
- Calculation‑Heavy Testing - Cash‑flow, back‑testing & consistency validation
- Containerised Deployment - Shipped as Docker containers, on HNB's server
- Go‑Live & Hypercare
10 months, start to finish - a calculation‑heavy, multi‑role platform, designed, built, tested and deployed to production on HNB's own infrastructure.
What Made 10 Months Possible
- ** Model first, code second** - The cycle‑based data model was proven on real HNB cash‑flow scenarios before development began at pace.
- ** Continuous calculation testing** - Cash‑flow, back‑testing and consistency‑check logic was tested against real facility data throughout the build, not just at the end.
- ** A componentised UI** - A reusable component library kept every screen consistent and fast to build, without sacrificing usability.
Deployment & Security: Delivered as a Containerized Application, on HNB's Own Server
Data sovereignty mattered as much as functionality. The entire platform ships as Docker containers and runs inside HNB's own infrastructure - nothing leaves the bank's environment.
HNB On‑Premise Server
- Nginx - reverse proxy / TLS termination
- Frontend Container - React / Next.js · MUI
- Backend Container - Spring Boot · Batch · WebSocket
- Database - MySQL / Oracle
- HNB Active Directory (outside the boundary) - Kerberos / SPNEGO SSO, connected to the Backend Container
Orchestrated with Docker Compose · images built & shipped via automated CI/CD
- ** Data stays with HNB** - The full stack runs on HNB's own server - no customer or provisioning data leaves the bank's environment.
- ** Containerized by design** - Frontend, backend and reverse proxy each ship as independent, versioned Docker images for repeatable deployments.
- ** Enterprise‑grade login** - Kerberos/SPNEGO integration lets staff sign in with their existing HNB domain credentials.
"The platform lives entirely inside HNB's own network, built and shipped as versioned containers - Majstro hosts none of HNB's data."
The Result
A calculation‑heavy, highly governed process - now a smooth, trustworthy digital cycle.
What once took HNB's teams weeks of manual, spreadsheet‑driven work is now a single governed platform: validated data, automated multi‑scenario cash‑flow calculations, an enforced 12‑role approval chain, and 11+ reports available on demand - deployed securely inside HNB's own infrastructure.
| 65% | 90% | 80% | 100% |
|---|---|---|---|
| faster turnaround | less manual cash‑flow effort | faster reporting | validated data |