IT for FinTech and Payment Companies

Two generations of a high-load digital asset platform

A legacy core of one hundred and thirteen tables that we maintain, and a new system with balances, user-to-user deals and identity checks.

database tables in the legacy platform we maintain
113
modules of a third-party core mapped without sources
143

Challenge

Both of the hard kinds of work met here at once.

The first is a live platform on a closed third-party engine: one hundred and forty-three modules, one hundred and thirteen tables, part of the core unreadable by design. Behaviour is established by experiment, and the system moves real money every day.

The second is a new generation written from scratch, which has to be safer than its predecessor in the places where the predecessor relied on luck.

Solution

We did not rewrite the legacy platform for the sake of rewriting it. We took it apart, documented what experiment could establish, and maintain it in targeted pieces, starting with payment integrations.

The new generation was built around the two things that decide everything here: balance correctness and key protection. Operations are idempotent, a repeated callback does not credit twice, and concurrent debits cannot push a balance below zero. Keys are stored encrypted, with the encryption key outside the repository.

Architecture and implementation

What was done:
· mapping and documenting the legacy core, closed modules included
· maintaining payment integrations on both platforms
· an incoming operations flow with automatic crediting
· withdrawals behind a multi-step check, and user-to-user deals that lock funds
· identity checks and anti-money-laundering controls

Stack: Laravel and PHP, PostgreSQL, Redis, plus the inherited environment of the older platform.

Result

Both platforms are running. The value here is not in the subject area but in two skills that rarely appear together: holding load and money in a new system, while maintaining somebody else's, where there is neither documentation nor access to part of the source. The second usually costs more than the first.
IT for FinTech and Payment Companies
2021 year the central bank registered the institution

A licensed payment institution built from nothing

A complete payment company built for a central bank licence: the settlement core, merchant and agent back offices, and client apps for iOS, Android and Telegram.

iOS Android Telegram Bot API PHP
IT for FinTech and Payment Companies
50 self-service terminals in one network

Fifty self-service terminals and the billing behind them

Kiosk software that takes banknotes, clears payments and defends itself. Fifty terminals in Andijan ran on one billing system.

PHP MySQL Bootstrap
IT for FinTech and Payment Companies
almost 10 years the product has been live and handling payments

A multi-currency wallet for cross-border payments

A wallet people abroad use to pay for services back home: top-ups and withdrawals, payments through aggregators, identity checks, limits and referrals.

NestJS TypeScript Next.js PostgreSQL

Have an idea for a new product, or need to grow an existing one?

Tell us about the task. We will study it and propose an option that makes sense technically and economically.

We reply within one business day · Telegram @sbunyod

Two generations of a high-load digital asset platform Discuss a project