Technology

Banking Multi-Region Failover With Zero Data Loss Requirements

|Posted by Hitul Mistry / 31 Aug 26

Getting to Zero Data Loss Without Pretending Physics Does Not Apply

Boards ask for zero data loss and zero downtime, and technology teams write both into a resilience document because arguing feels like admitting weakness. Then a region degrades, the failover runs, and the institution discovers that a synchronous target three thousand kilometres away had been quietly demoted to asynchronous months earlier because write latency was hurting the payment path.

Zero data loss is achievable and it has a price denominated in latency, distance, and complexity. Designing banking multi region failover RPO targets that hold under real conditions means paying that price deliberately for the workloads that need it, and being honest about the ones that do not.

What does zero data loss actually require?

That no transaction is acknowledged to a client until it is durably recorded in more than one location.

That single sentence contains the whole trade-off. Acknowledgement cannot precede durability in a second location, so every commit pays the round trip to that location. There is no configuration that removes this, only choices about how far apart the locations are and which workloads accept the cost.

What is the physics constraint?

Signal propagation adds roughly a millisecond per hundred kilometres each way, before any equipment overhead.

Light in fibre travels at around two thirds of its vacuum speed, and real paths are not straight lines. A synchronous replica three hundred kilometres away adds several milliseconds of unavoidable round-trip latency to every write, and one at fifteen hundred kilometres adds tens of milliseconds. That is fine for many workloads and fatal for a payment authorisation path with a hard external timer, which is precisely the tension described in this guide to FedNow and RTP participation, where the scheme response budget leaves little room for a distant synchronous commit.

Which workloads genuinely need an RPO of zero?

Ledger postings, payment instructions, and anything irreversible once acknowledged.

WorkloadRealistic RPOReasoning
Ledger postings and balancesZeroA lost posting is an unrecoverable financial discrepancy
Accepted payment instructionsZeroClient was told the payment was accepted
Authorisation decisions with scheme obligationsZero to secondsIrreversible and externally visible
Customer profile and entitlement changesSecondsRecoverable from source or reissued
Fraud model features and scoresSeconds to minutesRecomputable
Analytics, reporting, data warehouseMinutes to hoursDerived data, rebuildable
Logs and telemetryMinutesVolume makes synchronous replication uneconomic

Classifying honestly is the first cost saving available, because institutions that apply zero RPO uniformly spend heavily and slow the paths that matter most.

Is your payment path paying synchronous latency to protect data that could be rebuilt?

Talk to Digiqt about RPO classification and replication design

Which replication models are available?

Six, trading data loss against latency, distance, and complexity.

ModelData lossWrite latency costSuits
AsynchronousSeconds to minutes of lossNoneDerived data, analytics, far geographies
Semi-synchronousUsually zero, not guaranteedPartial round tripMiddle ground, often misunderstood as zero
Synchronous two sitesZero between the pairFull round tripMetro or near-region pairs
Synchronous with witness or arbiterZero, with safe tie-breakingFull round tripBanking standard for critical stores
Consensus or quorum databasesZero once quorum acknowledgesRound trip to quorum majorityModern distributed stores across nearby regions
Application-level dual writeInconsistent under failureTwo writesAlmost never appropriate

Where does synchronous replication break down?

At distance, and under partial failure where the replica is slow rather than absent.

The failure everyone plans for is a replica that disappears, and the failure that actually causes incidents is a replica that responds slowly. A degraded synchronous target drags every commit with it, so the primary appears to fail while remaining technically available. Decide in advance whether the system prioritises availability by dropping to asynchronous or prioritises durability by refusing writes, make that behaviour explicit and alarmed, and never let it be an emergency judgment call. Silent demotion to asynchronous is the single most common reason a bank believes it has zero RPO and does not.

Why is application-level dual write usually wrong?

Because it has no atomicity, so a failure between the two writes leaves inconsistent state with no arbiter.

Writing to two regions from application code looks straightforward and produces divergence that nobody can reconcile afterwards, since there is no transaction spanning both and no authority on which one is correct. Where a genuine cross-store guarantee is needed, use replication provided by the data platform, or use an event log as the source of truth with derived stores rebuilt from it. The one legitimate variant is writing to a durable log synchronously and projecting asynchronously, which keeps a single authoritative order.

Why is RTO usually harder than RPO?

Because replication is a product feature and failover is an organisational decision.

Zero RPO can be bought. Low RTO has to be engineered across detection, decision, promotion, fencing, downstream reconnection, and capacity, and it fails on whichever of those is weakest. Most institutions have solid replication and a failover process that takes hours because three of those steps require a person who has to be found.

How should the failover decision be made?

Automatic detection and fencing, with a time-limited human decision on final promotion for ledger stores.

