Optima Kassa — фискальное
кассовое решение

FinTech / POS-систем (Point of Sale)

Компания

Оптима Банк

Роль

Продуктовый дизайнер
UX\UI

Время реализации

11 месяцев

Дата

Янв 2025 - Нояб 2025

Optima Kassa — один из трёх ключевых продуктов Optima Bank. Если Optima24 — это мобильный банкинг для физических лиц, а Optima Business — сервис для управления бизнесом, то Optima Kassa сфокусирован на фискализации продаж и выводе бизнеса из «серой зоны».

Государственная налоговая служба стремится контролировать денежные потоки и сократить количество точек, работающих в серой зоне

моя роль

Моя роль как дизайнера заключалась в итерационном проектировании продукта Optima Kassa:

  • Итерация 1 — проектирование базы и прохождение сертификации.

  • Итерация 1.1 — запуск первой версии (выкат на прод).

  • Итерация 2 — работа над ошибками, оптимизация дизайна и исправление проблем разработки.

проблемы

Стать ЦТО и предоставлять услуги кассовых решений с поддержкой ККМ. Банк уже предлагает открытие счетов, оплату по QR-кодам и инструменты для продвижения товаров. Статус ЦТО позволит банку увеличить доход за счёт комиссий и кросс-продаж кредитных продуктов


Оптимизация расходов на эквайринг. В данный момент банк выплачивает комиссию партнёру за использование POS-терминалов с ККМ. Собственная сертификация позволит банку полностью контролировать софт и отказаться от услуг посредника


Подготовка к изменениям в законодательстве. Ожидаемое усиление налогового контроля (рейды на рынки и в магазины) создаст массовый спрос на инструменты для прозрачного учёта оборотов и автоматической передачи данных в налоговую службу


Запуск MVP в сжатые сроки. Перед командой стоит задача подготовить продукт к сертификации так, чтобы он соответствовал уровню MVP. Это позволит запустить рабочую версию (прод) спустя всего две недели после получения сертификата

задачи

Изучение требований ГНС и логики взаимодействия приложения с ККМ для определения приоритетного функционала и оценки возможностей быстрой реализации


Проведение конкурентного анализа решений, успешно прошедших государственную сертификацию


Формирование бэклога доработок, необходимых для запуска продукта в промышленную эксплуатацию


Проектирование первого приложения в экосистеме банка, полностью построенного на базе дизайн-системы


Подготовка продукта к сертификации в формате готового к запуску MVP


Взаимодействие с командой дизайн-системы для разработки и внедрения новых компонентов


Регулярная синхронизация и дизайн-ревью с лид-дизайнером

требование ГНС и исследования

Анализ всех требований Государственной налоговой службы для прохождения сертификации и приобретения статуса Центра технического обслуживания — ЦТО. Также велось активное взаимодействие со специалистами из налоговой при возникновении вопросов, которых часто было очень много

главные функции приложения Optima Kassa

Авторизация

Любая кассовая операция в приложении требует открытия смены

Авторизация

Любая кассовая операция в приложении требует открытия смены

Смена и продажа

Любая кассовая операция в приложении требует открытия смены

Смена и продажа

Любая кассовая операция в приложении требует открытия смены

Точки, кассы и кассиры

Это сущности для управления организацией ИП или ОсОО

Точки, кассы и кассиры

Это сущности для управления организацией ИП или ОсОО

История смен и операций

Продажа, покупка и возвраты сохраняются в истории в виде чека

История смен и операций

Продажа, покупка и возвраты сохраняются в истории в виде чека

Каталог товаров и услуг

Добавление товаров и услуг в каталог позволяет отправлять в налоговую конкретные данные о них

Каталог товаров и услуг

Добавление товаров и услуг в каталог позволяет отправлять в налоговую конкретные данные о них

Кассовые операции и чеки

В приложении, кроме простой продажи, есть ещё 6 кассовых операций

Кассовые операции и чеки

В приложении, кроме простой продажи, есть ещё 6 кассовых операций

авторизация

В приложении «Касса» это была первая версия авторизации, основанная на дизайн-системе Optima Bank. Поэтому изначально было осознание, что придётся переделывать всё после того, как Optima Business придёт к рефакторингу

Из-за требований бизнеса по поводу экосистемы приложений Optima, за основу были взяты приложение Optima Business и его бэкенд. По его логике существует две роли и три различных способа входа:

  • Владелец — это ИП или, реже, ОсОО, который уже является клиентом Optima Business и хочет фискализировать операции

  • Кассир — сначала владелец добавляет его в компанию в Optima Kassa, и он получает временный пароль для входа. При этом он должен быть физическим лицом в Optima24

  • Прохождение цифрового онбординга — если пользователь не является клиентом вообще. Владелец получит ограниченную версию Optima Business с возможностью подключения Optima Kassa, а кассир станет клиентом Optima24

