HoReCa и еда
Апрель 2026
Клиент: уличное кафе в Санкт-Петербурге. Заказы принимали вручную в Telegram-группе: гость писал в чат, сотрудник читал и передавал на кухню. Система держалась на мессенджере — при сбое Telegram бизнес останавливался целиком. Не было ни отслеживания платежей, ни аналитики, ни управления меню: цену меняли сообщением в том же чате. Задача: перевести приём заказов в собственный контур, где заказ не теряется, оплата видна, а меню меняет сам владелец.
Собрали цифровую экосистему кафе целиком — за 38 дней, с 20 марта по 27 апреля.
Три части:
— PWA для гостя: меню → корзина → заказ → чат с кафе → оплата через СБП QR. Ставится на телефон как приложение, но без магазинов приложений и их комиссии;
— real-time дашборд для персонала: канбан-доска заказов со звуковым уведомлением о новом — кухня видит заказ в тот же момент, когда гость его отправил;
— админка: управление меню и ценами, аналитика, ролевой доступ. Владелец меняет меню сам, без разработчика.
Стек: Next.js 14, React 18, TypeScript, PostgreSQL 15, Prisma ORM, Socket.io для real-time, NextAuth.js v5, Web Push API без Firebase, валидация через Zod. Развёрнуто на VPS с Nginx и PM2.
Отдельно про оплату: СБП QR выбран не случайно — эквайринговой комиссии на нём нет, и для стрит-фуда с малым средним чеком это прямая экономия на каждом заказе.
В цифрах разработки: 298 коммитов, 16 595 строк TypeScript, 31 API-эндпоинт, 4 круга security audit.
Около 0% потерянных заказов — заказ больше не может «утонуть» в чате: он в базе, и его видно на кухонной доске.
Нулевая комиссия при оплате через СБП QR — на каждом чеке.
Бизнес перестал зависеть от работоспособности мессенджера: свой контур, свой сервер, свои уведомления.
Меню и цены владелец меняет сам через админку.
38 дней от старта до продакшена, 298 коммитов, 16 595 строк кода, 31 API-эндпоинт, 4 круга security audit.
![]()
Александр Гаджаев
Россия Краснодар
Главное решение здесь — PWA вместо приложения в сторах. Кафе со средним чеком стрит-фуда не окупит ни разработку под две платформы, ни комиссию магазинов, ни модерацию каждого обновления меню. PWA ставится на телефон одним нажатием, обновляется мгновенно и стоит как сайт. Плюс СБП QR вместо эквайринга — вместе это снимает с каждого заказа комиссию, которую в этой нише платить не из чего.