advapayResources
Back to ResourcesBack to Resources
Tuesday Tech

Modern core banking architecture: what cloud-native really means

By Yury Batsyuro, TechLead at AdvapayPublished: 30 June 2026Technology8 min read

Cloud-native core banking is a design choice, not a hosting choice. A cloud-native core treats cloud resources as elastic but costly: it can scale up when a part of the platform is under pressure, and it can scale down when a tenant spends most of its time under normal low load. Advapay's Macrobank 3.1 is built around that balance: modular domain logic, purpose-built runtime services, automated recovery, and observability without paying a microservices tax where it adds no value.

*As of June 2026, for EMIs, payment institutions, neobanks, and crypto-fiat businesses.*

Advapay Tuesday Tech cover graphic for "Modern core banking architecture: what cloud-native really means," the second article in the series, by Yury Batsyuro, TechLead at Advapay.

Tuesday Tech #2 - modern core banking architecture: what "cloud-native" really means.

01 - What is cloud-native

What does "cloud-native" core banking actually mean?

Cloud-native means the software is architected to use what the cloud is good at - elastic resources, automated recovery, fast deployment, and observable operation. Hosting in the cloud is logistics. Being cloud-native is design. The two get conflated constantly, and the gap between them is where cost, fragility, and operational surprises appear.

A cloud-native core is not simply "more services." For small and medium fintech service providers, the everyday question is often down-scaling: how little compute can the system use while still staying secure, recoverable, observable, and ready to scale when load appears? The cloud gives access to large resources, but those resources are not free. It is the architecture's responsibility to use them deliberately.

The answer is resource-elastic service composition. A low-load tenant can run with fewer service runners and fewer containers. A hot BFF can scale by adding Kubernetes instances. A busy integration adapter can be sharded into a separate runner for independent up-scaling. A quiet compatible runner can be merged back. The architecture is cloud-native when it can move in both directions without changing the product model.

The counter-example is an architecture that can move only one way. If every change means cloning the whole platform, up-scaling is expensive and blunt. If every small domain becomes its own container, down-scaling is blocked by idle services, network hops, and duplicated infrastructure. Cloud-native architecture should use cloud elasticity without turning elasticity into a permanently high bill.

02 - What should a core run on

Monolith, microservices, or modular - what should a core run on?

Modular service composition, for most regulated cores in 2026. The useful unit for domain focus is the module, not necessarily the runtime service. Domain modules should be clear enough that onboarding, payments, cards, ledger, reporting, compliance-related controls, and other concerns keep their own focus and evidence. Runtime services may then aggregate module contributions into several medium-sized services by purpose rather than mechanically deploying one service per domain. Architecture is a means, not a trophy.

A pure monolith is simple to start, but it blurs domain focus and makes impact evidence harder to keep current: every release can touch too much. Full microservices buy independent scaling and deployment, but charge for it through service discovery, network-failure handling, distributed tracing, duplicated caches, and data consistency across boundaries. Teams that adopt them for fashion rather than need trade one set of problems for a more expensive set.

The middle fits core banking because modules and services answer different questions. A module is measured by domain focus, evidence, and ownership. A service is measured by runtime purpose, security boundary, network exposure, and scaling behavior. The same module can contribute libraries and contracts to several medium-sized services when the product flow requires it. Operator and customer BFFs can stay separate because their authentication schemes, security containers, and network exposure differ: operators may work through VPN or private networks, while customer APIs must remain publicly available. Integration ports can stay integration-centric and hold the adapters that share similar mechanics. Workers and schedulers can group background responsibilities where that saves resources. Advapay has written before on modern core banking architecture and on how microservices architecture helps digital banks; the point is useful isolation, selective scaling, and current evidence, not service count.

Executive insight

The architecture question founders should ask is not 'monolith or microservices.' It is 'which parts of this system need isolation, evidence, and independent scaling, and which parts should stay together to save resources?' Answer that honestly and you avoid both a fragile monolith and a microservices tax on problems you do not have.

Yury BatsyuroTechLead at Advapay
03 - What's inside

What's inside a modern core banking stack in 2026?

A current stack pairs a strongly typed runtime with modular frontend technology, distributed caching, event-driven messaging, real-time observability, and container orchestration. Macrobank 3.1 runs .NET 10, React with TypeScript, Angular for the current Customer frontend, Apache Ignite, RabbitMQ, OpenTelemetry, and a Kubernetes-ready deployment model. Each piece earns its place by solving one production problem.