После рефакторинга авторизация в Optima Business и Optima Kassa стала идентичной по UI и логике, что помогло ускорить процесс работы над дизайном и сократить время разработки

Флоу регистрации и авторизации кассира и владельца схожи, различается только начальная точка:

  • Владелец должен подписать официальный договор с банком для открытия Optima Kassa, а вместе с ней — обязательно и Optima Business, так как средства поступают на расчётный счёт. В дальнейшем у него будут единые данные для входа в оба приложения

  • Кассира владелец добавляет в список кассиров в приложении Optima Kassa или в Optima Business. После этого кассир получает временный пароль в Optima24

Владелец — это юридическое лицо, и встаёт вопрос: а должны ли мы заставлять кассира тоже становиться юридическим лицом? Ответ — нет. Кассир проходит через банк как физическое лицо. В случае, если у него не было приложения Optima24, для этого была добавлена логика цифрового онбординга

смена и продажа

Чтобы совершить любую кассовую операцию, необходимо открыть смену. Это требование ГНС, и его нарушать запрещено

Открытие смены — это основное действие перед началом работы, ежедневный шаг для достижения цели. И несмотря на большое количество различных кассовых операций, самой востребованной среди них остаётся «Простая продажа» или продажа через «Калькулятор»

Было принято решение: если кассир открывает смену, его сразу перенаправляет на экран приёма оплаты, так как это его основное действие

В случае с владельцем он остаётся на главной странице, так как его роль имеет более широкую функциональность и другие цели: кассир — продаёт, а владелец — управляет

точки продаж, кассиры и кассы

Кассир занимается продажами, и это его primary-цель. Но с владельцем такой подход не сработает, так как его основная задача — управление. Владелец видит все процессы и управляет своим бизнесом так, как считает нужным

  • В связи с этим была создана страница «Точки» Её основная цель — управление торговыми точками владельца. Здесь он может создавать новые точки, настраивать их, добавлять сотрудников (кассиров), а также создавать кассы

  • Кассы — это сущности для подключения продуктов. В кассу подключается контрольно-кассовый модуль (ККМ) для передачи данных в ГНС. В будущем планируется добавить возможность привязки POS-терминала к кассам

создание точки

После проведения исследований стало ясно, что большое количество полей сразу пугает пользователя, поэтому было принято решение разделить процесс создания точки продаж на несколько шагов Тем не менее, данных требуется всё равно очень много. Причины этому следующие:

  • Требования ГНС, которые запрещено нарушать

  • Ограничения бэка и фронта

  • Время на реализацию

На второй итерации стоит срочная задача по созданию точки продаж: сократить флоу с помощью автоматизации заполнения адреса и пересмотреть релевантность необходимых данных

создание кассы

Точки являются опорным пунктом в приложении, но основную функциональность берёт на себя касса. Касса содержит ККМ, именно на базе ККМ формируются чеки, а в дальнейшем к ней будут подключаться продукты


Для удобства пользователей было реализовано автоматическое создание ККМ при создании кассы Изначально пользователь должен был сначала создать кассу, а затем отдельно отправлять запрос на подключение ККМ Решение об автоматизации было принято из-за основной цели приложения Optima Kassa — фискализации продаж, которая невозможна без ККМ

У кассы есть два важных статуса:

  • Без ККМ — если касса была создана в Optima Business. В приложении Optima Kassa её можно сделать фискальной одним нажатием

  • Снятие с учёта — когда пользователь по какой-либо причине удалил ККМ. Повторно подключить ККМ к этой кассе невозможно (требование ГНС)

добавление кассира

Точки являются опорным пунктом в приложении, но основную функциональность берёт на себя касса. Касса содержит ККМ, именно от ККМ формируются чеки, а в дальнейшем к ней будут подключаться продукты


Для удобства пользователей было реализовано автоматическое создание ККМ при создании кассы. Изначально пользователь должен был сначала создать кассу, а затем отдельно отправлять запрос на подключение ККМ. Решение об автоматизации было принято из-за основной цели приложения Optima Kassa — фискализация продаж, которая невозможна без ККМ

Если кассир отсутствует в системе как клиент (например, у него нет аккаунта в Optima24, Optima Business или Optima Kassa), система сохраняет его номер телефона и отправляет SMS с приглашением пройти цифровой онбординг в Optima24. Как только процесс завершится, профиль будет создан автоматически на основе полученных данных

история смен и операций

Раздел «История» содержит проведённые операции, сгруппированные по сменам. Кассир видит только свои записи, в то время как владелец обладает доступом ко всей истории транзакций организации. Основное назначение раздела — формирование отчётности и реализация функции возврата

