Case study · Product · Design · Development · 2026

ReloFast.

Investment migration, end to end: site, Telegram bot, client cabinet and admin panel on one API.

ProductUX / UIDevelopmentReferral economy
relofast · programmes
Programme catalogue with filters by type, region and budget
relofast · passport index
Interactive passport index with search and sorting
relofast · home
ReloFast home page in English: hero with the headline Freedom to live anywhere
3
languagesRU · EN · 中文 — one switch,
instant re-render
6modules in one ecosystem
20site pages
3languages: RU · EN · 中文
9application statuses
5referral levels
41countries in the passport index
Overview

A digital platform for second citizenship and residence by investment — where the client, the partner and the manager finally work in one loop.

Web · Telegram · APIPlatformRU · EN · 中文Languages2026Year
FormatProduct · design · development
StackNestJS · React · PostgreSQL
NicheCitizenship & residence by investment
Read the full story

ReloFast is a digital platform for investment migration — second citizenship and residence permits through investment. It leads the client through the whole immigration service funnel, from the first consultation to approval by the authority.

Before, it lived in chats, spreadsheets and scattered tools. A single platform was built where the client, the partner and the manager work in one loop: applications and documents, staged payment, referral accruals and analytics are linked and automated.

The public face of the product is a three-language marketing site. Behind it sit a Telegram bot, a client app with a cabinet, document flow and payments, and an admin panel — all on a shared API.

Clients: entrepreneurs and families relocating internationally. Growth: a built-in five-level partner programme. Payments: staged, via Yookassa.

Marketing site

20 pages. One visual language.

Dark theme, lime accent, Unbounded and Manrope, one shared frame.

20
pagesHome · Programmes · Passport index
Research · News · Offices…
The brief

A funnel that lived in chats. One platform instead.

01 · Brief

A dozen scattered tools

02 · Approach

One loop

03 · Outcome

Built to scale

Read the full story

The brief. ReloFast leads the client through the whole immigration service funnel, from first consultation to approval by the authority. Before, it lived in chats, spreadsheets and scattered tools.

The approach. A single platform where the client, the partner and the manager work in one loop: applications and documents, staged payment, referral accruals and analytics are linked and automated.

The outcome. Six modules on a shared API: a three-language site, a Telegram bot, a client cabinet, an admin panel, a backend and a referral network — ready for international markets out of the box.

Three languages

One switch. Three languages, instantly.

Our own RU / EN / 中文 engine re-renders the page and remembers the choice; a CJK font fallback keeps Chinese correct.

Home page hero in Russian
RURussian
Home page hero in English
ENEnglish
Home page hero in Chinese
中文Chinese, with the CJK font fallback
relofast · home, top to bottom
ReloFast home page from hero to the How we work section
Home page on a 390 px phone
Programme catalogue on a 390 px phone

The same pages at 390 px.

Design system

Dark theme, lime accent, reveals and micro-animations.

Catalogue & data

Filters by type, region and budget; cards pulled from the public API.

How the site is built

Design system. Dark theme, lime accent, Unbounded and Manrope, reveals and micro-animations. One header and footer frame is injected into every page.

i18n engine. Our own RU / EN / 中文 switcher with instant re-render and a remembered choice. A CJK font fallback keeps Chinese rendering correctly.

Catalogue and data. Filters by type, region and budget. Programme cards with flag, price and term are pulled from the public API. An interactive passport index covers 41 countries.

All 20 pages: Home, Citizenship, Residence, Programmes, Programme page, Real estate, Services, Private clients, Governments, Partners, Research, Report, Passport index, News, Article, Events, About, Offices, Contacts, Legal.

Marketing site screens were captured from the project sources.

Product logic

From application to passport.

Nine statuses on the manager’s Kanban — mirrored in the client cabinet and in Telegram.

01NewApplication created
02DocumentsClient uploads files
03ReviewManager moderates documents
04Awaiting paymentPayment requested
05PaidPartner bonuses accrue as frozen
06SubmittedThe case is filed with the authority
07ApprovedBonuses unfrozen · irreversible
BranchesNeeds rework → back to the authority stageRejected → frozen bonuses cancelledRefund → frozen bonuses cancelled

Only approval unfreezes partner bonuses.

