Plati Po Miru — rethinking the top-up flow

Plati Po Miru — rethinking the top-up flow

A deep-dive redesign of the most critical flow in the product — the top-up. Every state, every edge case, proposed as a complete dev-ready specification.

RoleSole Product Designer
TeamOnly designer · product, project & marketing team
Timeline2024
200k
MAU depend on this flow

Topping up is the most critical action in the product — no top-up, no payment. At 200k MAU the flow still failed at basics: an alphabetic keyboard on a number field, no quick amounts, a desktop QR that only worked on mobile. I redesigned it end to end — every state and edge case — as a complete, dev-ready proposal.

I moved bank selection in-app, so users skip the unbranded hand-off.

Before: tap → external redirect → pick a bank by hand. Now: choose the bank inside the app → deeplink straight into it. And the app remembers the bank, so a repeat top-up is 2–3 taps.


I rebuilt amount entry, so a number field stops behaving like a text field.

Quick-amount chips, a readable input, a numeric keypad only. Less friction, fewer errors.


I designed status screens, because the old flow had none.

Users paid and saw no confirmation, and no decline screen either. I designed the full set — success, pending, decline — plus a fallback: if the deeplink fails, the flow drops back to the redirect instead of dead-ending.


Why it’s here

Not shipped — included because it shows how I take a critical flow apart: map every state, design the failures as carefully as the happy path, degrade gracefully when the infrastructure doesn’t cooperate.

Пополнение — самое критичное действие в продукте: нет пополнения — нет оплаты. При 200k MAU флоу спотыкался на базовом: буквенная клавиатура на числовом поле, нет быстрых сумм, десктопный QR работал только на мобилке. Я переспроектировал его от и до — каждое состояние и edge case — как полную, dev-ready спецификацию.

Перенёс выбор банка в приложение, чтобы убрать небрендированный переходник.

Раньше: тап → внешний переходник → выбор банка вручную. Теперь: выбор банка внутри аппа → диплинк сразу в него. И приложение запоминает банк — повторное пополнение в 2–3 тапа.


Пересобрал ввод суммы, чтобы числовое поле перестало вести себя как текстовое.

Чипы быстрых сумм, читаемый ввод, только цифровой numpad. Меньше трения, меньше ошибок.


Спроектировал экраны статусов, потому что в старом флоу их не было.

Пользователь оплачивал и не видел ни подтверждения, ни экрана отказа. Я сделал полный набор — успех, ожидание, отказ — плюс fallback: если диплинк не сработал, флоу откатывается на переходник, а не встаёт в тупик.


Почему это здесь

Не в проде — включено, потому что показывает, как я разбираю критический флоу: размечаю каждое состояние, проектирую отказы так же тщательно, как happy path, и слежу, чтобы всё деградировало плавно.