The [Macrobank 3.1 release](https://advapay.eu/macrobank-3-1-is-here-scalable-core-banking-platform-upgrade-faster-stronger-card-ready/) (2026) is a useful reference stack because it maps cleanly to those needs:

  • .NET 10 - a modern, performant, long-term-supported runtime for the transactional core, with strong resistance to implementation errors and excellent support for modular architecture.
  • React and TypeScript - the target component-based, strongly typed frontend stack for modular web shells.
  • Angular - used in the current Customer frontend because it supports on-the-fly customization well.
  • Apache Ignite (distributed caching) - keeps frequently-read data fast and consistent across nodes, so performance holds as account and transaction volumes climb.
  • RabbitMQ (event-driven messaging) - decouples services so work flows asynchronously; a surge in one area queues rather than stalls the rest.
  • OpenTelemetry (observability) - standardized traces, metrics, and logs, so operators can see what the system is doing in real time and reconstruct exactly what happened during an incident.
  • Kubernetes-ready (orchestration) - services run in containers that can be scaled, restarted, and rolled out without manual server wrangling.

That combination is what lets a core scale horizontally and stay observable - the two properties that separate a platform that survives growth from one that buckles. The same release made cards and digital assets first-class: a provider-agnostic Card Management Module and extended crypto and AML handling. That is an architectural statement, not a feature list.

04 - Scalability and resilience

Why does the architecture decide your scalability and resilience?

Because both are designed in early and are extremely hard and expensive to patch later. A core that cannot isolate the part under pressure, cannot down-scale quiet parts, or has no real observability has already made toxic decisions against resilience. You inherit the decisions made before you arrived.

Scalability comes from useful independence. If a BFF or integration runner is under pressure, you grow that runner and leave the rest alone. If a runner is quiet, you reduce it and consider merging compatible work back together. Distributed caching and messaging must earn their place by improving resilience, consistency, or load handling; otherwise they become another source of cost.

Resilience comes from isolation and visibility. Container orchestration contains failure - a crashed service is replaced automatically instead of taking neighbors down. Observability turns an incident from guesswork into evidence. This is where architecture meets regulation: under the EU's operational-resilience framework, firms must show their critical systems and third-party dependencies can withstand and recover from disruption. A core with traceable behavior and automated recovery is how you produce that evidence, and Tuesday Tech #16 goes deeper on the security and resilience side specifically.

05 - How we built Macrobank

How is Macrobank built, and why does it matter for your launch?

Macrobank is a cloud-native, modular core on the stack above, delivered in whichever model fits your stage. Because Advapay also provides the license and banking access, the architecture arrives as part of a working launch, not an engineering project you run alone.

The practical benefit of the 3.1 stack is that you inherit production-grade scalability, observability, and card-readiness instead of building them. You take the core banking platform as SaaS, a perpetual license, or a source-code purchase, cloud-hosted or on-premise, and it connects to the rest of your stack through clean APIs rather than custom glue. Advapay backs this with 100+ clients, 5 offices, and a team of around 50 people, with the platform already in production across multiple regulated markets.

For a launch-stage team the architecture removes the two risks that sink core builds: not scaling when you succeed, and not being able to explain yourself when something breaks. Both are designed in here. Next week's Tuesday Tech turns to the decision that sits on top of all this - whether to build a core like this yourself or buy one.

Questions teams actually ask

Is "cloud-native" the same as "hosted in the cloud"?

No. Hosted-in-the-cloud means the software runs on cloud servers; cloud-native means it is designed for the cloud's strengths and limits - elastic resources, automated recovery, fast deployment, and observable operation. Cloud-native is also not a hosting mandate: Macrobank runs cloud-hosted or on-premise and keeps the modular, observable design either way.

Does a core banking platform have to use microservices?

Not strictly. A modular, service-oriented design captures most of the benefit without the full operational cost of fine-grained microservices. Domain modules keep business focus and evidence clear; runtime services aggregate those modules by BFF, integration, worker, and scheduler purpose. The goal is useful isolation and elasticity, not maximizing service count.

What technology stack does modern core banking use?

A typical 2026 stack pairs a strongly typed runtime (Macrobank 3.1 uses .NET 10), modular frontend technology (React with TypeScript as the target, with Angular in the current Customer frontend), distributed caching (Apache Ignite), event-driven messaging (RabbitMQ), observability (OpenTelemetry), and container orchestration (Kubernetes).

Why does architecture affect regulatory readiness?

Operational-resilience rules require firms to show critical systems and their third-party dependencies can withstand and recover from disruption. A modular, observable, automatically-recovering architecture produces that evidence; an opaque system with unclear impact boundaries makes it hard to demonstrate.

What to architect for

"Cloud-native" has been said so often it has nearly stopped meaning anything - which is exactly why it is worth pinning down. The version that matters is architectural: modular domains that keep evidence clear, runtime services that scale up or down by purpose, messaging and caching used where they earn their cost, and observability that turns incidents into evidence. Those properties are decided early and expensive to retrofit. The architecture at the core is one of the few decisions you genuinely cannot defer. Make it on purpose, and judge a vendor's "cloud-native" on whether the design uses cloud resources deliberately - not on the phrase.

If you want to see the architecture under a platform before you commit to it, talk to our team - Advapay can walk you through how Macrobank is built and why.

Yury Batsyuro

Yury Batsyuro

TechLead, Advapay

Yury Batsyuro is TechLead at Advapay, responsible for the engineering of the Macrobank core banking platform - its architecture, performance under load, and the security and resilience expectations a regulated stack has to meet. He works close to the code that runs accounts, payments, and integrations in production.

Across Advapay's 100+ licensing and platform projects, he has seen which technical decisions decide whether a core scales cleanly or becomes the bottleneck, and he favours building the audit trail and observability in from the start rather than bolting them on.

Core banking architecturePlatform engineeringSecurity & resilience

Talk to the Advapay Team

If you want to understand the architecture under a platform before you commit to it, Advapay can walk you through how Macrobank is built and why - and deliver it with the license and banking access as one launch.

Share

Share this resource

Send this page to a founder, operator, or colleague working through the same questions.

Get the next Tuesday Tech

Subscribe for the next Tuesday Tech on core banking, Banking-as-a-Service, and crypto infrastructure as soon as it is published.

Regulatory RadarAdvapay Digest

No spam. No sales calls. Unsubscribe any time.