IT for FinTech and Payment Companies

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.

the product has been live and handling payments
almost 10 years

Challenge

The product began as a payment aggregator on an off-the-shelf platform. A few years in, the box ran out: every new currency, gateway and limit rule ran into decisions somebody else had made before us. It needed a full move to our own platform, without taking the service down and without losing years of accumulated search addresses.

Solution

The wallet was rewritten from scratch, and the old system was kept as a reference for partner protocols. That saved months, because payment API documentation rarely describes what actually happens.

Underneath sits a rule we never bent: any money operation runs as a function inside the database rather than in application code. The database provides atomicity, and double spending stops being a question of how careful a developer was that day. Money is never held in floating point either.

Architecture and implementation

What the system covers:
· top-ups and withdrawals through processing gateways
· payments for services through aggregators, kept in a separate register
· multi-currency balances with identity checks and tiered limits
· background queues for the slow operations that depend on partners

Stack: NestJS and TypeScript on the server, Next.js in the user's office, PostgreSQL with calculation functions, Redis for queues.

Result

The product is almost ten years old and still serves people who live in one country and pay in another. It is our longest-running payment service, and the most instructive one: in ten years, everything that can happen to money in transit has happened here at least once.
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
4 subsystems: private API, public JSON-RPC, agent office, documentation

A multi-tenant platform for an agent network, with a public API

Dealers take payments for services through providers, earn commission or rewards, and work in strictly isolated tenants. Integrators get a public JSON-RPC interface.

NestJS PostgreSQL Redis React

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

A multi-currency wallet for cross-border payments Discuss a project