Replaced a 15-year-old legacy core banking system for a mid-sized regional bank, migrating 800K+ accounts to a custom-built microservices platform with ISO 20022 compliance and zero-downtime cutover.
Meridian Regional Bank had been running its core banking operations on an IBM mainframe system built in the late 1990s. With $2.4B in assets under management and 800K+ customer accounts, every passing year made the legacy platform more expensive, fragile, and impossible to integrate with modern fintech APIs. The bank's IT team was spending 60% of their budget simply keeping the lights on — with zero budget left for innovation.
Digivance designed and built CoreFin: a modular, cloud-native core banking platform on Java Spring Boot and Apache Kafka. Using the Strangler Fig migration pattern, we decomposed the monolith module by module — running the new system in parallel for 90 days before each cutover. 800K+ accounts were migrated without a single hour of unplanned downtime.
The 1990s IBM mainframe ran COBOL batch jobs with zero real-time API capability. Every integration required screen-scraping or file-based data exchange — making it impossible to connect with modern payment rails, open banking APIs, or mobile banking platforms.
The bank's 800K customers expected 24/7 account access. Any migration plan that required a maintenance window of more than 4 hours was rejected by the board. Migrating live transaction processing to a new system without any customer-facing impact was the defining constraint.
Federal Reserve's FedNow and SWIFT's ISO 20022 migration meant the new platform had to natively support structured payment messaging — a standard the legacy system had no ability to produce or consume. Non-compliance would have blocked cross-border wire transfer capabilities.
120 branch tellers and 40 back-office operations staff had used the legacy UI for 10–20 years. A hard cutover to a new interface would have caused service failures at the branch level. Training had to be sequenced, validated, and completed before each branch went live.
The bank's existing Actimize fraud detection system was deeply embedded in the legacy platform. Every transaction required a fraud score from Actimize within 100ms before authorization. The new system had to integrate seamlessly without breaking the fraud detection pipeline.
Banking regulations require a 7-year immutable record of all transactions, access events, and configuration changes. The legacy mainframe stored these in mutable flat files. The new system had to provide a legally compliant, tamper-proof audit trail from day one of operation.
We implemented the Strangler Fig architectural pattern — building new microservices alongside the legacy system, routing traffic incrementally via an anti-corruption layer (ACL). The ACL translated between legacy data formats and the new domain model, allowing both systems to coexist during migration without either having to know about the other.
For each module cutover, we ran the new service in shadow mode for 90 days — receiving all production transactions in parallel and comparing outputs against the legacy system. Only after 90 days of output parity did we flip the routing switch. Blue-green infrastructure meant rollback was a 30-second DNS change.
We built a proprietary Java library for ISO 20022 message composition, parsing, and validation — covering pacs.008 (credit transfer), camt.054 (debit/credit notification), and pain.001 (payment initiation). Automated validation against XSD schemas caught malformed messages before they reached payment rails.
Built a dedicated training portal with role-specific workflows (teller, operations, manager), interactive simulations of the new UI, and competency assessments. Branch rollout was sequenced — smallest branches first — with a 2-week training period before each branch's go-live date. All 160 staff certified before cutover.
Built a REST adapter service fronting the Actimize SOAP API with an in-memory Redis cache for low-risk transaction patterns. The adapter converts Actimize's XML response into a normalized fraud signal in under 30ms, keeping total transaction authorization latency under 100ms at p99 under production load.
All transactions and system events are written to an append-only event store backed by AWS S3 Glacier with Object Lock (WORM). Automated compliance reports extract 7-year audit trails on demand, digitally signed with SHA-256 integrity hashes. Tamper detection runs nightly with alerts to the compliance team.
Accounts, Deposits, and Payments modules went live on the new platform in Month 6. 200K accounts migrated with zero data loss. Legacy mainframe remained active for remaining modules. Branch teller feedback rated new UI 4.6/5 vs 2.8/5 for the legacy system.
All 800K+ accounts migrated across all product lines. Legacy mainframe contracts terminated, saving $1.8M annually in IBM licensing fees. ISO 20022 compliance verified by Federal Reserve FedNow certification team. Zero compliance incidents during migration year.
Transaction processing 45% faster than legacy baseline. API layer enabled 3 new fintech partnerships in 6 months post-migration. Zero major production incidents in 6 months of steady-state operation. Actimize fraud detection latency held at 94ms p99 under peak load.
"CoreFin replaced 15 years of mainframe dependency without a single hour of unplanned downtime. Our transaction processing is 45% faster, our compliance costs are down, and we've finally got an API layer we can build on. The Digivance team understood banking operations at a depth that surprised us — they knew the difference between a pacs.008 and a pain.001 before the first architecture call."
Running on aging infrastructure? Let's build you a platform that scales.