Automate detection, quorum evaluation, and fencing of the failed primary, since those need to happen in seconds and are deterministic. For promoting a new primary on a ledger, many banks keep a human in the loop, because an incorrect automatic promotion during a network partition is worse than a short delay. If you do that, bound it: a named on-call role, a defined maximum decision time, pre-authorised criteria, and an automatic path if nobody responds. Unbounded human decisions are how a thirty-second technical failover becomes a two-hour outage.

How do you prevent split brain?

With quorum across three locations and hard fencing of the old primary.

Two sites cannot distinguish a partition from a peer failure, which is why a third location holding a witness or arbiter is required even when you only intend to run in two regions. The third site needs no data capacity, only independence, and it must not share the failure domain that could partition the pair. Then fence properly: the demoted primary must be prevented from accepting writes, by network isolation, credential revocation, or storage-level fencing, before the new primary is promoted. A ledger that accepted writes in two places for ninety seconds creates a reconciliation problem that outlasts the incident by months.

Do you have an independent third location capable of breaking a tie?

Talk to Digiqt about quorum and fencing design

What breaks during failover that nobody tests?

In-flight work, identifier generation, session state, downstream reconnection, and capacity.

Failure modeWhat happensMitigation
In-flight transactionsAccepted but incomplete work in unknown stateIdempotency keys, durable intent log, reconciliation on recovery
Sequence and identifier generationDuplicate or reused identifiers across regionsRegion-partitioned or globally coordinated generation
Session and authentication stateCustomers logged out or stuck mid-journeyReplicated or reconstructible session state
Downstream reconnectionConsumers hold stale endpoints or connection poolsHealth-aware clients, short DNS TTLs, tested reconnection
Capacity in the surviving regionInsufficient headroom for full loadReserved capacity, load shedding plan, tested at full volume
Batch and scheduled jobsJobs run twice or not at allRegion-aware scheduling with leader election
Third-party callbacksProvider still calls the failed regionRegistered endpoints that follow failover, provider testing

How do you handle in-flight payments?

With a durable intent record, idempotency, and a reconciliation pass that runs automatically after recovery.

A payment accepted but not confirmed at the moment of failure is the most consequential item in the list, because both duplicating and dropping it are unacceptable. Record intent durably before any external call, key every external interaction idempotently, and treat unknown outcomes as a first-class state to be resolved after failover rather than as an error to be retried blindly. Then run reconciliation against the rail and the ledger as part of the recovery runbook, not as a follow-up task. Institutions that skip this find the problem days later in a break report.

How do you test failover honestly?

Frequently, unannounced, at full load, and including the messy parts.

TestWhat it provesCadence
Planned failover with noticeThe mechanism worksQuarterly minimum
Unannounced failover in business hoursDetection, decision, and peopleTwice yearly for critical services
Failover at peak loadCapacity in the surviving regionAnnually
Degraded replica scenarioBehaviour when the replica is slow, not absentAnnually
Partition scenarioQuorum, fencing, split-brain preventionAnnually
FailbackReturning without a second outageEvery exercise, since this is often untested

Failback deserves specific attention. Many institutions can fail over and have never returned cleanly, which means every real event leaves them running in a secondary configuration for weeks. Test the return path as part of every exercise. Regular, boring failover is the goal, since a mechanism exercised quarterly is one the team trusts at 3 a.m., and the broader recovery discipline is covered in this guide to disaster recovery for mission-critical platforms and in disaster recovery for core systems.

What does this actually cost?

Roughly double infrastructure for active-passive, more for active-active, plus latency and engineering complexity.

Synchronous replication requires capacity that is idle most of the time or an active-active design that costs more to build and reason about. Add cross-region bandwidth, the third site, and the engineering effort to make failover routine. Present the cost against the tolerance it protects rather than as an infrastructure line item, because the decision belongs to whoever owns the service and its tolerance. That framing is exactly what mapping critical business services and setting impact tolerances provides, and the tolerance-based case is far more likely to be funded than an architectural preference.

How does this connect to regulatory expectations?

Supervisors care whether critical services stay available and recoverable, not which replication mode you chose.

The Basel Committee's Principles for operational resilience, published in March 2021, take a principles-based approach to withstanding operational disruption, and CPMI-IOSCO's guidance on cyber resilience for financial market infrastructures, published in June 2016, frames the expectation as anticipating threats, responding rapidly, and achieving faster and safer target recovery objectives. For payment participants there is also a hard operational reality: instant rails run continuously, with the FedNow Service operating a 24-hour business day every day of the week including weekends and holidays, so a maintenance window that once absorbed failover work no longer exists. Note too that failover protects against infrastructure failure and not against corruption, since synchronous replication faithfully copies corrupted data to both regions, which is why immutable isolated copies remain necessary as covered in ransomware resilience and immutable backup design.

