All case studies
Case Study · SaaS · Payment

Payment API for 6 million users.
Stabilized, scaled, delivered.

A grown payment infrastructure carrying too much technical debt. Legacy stabilized, new Go microservices built alongside it, both systems cleanly integrated, without interrupting live payments.

Book a call
Book a call
VPN SaaS payment infrastructure
6M+users
–15%payment drop-offs
–75%deployment time
The starting point

A system that had stopped scaling.

An international SaaS product with several million customers ran a payment API that had originally been built for a different order of magnitude. The system worked, but every load spike was a risk. New payment provider integrations took weeks. The codebase had grown, the dependencies were opaque, and deployment was a manual process that cost nerves.

At the same time the product was meant to scale internationally. New markets, new payment providers, new requirements. The existing system had not been built for that.

The challenge

Modernization while it keeps running.

A full rewrite was not an option. The system processed thousands of transactions a day, an outage would have meant direct lost revenue. At the same time the architecture had to be modernized from the ground up to hit the scaling targets.

So the challenge was not only technical but also organizational: modernization without interrupting operations, new functionality alongside the stable old system, and all of that over several years without destabilizing anything.

My approach

Stabilize.
Build in parallel.
Integrate cleanly.

01
Stabilize the legacy backend

Test coverage introduced, critical dependencies documented, deployment automated. Only once a system runs stably can you sensibly develop it further.

02
Microservice architecture in Go

Not as a one-shot replacement, but step by step. New services in Go, existing PHP components integrated over gRPC. Kubernetes on AWS for orchestration, CI/CD pipelines with GitHub and GitLab for automated deployments.

03
Payment provider integration

Stripe, Braintree, Adyen, Paymentwall, Chargebee and Amazon Pay abstracted behind clean API layers. Every provider its own service, replaceable without touching the system as a whole.

04
Observability from day one

Grafana, Prometheus, CloudWatch and Sentry for monitoring, so problems become visible before they turn into outages.

Does your system sound familiar?

Let us find out in 30 minutes whether I can help.

Book a call
Book a call
The outcome

Stable. Scalable. Ready for new markets.

6M+

users

The system carries the full load today, stably and reliably.

–15%

payment drop-offs

Through a stabilized and optimized payment infrastructure.

–75%

deployment time

Through fully automated and optimized CI/CD pipelines.

A sustainably scalable, highly available payment infrastructure that makes fast international growth possible. The system runs stably, new payment providers can be integrated in days instead of weeks, and the development team can make changes without fearing unknown side effects.

Technologies used

Proven tools. No experiment.

Backend
  • Go
  • gRPC
  • Laravel
  • PHP
  • Zend Framework
  • Phalcon
  • REST
  • Microservices
Infrastructure
  • AWS EC2
  • RDS
  • SQS
  • SNS
  • Lambda
  • Kubernetes
  • Terraform
  • Docker
  • GitHub Actions
  • GitLab CI
Observability
  • Grafana
  • Prometheus
  • CloudWatch
  • Sentry
Payment
  • Stripe
  • Braintree
  • Adyen
  • Paymentwall
  • Chargebee
  • Amazon Pay
Previous case studyAdTech traffic attribution serviceNext case studyGlobal AdTech platform