Согласно Закону КР «О защите прав потребителей», возврат товара возможен, если он не был в употреблении, сохранены его товарный вид, потребительские свойства, пломбы, фабричные ярлыки, а также имеется товарный или кассовый чек, выданный при покупке. К этому правилу также относятся испорченные товары или товары с истёкшим сроком годности. В таких случаях покупатель имеет право обменять товар, потребовать возврат денег или скидку

возврат продаж и покупки

Функционал продаж предусматривает возможность возврата товара, если он не входит в перечень товаров, не подлежащих возврату и обмену (например, лекарства). Для этого был проведён анализ сценариев возвратов в ритейле, по итогам которого выделено два кейса:

  • Возврат простой продажи — можно вернуть только весь чек целиком, так как в фискальных данных отсутствует детализация по конкретным товарам

  • Возврат продажи из каталога — интерфейс позволяет выбирать отдельные позиции для оформления частичного возврата, так как данные о каждом товаре сохранены в чеке

каталог товаров и услуг

По требованию ГНС в приложение была добавлена возможность создания товаров и услуг. Также реализован функционал для работы со скидками, весовыми товарами и маркировкой

В ходе командного аудита было подтверждено, что продажи через калькулятор являются наиболее востребованным сценарием. Однако для обеспечения соответствия требованиям ГНС при реализации маркированных товаров необходимо использовать каталог. Это также позволяет избежать рисков, связанных с льготным налогообложением: при использовании калькулятора происходит автоматический расчёт по стандартной ставке, что может привести к избыточной налоговой нагрузке на пользователя

кассовые операции и чеки

Каждая кассовая операция сопровождается генерацией фискального чека с QR-кодом ГНС. Логика процесса: пользователь инициирует операцию → бэкенд принимает запрос → данные передаются в ГНС → налоговая возвращает ответ с QR-кодом → приложение генерирует чек об успешной операции

Список кассовых операций:

  1. Простая продажа — внутренняя терминология для обозначения быстрых продаж вне каталога (недискретные позиции)

  2. Каталоговая продажа — реализация товаров или услуг, предварительно созданных в справочнике системы

  3. Покупка — расходная операция (выкуп товара у клиента), доступная только через каталог и наличный расчёт

  4. Внесение — пополнение кассового узла наличными для обеспечения возможности выдачи сдачи

  5. Изъятие — инкассация средств из кассы с формированием соответствующего чека. При отсутствии изъятия остаток автоматически переносится на следующую рабочую смену

  6. Возврат (простая продажа) — аннулирование операции с возвратом полной суммы чека

  7. Возврат (каталог) — сценарий с возможностью выбора конкретных позиций для оформления частичного возврата

было весело делать

Здесь собраны функциональные особенности и требования ГНС, которые являются второстепенными для ежедневных сценариев пользователя, но важны для обеспечения корректной работы системы. Ниже представлены наиболее интересные из них

При первом входе в приложение мы отправляем запрос в налоговую: «Есть ли этот человек в вашей базе?» Если ответа нет, то пользователю сначала необходимо пройти регистрацию налогоплательщика в налоговой.

Сайт Центра технического обслуживания (ЦТО), где пользователь может найти контакты и карту филиалов, является обязательным требованием ГНС. Мы решили использовать этот ресурс как площадку для сбора заявок от новых пользователей

Почему именно заявки? Регулятор планомерно усиливает контроль над торговыми точками, поэтому в ближайшее время предприниматели будут активно искать способы легализации и работы в «белом» правовом поле

Работа над логотипом Optima Kassa проходила в несколько итераций: финальный вариант выбирался совместно продуктовой командой и представителями бизнеса из множества концептов


Теперь в цифровой экосистеме Optima Bank, наряду с Optima Business и Optima24, появился новый участник — Optima Kassa, ставший важным дополняющим звеном в линейке сервисов для предпринимателей

что мы получили в итоге

Визуальная айдентика, программное обеспечение и техническая архитектура полностью подготовлены к патентованию и прохождению обязательной сертификации в ГНС. Мы реализовали все технические и юридические требования, чтобы сразу после включения в государственный реестр продукт был готов к незамедлительному выходу в продакшн

Было интересно работать над таким специфичным продуктом, где приходилось учитывать не только опыт взаимодействия пользователя с приложением и требования бизнеса, но и требования ГНС, а также особенности работы бэка

мои мысли по поводу Optima Kassa

В некоторых проектах, особенно в Кыргызстане, бывает так, что нет доступа к нужным объёмам данных и недостаточно времени для проведения качественных, а иногда и количественных исследований. Поэтому этот проект особенно подчеркнул для меня важность эмпатии и человечности при проектировании: в первую очередь мы создаём продукт не для бизнеса, а для пользователя

P.S. я столько вариантов экранов для проверок сделал, что пришлось создать отдельный файл мусорку, потому что в один день основной файл отказался открываться:) Я стал легендой Optima Bank после такого мува