Referral economy

Five partner lines, computed instantly.

The ancestor tree lives in a closure table, so the whole chain up to line five is one lookup.

Partner tree · schematic Line 5Line 4Line 3Line 2Line 1Client pays the final stage bonus · frozenbonus · frozenbonus · frozenbonus · frozenbonus · frozen
Closure table · schematic
Depth 1Line 1 partner → Client
Depth 2Line 2 partner → Client
Depth 3Line 3 partner → Client
Depth 4Line 4 partner → Client
Depth 5Line 5 partner → Client

Every ancestor–descendant pair is stored with its depth.

Stages

Staged payments

₽ → €

Deposits

Queue

Payouts

Ledger

Audit

How the money moves

The ancestor tree is stored as a closure table, so the whole chain up to the fifth level is computed instantly — one lookup instead of a walk up the tree. Bonuses accrue at the final payment stage as frozen and are unfrozen only when the application is approved. Line percentages are configurable per product.

  • Staged payments — the cost is split into stages; the client pays each one from the balance or via a Yookassa QR.
  • Deposits — paid in roubles, credited in euros at the rate; the conversion happens on the backend.
  • Payouts — a withdrawal request goes into a moderation queue before it is paid.
  • Audit — every balance operation is written to an append-only ledger; every admin action to an audit log: before and after, who and when.
Bot · cabinet · analytics

Always in touch — in Telegram and in the cabinet.

Telegram bot · schematic
  1. 01WelcomeYour route, guided stage by stage.
  2. 02Application statusDocuments → Review
  3. 03Document acceptedYour passport scan has been accepted.
  4. 04Payment requestThe next payment stage is ready.
Open the appSubmit documentsMy applicationsPartnersBalancesSupport
Client cabinet · schematic
My applicationAwaiting payment · step 4 of 7
Stage 1Paid
Stage 2Pay via QR
Final stageLater
PassportAccepted
Supporting docsUnder review
BalancesAvailable · Frozen
relofast · passport index 2026
Passport Index 2026 page with search and sorting
Content & analytics

A ranking that works as a tool.

Search and sorting across 41 countries.

Read the full story

The bot keyboard and notification types, and the cabinet structure above, are diagrams — not screenshots.

  • Passwordless login — sign-up and sign-in through the Telegram Web App; the referral code is bound via a deep link on first start.
  • Notifications — a status change, a document accepted or rejected, a payment request arrive in the chat instantly.
  • Documents — files are uploaded to the application through secure presigned links to S3 / R2 and moderated by a manager.
  • Cabinet and balances — the client sees progress, pays stages and follows bonuses and operation history, like a fintech app.

Research, flagship reports, news and events build trust and SEO. The interactive passport index turns a ranking into a working tool for choosing a second citizenship.

Architecture

Six modules, one shared API.

Every surface talks to one NestJS backend.

  1. 01
    SiteMarketing site
  2. 02
    BotTelegram bot
  3. 03
    ClientClient cabinet
  4. 04
    TeamAdmin panel
  5. 05
    CoreBackend / API
  6. 06
    GrowthReferral network
Module by module

Stack: NestJS, Prisma ORM, PostgreSQL, React SPA, Telegram · grammY, Yookassa, S3 / R2, Railway, JWT auth, Prisma migrations.

  • Marketing site — 20 static pages, a programme catalogue, three languages (RU / EN / 中文) and one design system.
  • Telegram bot — built on grammY: login and registration via the Telegram Web App, referral code binding via deep link, push notifications on application status.
  • Client cabinet — a React SPA: applications, document upload, staged payments, balances and bonuses.
  • Admin panel — a React SPA: a Kanban of applications, products, document and review moderation, payouts and granular manager permissions.
  • Backend / API — NestJS + Prisma + PostgreSQL: business logic, statuses, an audit log and a public API for the site.
  • Referral network — five lines, an ancestor tree in a closure table, freezing and unfreezing of bonuses, withdrawals.
Outcome

A product built to scale.

One loop

Client, partner, manager

Audited

Transparent funnel

Growth

Partner programme

Global

International-ready

Thank you.

A similar product — site, bot, app and admin panel on a shared API — designed and built for your niche.

Create bold.
Deliver better.

See our workGet in touch