Which metrics prove the capability?

Tested failover time, replication lag and mode, unannounced test results, failback success, and capacity headroom.

Report tested failover time per critical service rather than designed RTO, since the difference is your real exposure. Monitor replication lag continuously and alarm on any silent transition from synchronous to asynchronous, because that transition is the most dangerous undetected state in this whole design. Track results from unannounced exercises separately from planned ones, as the gap measures your operational readiness rather than your technology. Record failback success rate. And measure surviving-region capacity headroom at peak, since a failover into insufficient capacity converts a regional outage into a total one. The underlying RTO and RPO discipline, including how to derive targets rather than assert them, is set out in this guide to disaster recovery planning with RTO and RPO.

Zero data loss is an engineering commitment with a latency invoice attached, and the institutions that hold it are the ones that scoped it narrowly, put a witness in a third location, fenced their old primaries properly, and failed over often enough that nobody hesitates.

Frequently Asked Questions

Is zero data loss across regions actually achievable?

Yes, with synchronous replication, and it costs write latency proportional to distance. The physics is fixed, so the design question is which workloads justify paying that latency.

How much latency does distance add?

Signal propagation alone adds roughly one millisecond per hundred kilometres each way, before switching and protocol overhead, and every synchronous commit pays the round trip.

Which workloads genuinely need an RPO of zero?

Ledger postings, payment instructions, and anything irreversible once acknowledged. Analytics, reporting, and derived data almost never justify synchronous replication.

Why is RTO usually harder than RPO?

Because replication is a product feature while failover is an organisational decision involving detection, quorum, fencing, downstream reconnection, and capacity in the surviving region.

Why do you need a third site for two-region failover?

To break ties. With two sites, neither can safely distinguish a network partition from the other's failure, so a witness or arbiter elsewhere is what prevents split brain.

What is the most commonly untested part of failover?

In-flight work. Messages accepted but not completed, sequence generators, session state, and downstream reconnection behaviour cause most of the damage during real failovers.

Should failover be automatic?

For detection and fencing, yes. For the final promotion decision on a ledger, many banks keep a human in the loop with a strict time limit, because an incorrect automatic promotion is worse than a delay.

How often should failover be tested?

Frequently enough to be routine, which for critical services means at least quarterly, including unannounced exercises rather than only scheduled ones with everyone watching.

Sources

Read our latest blogs and research

Featured Resources

Technology

Ransomware Resilience Banking: Immutable Backup Architecture

How to design ransomware resilience banking capability, covering genuinely immutable backups, recovery sequencing, identity and key recovery, realistic testing, third-party concentration, and the metrics that matter.

Read more
Technology

FedNow RTP Integration: A CTO Guide to Real-Time Payment Rails

A practical architecture guide to FedNow RTP integration, covering where balances live, how to spend a millisecond latency budget, liquidity sizing, fraud controls on an irreversible rail, and what the program really costs.

Read more
Technology

Operational Resilience: Mapping Services and Impact Tolerances

How to map critical business services and set operational resilience impact tolerance levels you can defend, covering service definition, tolerance metrics, dependency mapping, severe but plausible testing, and governance.

Read more

About Us

We are a technology services company focused on enabling businesses to scale through AI-driven transformation. At the intersection of innovation, automation, and design, we help our clients rethink how technology can create real business value.

From AI-powered product development to intelligent automation and custom GenAI solutions, we bring deep technical expertise and a problem-solving mindset to every project. Whether you're a startup or an enterprise, we act as your technology partner, building scalable, future-ready solutions tailored to your industry.

Driven by curiosity and built on trust, we believe in turning complexity into clarity and ideas into impact.

Our key clients

Companies we are associated with

Life99
Edelweiss
Aura
Kotak Securities
Coverfox
Phyllo
Quantify Capital
ArtistOnGo
Unimon Energy

Our Offices

Ahmedabad

B-714, K P Epitome, near Dav International School, Makarba, Ahmedabad, Gujarat 380051

+91 99747 29554

Mumbai

C-20, G Block, WeWork, Enam Sambhav, Bandra-Kurla Complex, Mumbai, Maharashtra 400051

+91 99747 29554

Stockholm

Bäverbäcksgränd 10 12462 Bandhagen, Stockholm, Sweden.

+46 72789 9039

Malaysia

Level 23-1, Premier Suite One Mont Kiara, No 1, Jalan Kiara, Mont Kiara, 50480 Kuala Lumpur

Lewes

16192 Coastal Highway, Lewes, Delaware 19958, USA

software developers ahmedabad
ISO 9001:2015 Certified

Call us

Career: +91 90165 81674

Sales: +91 99747 29554

Email us

Career: hr@digiqt.com

Sales: hitul@digiqt.com

© Digiqt 2026, All Rights Reserved