All case studies
FinTech · Confidential — under NDA

From a single-server monolith to a platform that scales.

PCI compliance, multi-currency settlement and horizontal scale, all needed at once. We re-architected the payment core in place — in production, behind a feature flag, with no downtime at cutover.

Discovery to production cutover2 min read
PCI DSS
Type 1 ready
This month
high transaction volumens
Today, 2:14 PM
Payment Successful
Settled to merchant
$2,481.20
Multi-leg · 3 currencies
Routed via
USD
EUR
GBP
INR
JPY
AUD
Tokenisation12ms
Risk score0.04
SettlementOK
The Challenge · 01

What was breaking

A single Postgres instance behind a Node.js monolith — fine at launch volume, timing out as throughput grew. Three pressures landed together: auditors needed PCI DSS scope reduction, engineering needed horizontal scale, and logging was noisy enough that incident response depended on whoever happened to know the system best.

Our Approach · 02

The technical bets we made

  • 1

    Split the monolith into 4 services along the payment lifecycle (intake, fraud screening, settlement, reconciliation) — kept synchronous APIs at the boundary, async messaging internally via Redis Streams.

  • 2

    Tokenised every PAN at intake through a dedicated vault service in a separate VPC, reducing PCI DSS scope from the whole platform to two services in one VPC — which is what makes the audit tractable at all.

  • 3

    Moved settlement reconciliation onto a partitioned Postgres cluster with per-currency partitions, so reconciliation scans one partition instead of the whole table.

  • 4

    Built a real-time fraud-screening pipeline on Redis feature vectors, scoring asynchronously so a slow model never blocks the payment path, and holding flagged transactions before settlement.

  • 5

    Set up structured logging (OpenTelemetry → Grafana Loki) and a runbook-driven on-call rotation, so detection stops depending on who happens to be awake.

Tech Stack · 03

What powers this system

Node.js
TypeScript
PostgreSQL
Redis
AWS
Kubernetes
OpenTelemetry
Grafana
Terraform
Timeline · 04

From kickoff to production

Week 1
Discovery

Architecture audit, PCI scope analysis, threat model session with the founder + CTO.

Week 2-3
Design

Service decomposition diagrams, API contracts, infra plan. Shipped a working tokenisation vault end of week 3.

Week 4-11
Build

2-week sprints, weekly demos, gradual traffic migration behind a feature flag. Shadow-tested on production traffic for 2 weeks before cutover.

Week 12-13
Cutover

Zero-downtime migration over a weekend window, followed by the auditor walkthrough against the reduced scope.

Engineering outcome · 05

What the architecture changed

The ceiling moved from a single vertical instance to horizontal capacity that grows with spend rather than stepping. PCI scope shrank from the whole platform to two services — the difference between an audit that touches every deploy and one that touches a boundary. And incident detection became a property of the system, through structured traces and alerts, rather than a property of the on-call engineer.

Need something similar?

Book a free 30-min architecture audit. We'll sketch the system you need.

Book a 30-min Architecture Audit