Лиана
Все работы

Кейс · Веб-сервис · 2026

Бронирование речных прогулок без звонков и ручного учёта

Спроектировала и построила модуль онлайн-бронирования для речных прогулок в Казани. Клиент выбирает дату, оплачивает по СБП, получает QR-билет. Администратор сажает гостей одним нажатием по QR, без таблиц вручную.

Смотреть сайт

Клиент

Прогулки по Казанке

Срок

3 недели от ТЗ до запуска

Стек

Tilda + Apps Script, ЮKassa, Telegram

Услуги

UX/UI дизайн, фронтенд и бэкенд

Задача

Сделать так, чтобы клиент бронировал сам, а администратор только встречал гостей

У заказчика один теплоход, 11 мест и несколько сеансов в день. Бронирования велись по телефону и в мессенджерах. Каждый платёж принимался вручную, посадка отмечалась карандашом в распечатке.

01

Потерянные деньги

Двойные продажи мест, отмены без ясной процедуры возврата, споры с клиентами о деньгах.

02

Часы на администрировании

Каждая бронь: это разговор, каждый перенос требует переписки, а каждая посадка сверяется с бумажным списком.

03

Нет учёта

Сколько было броней за месяц? Какая выручка по сеансам? Кто пришёл, а кто нет? Раньше на эти вопросы не было ответа.

Архитектура

Пять сервисов вместо отдельного бэкенда

Вместо отдельного сервера: связка готовых инструментов. Google Sheets работает как база данных, Apps Script: бесплатный сервер от Google. ЮKassa принимает СБП, Telegram шлёт уведомления. Это даёт нулевую стоимость хостинга и простую поддержку: всё видно в знакомых интерфейсах.

Tilda

Сайт и форма

Google Sheets

База данных: брони, цены, статусы

Apps Script

Сервер, около 600 строк

ЮKassa

Приём оплаты по СБП

Telegram

Уведомления администратору

Ключевые экраны

Четыре шага от даты до оплаченного билета

Мастер-форма ведёт пользователя по понятным шагам: видно, где он находится, что выбрал и сколько осталось. Прогресс не теряется при ошибках: форма помнит введённые данные.

01

Календарь и список сеансов

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

В списке справа все сеансы выбранного дня. Пометка «осталось 3» подсвечивается, когда мест мало.

Шаг 1: выбор даты и сеанса
Шаг 2: количество гостей

02

Гости и сумма в реальном времени

Три счётчика: взрослые, дети, до 3 лет. Все занимают места, лимит считается от общей суммы, а не по типам.

Сводка справа пересчитывается мгновенно. Кнопки «+» блокируются, когда лимит мест достигнут.

04

Оплата по СБП с 15-минутным резервом

На экране оплаты: итоговая сводка и таймер. Места держатся 15 минут, пока клиент завершает платёж. Не успел: места возвращаются в продажу.

Шаг 4: оплата через СБП

Технические решения

Нестандартные ответы на типовые проблемы

Где-то пришлось обойти ограничения платформ, где-то придумать формат с нуля. Эти решения не на поверхности, но именно они держат всю систему стабильной.

Обычный счётчик ломался при одновременных бронированиях: два клиента получали один код. Сделали код на основе точного времени с точностью до секунды.

К-DDMM-HHMMSS
К-1805-143052

Адаптивная вёрстка

Большая часть трафика идёт с телефона

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

Шаг 1 · Сеанс

Шаг 1 · Сеанс

Шаг 2 · Гости

Шаг 2 · Гости

Что отдала клиенту

Не только код, но и инструкции для команды

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

Инструкция разработчика

Развёртывание с нуля: Sheets, Apps Script, ЮKassa, Telegram, Tilda. Полные исходники с комментариями, чек-лист тестирования и миграции.

42

страницы

9

разделов

24

функции

Инструкция администратора

Повседневные задачи простым языком: что делать, если клиент отменяет, переносит или не пришёл. Готовые шаблоны ответов, без технических деталей.

20

страниц

8

частей

10

сценариев

Результат

Цифры, которые видит заказчик

0чел

Ручной работы при оформлении брони. От выбора сеанса до билета на e-mail: всё автоматически.

1тап

На посадку гостя. Скан QR, проверка, «Посадить»: вместо сверки с распечаткой.

0

Хостинг и база данных. Sheets и Apps Script бесплатны, платный только домен на Тильде.

24/7

Доступность системы. Клиенты бронируют ночью, в выходные и праздники.

Выручка выросла с момента запуска. Клиент фиксирует заметный рост: меньше упущенных броней, ушли двойные продажи, а часть гостей теперь бронирует ночью и в выходные, когда раньше просто некому было ответить на звонок.

Нужен похожий сервис? Давайте обсудим

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