Unifying a Swiss BNPL platform through zero-downtime migration of 140+ million transactions

Gert Miltop
5.7+ million
migrated consumer records
140+ million
transactions migrated
500+
merchants unified

Helmes unified two live payment APIs, migrating 140M+ transactions and 5.7M consumers — with zero downtime and zero data loss.

Executive summary

A Swiss-based fintech provider operating a Buy Now, Pay Later (BNPL) solution faced growing friction from running two separate API platforms. Merchants had to integrate with different systems, each with its own authentication, formats, and requirements. This slowed onboarding, increased maintenance efforts, and introduced operational risk.

Working closely with the client’s team, Helmes led a staged migration to bring both platforms together into a single API environment. Over the course of the project, we migrated more than 5.7 million consumer records, 500+ merchants, and over 140 million transactions across multiple databases — all while live payment services remained fully operational.

To make this possible, we developed custom migration tools, implemented staged data transfers, and introduced bi-directional synchronisation between the legacy and new systems.

Collaboration approach

Helmes worked closely with a Swiss financial services organisation responsible for a Buy Now, Pay Later (BNPL) payment solution.

Working within a team augmentation setup, Helmes senior engineers led the migration effort, driving key architectural decisions and implementation while collaborating closely with the client’s representatives.

Helmes led the migration end-to-end, working closely with the client’s engineers and stakeholders to define the migration strategy, build custom tooling, validate data, and coordinate rollout.

Spanning 1.5 years, the large-scale project required close collaboration between Helmes and the client to manage risks, resolve data inconsistencies, and ensure a smooth transition to the new platform.

After the migration, the collaboration continued with system stabilisation, new feature development, and ongoing production support.

The challenge

The BNPL platform was operating two separate API environments that supported different payment products. While functional, the setup increased operational complexity and made it harder to scale the business efficiently.

Merchants had to integrate with one system or the other, each with its own authentication methods, data formats, and technical requirements. This fragmented experience slowed merchant onboarding, increased support effort, and created additional maintenance work for internal teams.

Maintaining parallel platforms also introduced ongoing challenges around data consistency, operational reliability, and reporting. As the business continued to grow, the client needed a simpler and more scalable foundation that would support future expansion while reducing operational overhead

To simplify operations and support future growth, the client decided to unify the platforms into a single API.

The scale of the migration was significant, but continuity was just as critical. The payment system needed to remain fully operational throughout the process, with no disruption for merchants or consumers.

Several risks had to be carefully managed, including:

  • Data inconsistencies built up over years of operation
  • Potential performance impact on live production systems
  • Maintaining data integrity across systems
  • Ensuring zero downtime during migration

Our approach

Because the payment platform was actively used by merchants and consumers, downtime was not an option. A big-bang migration — shutting everything down and moving all data at once — was ruled out early.

Instead, we chose a staged migration approach. Data was moved gradually while production systems remained live, reducing risk and making it easier to validate each step along the way.

Early on, we also evaluated off-the-shelf migration and ETL tools, but they didn’t fit the complexity of the project. The migration involved different database technologies, complex transformations, identifier generation, and data inconsistencies built up over years of operation. Standard tools simply didn’t offer enough flexibility.

Given the scale and sensitivity of financial data, the team prioritised:

  • Zero downtime
  • Data integrity and traceability
  • Controlled performance impact
  • Incremental validation

This collaborative planning phase helped both teams identify risks early and align on how the migration would be executed.

The solution

Helmes led the migration end-to-end, using a staged approach supported by custom .NET 8 applications.

Data was pulled from MySQL and Microsoft SQL Server, transformed within the migration tools, and loaded into staging tables in the new environment. From there, SQL scripts handled validation, data cleanup, and final insertion into production systems.

To keep the system stable, the migration ran in controlled batches of 2,000–5,000 records. Each batch was wrapped in transactions, allowing the team to maintain consistency and roll back changes if needed.

To maintain continuity:

  • Migration runs were scheduled during off-peak hours
  • Performance metrics were continuously monitored
  • Retry logic handled transient failures
  • Delta migrations captured changes during migration

After the main migration, bi-directional synchronisation was implemented between legacy and new systems to ensure a smooth transition. This allowed the team to migrate large volumes of live production data without interrupting payment operations.

Measurable results

The migration delivered operational improvements across the platform:

  • 7+ million consumer records migrated
  • 140+ million transactions migrated
  • 500+ merchants unified under a single API
  • Zero downtime
  • Zero data loss

Operational changes included:

  • Single integration point for merchants
  • Faster onboarding for new merchants
  • Reduced maintenance overhead
  • Simplified platform architecture
  • Improved long-term scalability
Consumer records migrated
5.7+ million
Transactions migrated
140+ million
Merchants unified
500+
Downtime
Zero
Data Loss
Zero
Project Duration
~1.5 years
Team Size
4 specialists

“I’m most proud that we successfully migrated 5.7 million consumer records, 500+ merchants and 140+ million transactions to the new platform with zero downtime and zero data loss — all while the production systems continued serving real transactions. Building the migration tooling from scratch was a significant engineering challenge, but it gave us the precision and control needed to handle complex data transformations across heterogeneous databases and deliver a seamless transition for merchants and consumers.”

Viktors Telle
Lead Engineer, Helmes

Technologies

Backend & Data:

  • .NET 8 (SqlBulkCopy, Polly, Dapper, SqlClient, MySql.Data)
  • Microsoft SQL Server
  • MySQL

Infrastructure & DevOps:

  • Azure
  • Docker
  • Kubernetes
  • Azure DevOps

Future outlook

Following the migration, Helmes continued supporting the platform through stabilisation activities and new feature development.

The project also led to an expanded collaboration. Based on the successful migration, the client increased its engagement with Helmes, bringing additional specialists into other product teams, including mobile application development.

The consolidated platform now provides a stronger foundation for future growth and continued product development.

Get in touch

Modernising financial platforms often starts with difficult questions:

  • How do we simplify without disrupting operations?
  • How do we migrate safely at scale?
  • How do we consolidate overlapping systems without impacting customers?

Whether you’re modernising legacy fintech platforms, integrating acquired solutions, or consolidating systems into a single product, Helmes helps you make practical decisions and execute them safely.

Let’s talk.

Get in touch

Get in touch

Gert Miltop
Business Development MENA Region
+372 522 4646
Contact us