Skip to content
Epic Software Labs
← All work

Payments & banking infrastructure

Tier-1 banking payments platform

Built payment processing flows for a framework licensed to Tier-1 banks — SEPA Credit Transfer and SEPA Instant, on an event-driven core designed to survive the scrutiny that comes with moving other people’s money.

Role
Payments engineer on the vendor platform team
Stage
Enterprise / Tier-1 banking
Sector
Payments & banking infrastructure
A heavy machined gate block with one narrow calibrated aperture, flanked by guide rails — exactly one thing passes at a time.

Outcomes

Citi, NatWest, BNP Paribas, J.P. Morgan
Tier-1Citi, NatWest, BNP Paribas, J.P. Morgan
Scheme-conformant messaging
ISO 20022Scheme-conformant messaging
Credit Transfer + Instant flows
SEPACredit Transfer + Instant flows
Event-sourced processing
Exactly-onceEvent-sourced processing

Context

The Icon Payments Framework is a platform banks adopt to modernise payment processing without rebuilding from scratch. Each deployment lands inside a different bank’s estate, so the framework has to be configurable at the scheme and message level while staying a single maintainable codebase.

The problem

Payment flows have no forgiving path. A message must be processed exactly once, remain traceable end to end for audit, conform to scheme rules that differ per country and per bank, and hit instant-payment latency ceilings measured in seconds — all while the same codebase serves institutions with very different internal systems.

  1. 01

    Implemented SEPA Credit Transfer and SEPA Instant flows

    Scheme-conformant processing paths built against ISO 20022 message definitions, covering the happy path plus the rejection, return, and recall cases that scheme rules mandate.

  2. 02

    Built on an event-driven, actor-based core

    Akka and Kafka for the processing pipeline — an event log that gives exactly-once semantics and a replayable audit trail rather than mutable state a support engineer has to reconstruct.

  3. 03

    Kept the framework configurable per institution

    Extension points so a deployment adapts to a bank’s estate through configuration and plug-in components instead of a fork, which is what keeps one codebase serving many institutions.

  4. 04

    Containerised deployment into bank environments

    Kubernetes-based packaging so the platform deploys consistently across the varied and tightly controlled infrastructure banks run internally.

Stack

  • Java
  • Spring Boot
  • Akka
  • Kafka
  • ISO 20022
  • Kubernetes

Capabilities applied