Skip to content
Offcanvas right

Case Studies / Custom PSD2-compliant API

Custom PSD2-compliant API

An individual PSD2-compliant API for one of the Nordic bank’s own network

  • Custom Software Development
  • 2019
  • Industry: FinTech
Custom PSD2-compliant API

Initial Task


Alongside the implementation of PSD2-compliant “aggregator” API for Nordic banks, one of the bank networks addressed us with an untrivial request to individually set PSD2-compliant API for their own network.

Transactions coming from the new API should’ve been synchronized with the legacy client’s ledger.

Technology stack


OAuth2 Spring Boot Docker AWS Java 12



Strict Deadlines

The development team had to meet very strict deadlines adjusted by the EU legislation coming into force.


In-Memory and Distributed Caching Mechanisms

As the data coming from the new API had to be synchronized with a legacy ledger with poor performance, we've had to implement in-memory and distributed caching mechanisms to meet the performance requirements.


OAuth2 + Open Id Connect

The task implied a personal approach and was complicated by plenty of work with Securing APIs with OAuth2 + Open Id Connect, demanding solid expertise and thinking out of the box.


High-End Bulk Payment API

Implementation of high-end Bulk Payment API providing fast and error-free performance was quite challenging due to huge amount of input data that required compressing, splitting and parallel processing.



Implementation of Account API

As account is the core domain entity, it was natural to start with Account API. It’s implementation opened us a possibility to proceed with implementation of payment functionality.


Implementation of Payment API

During this stage we’ve been implementing SEPA and Cross-Border payment functionality according to PSD2 regulation.


Integration with Legacy Ledger

Customer had existing ledger system that hold information about transactions and accounts that were created through their legacy API. Customer wanted to keep the new APIs in-sync with legacy Ledger DB, that’s why we needed to implement a legacy ledger integration layer.


Performance Improvement with Caching

Existing legacy ledger system was rather slow, making operations like “Listing transactions on account” not meeting the performance requirements. That’s why we’ve set up Redis cache that was synchronized with Legacy Ledger DB, allowing us to make much faster lookups of historical data.


Implementation of Bulk Payment API

This API was supposed to support payloads with large number of payments. Thus, we’ve implemented an API that allowed receipt of compressed input, that was further split into chunks, which were processed in-parallel.

Overall Result

1. The team managed to keep to a very strict schedule, thus preventing the Client from receiving fines from the government.

2. The required PSD2-compliant API was successfully launched and the entire functional set was implemented the way that adding new custom features was not a problem at all.

3. The executed work has become a good basis for future similar projects as the use of similar code is now available for the deployment of the other client’s projects.

Fire away
your ideas!

Let's discuss our possible synergy

    By clicking Send you acknowledge that you have read and that you consent to be bound by Touchlane Terms of Use and to processing data in accordance with our Privacy Policy and Cookies Note