CodeLamda Technologies
HomeServicesWorkAboutCareerContact
Book a call
CodeLamda Technologies

Transforming ideas into scalable digital products. We help startups and businesses build MVPs, AI solutions, and modern applications with speed, quality, and innovation.

Quick Links

  • Home
  • Services
  • Portfolio
  • Blog
  • About
  • Contact

Our Services

  • MVP Development
  • AI Development
  • Web Development
  • Vibe Code Audit
  • CleverTap Integration

Locations

  • USA Software Development
  • UK Software Development
  • UAE / Dubai Software Development
  • Australia Software Development
  • All locations

Contact Us

7th Floor, APMC, Krushi Bazaar,
704 Sahara Darwaja, Begampura,
Surat, Gujarat 395003

contact@codelamda.com
+91 99099 80048

© 2026 Codelamda Technologies Pvt. Ltd. All rights reserved.

Privacy Policy•Terms of Service
  1. Home
  2. /
  3. Portfolio
  4. /
  5. Aperture Payment
FinTech / Payments Infrastructure · Case study

One Integration. Every Payment Provider.

Aperture is an all-in-one payment gateway: merchants integrate once and route transactions across every major provider. No more juggling separate SDKs, credentials, or reconciliation dashboards per gateway — one API, one dashboard, one flow.

Ongoing20+ members2024Global
Visit website Dashboard
Aperture Payment hero image
Eliminates
Impact
Ongoing
Duration
20+ members
Team
2024
Launched
The challenge

What we set out to solve

Merchants adding payments face a tax: one SDK per provider, one credential vault per environment, one reconciliation dashboard per gateway — and a fresh engineering project every time cost, coverage, or availability forces a new provider.

The solution

How we built it

A provider-agnostic payment layer that exposes a unified REST API + merchant dashboard. Plug in once and route transactions by cost, coverage, success-rate, or regional availability. Built-in reconciliation rolls up every provider into one ledger.

Technical architecture

Provider-agnostic routing engine with an event-sourced payment ledger

Aperture is a payment orchestration layer: merchants integrate one REST API and dashboard, and Aperture routes each transaction across many payment providers by cost, coverage, success rate or region. It runs as a set of TypeScript services on Kubernetes with Kafka carrying every payment event, PostgreSQL as the ledger and Redis for idempotency and routing state. Splitting the API, routing engine, provider adapters, webhook dispatcher and reconciliation into separate services lets adapters fail or be added without touching the merchant-facing path.

Isometric diagram showing a merchant terminal and dashboard on the left, an API gateway with a shield, a prism-shaped routing engine splitting one beam into many, an event-streaming rail, a ledger database and cache, a webhook dispatcher, and a row of external provider blocks on the right over a container cluster.
Isometric diagram showing a merchant terminal and dashboard on the left, an API gateway with a shield, a prism-shaped routing engine splitting one beam into many, an event-streaming rail, a ledger database and cache, a webhook dispatcher, and a row of external provider blocks on the right over a container cluster.

Clients

Merchant systems call one API, and merchant teams operate everything from a single dashboard.

  • Merchant server-side integrations
  • Unified SDK
  • Merchant dashboard
  • Hosted checkout pages

API & edge

A single authenticated gateway normalises every provider's quirks behind one request and response contract.

  • Unified REST API
  • API key and HMAC authentication
  • Idempotency key handling
  • Rate limiting and request validation

Core services

Stateless TypeScript services on Node.js split the payment lifecycle into routing, execution, notification and reconciliation.

  • Smart routing engine
  • Provider adapter services
  • Retry and failover orchestrator
  • Webhook dispatcher
  • Reconciliation service
  • Dashboard API

Data

Every state change is an event on Kafka, projected into a PostgreSQL ledger and cached for fast routing and duplicate checks.

  • Kafka payment event streams
  • PostgreSQL transaction ledger
  • Provider settlement records
  • Redis idempotency and routing cache
  • Encrypted credential vault

Integrations

Each external payment provider sits behind its own adapter that speaks the provider's API and maps results to Aperture's model.

  • Payment provider adapters
  • Provider webhook receivers
  • Settlement file importers
  • Merchant notification channels

Infrastructure & delivery

Docker images on Kubernetes in AWS let each service scale and deploy independently with full observability.

  • Kubernetes on AWS
  • Docker service images
  • Managed PostgreSQL and Redis
  • Managed Kafka
  • Metrics, tracing and alerting
Request lifecycle
  1. 01

    Merchant calls the unified API to create a payment with an idempotency key; the gateway authenticates and validates the request.

  2. 02

    The routing engine scores eligible providers on cost, region, method coverage and recent success rate and picks a primary and fallbacks.

  3. 03

    The chosen provider adapter translates the request, calls the provider, and emits the result as an event on Kafka.

  4. 04

    On a soft failure or timeout, the retry orchestrator re-routes to the next provider within the same merchant-visible payment.

  5. 05

    Provider callbacks arrive at webhook receivers, are verified and normalised, and update the ledger through the event stream.

  6. 06

    The webhook dispatcher delivers signed status events to the merchant with retries; the dashboard shows the same timeline.

  7. 07

    The reconciliation service matches ledger events with provider settlement records and surfaces mismatches in one view.

Key decisions

Adapter per provider behind one canonical model

Every provider has its own payload, status codes and webhook shapes; isolating that in adapters is what lets merchants add or swap a provider without a new integration project.

Kafka as the payment event backbone

Payments change state asynchronously across providers, webhooks and settlements; an append-only stream gives replayability and keeps the ledger, dashboard and reconciliation consistent.

Idempotency at the edge, enforced in Redis

Merchants retry, providers time out and networks duplicate; a key-checked fast path guarantees a payment is never charged twice regardless of how many times it is submitted.

Kubernetes with independently deployable services

Provider adapters change far more often than the merchant API; separate deployments let the team ship adapter fixes without redeploying or risking the core routing path.

Security & compliance
  • Merchant authentication with scoped API keys and HMAC-signed requests; outbound webhooks are signed so merchants can verify them.
  • Provider credentials are stored in an encrypted vault and injected into adapters at runtime, never exposed through the API or dashboard.
  • Sensitive payment data is tokenised and routed to providers so the platform minimises its own PCI DSS scope.
  • All data is encrypted in transit and at rest with per-merchant isolation in the ledger.
  • Every state transition is an immutable event, giving a complete audit trail for disputes and compliance reviews.
Tech stack

Built with the right tools

Node.js
Node.js
TypeScript
TypeScript
PostgreSQL
PostgreSQL
Redis
Redis
Kafka
Kafka
AWS
AWS
Docker
Docker
Kubernetes
Kubernetes
“CodeLamda built the core payment-routing engine and merchant dashboard. Clean API surface, thoughtful reconciliation model, production-grade from sprint two.”
AM
Aman M
Founder, Aperture
More case studies

Keep exploring our work

View all
BritBox case study
OTTOngoing

BritBox

BritBox – Mobile Streaming Engineering Case Study

Maritime Optima case study
SaaSOngoing

Maritime Optima

Maritime Optima – Ship & Trade Intelligence Platform

BillBxa AI case study
FinTechOngoing

BillBxa AI

BillBxa – AI Bill Payment Automation

Your turn

Have a project like this?

We ship MVPs, AI agents, and production systems in 8 weeks. Bring the rough spec — we'll scope the build inside a week with a fixed timeline and quote.

50+
MVPs shipped
8 wks
Avg. delivery
$20M+
Raised by clients
30 days
Post-launch support
30-minute callBook a discovery callPrefer emailSend us a briefBack to the full portfolio