SaaS-платформа сайтов для ресторанов доставки
Мультитенантная платформа, которая превращает общую кодовую базу в полноценные сайты электронной коммерции: владелец ресторана управляет каталогом, клиентами и подпиской, а владелец платформы — арендаторами, тарифами и биллингом. Два клиентских сайта работают в продакшене.


Проблема и цель
Запуск сайта доставки обычно требует отдельной разработки для каждого ресторана. Целью была мультитенантная SaaS-платформа, где новый бренд получает полноценный сайт — меню, корзину, зоны доставки и кабинеты клиентов — только через конфигурацию. Бренд, меню, город и условия доставки настраиваются на общей кодовой базе без отдельной сборки для каждого клиента.
Моя роль и ответственность
Я разработал продукт полностью: админ-панель владельца сайта (каталог с модификаторами, карты зон доставки, стандартные правила корзины, клиентская база, аналитика выручки и SaaS-подписка), админ-панель владельца платформы (арендаторы, тарифы, биллинг и инстансы) и мультитенантную архитектуру сайтов для компьютеров и мобильных устройств. Кабинеты клиентов работают через SMS OTP и содержат историю заказов и кешбэк.
Модули продукта


Ключевые инженерные задачи
Две админ-панели на одной кодовой базе
Владельцам сайта и платформы нужны разные интерфейсы и права доступа к одним и тем же мультитенантным данным. Я разделил продукт на два административных приложения с общим бэкендом и обеспечил изоляцию арендаторов на уровне доступа к данным.
Шаблонизация для каждого ресторана
Бренд, меню, город и условия доставки являются конфигурацией арендатора, а не кодом. Новый ресторан получает рабочий сайт без отдельной сборки — один деплой обслуживает все клиентские сайты.
Связь электронной коммерции с операциями
Сайт интегрирован с операционным кабинетом: каталогом и модификаторами, полигонами зон доставки на карте, стандартными товарами в корзине, аналитикой выручки и жизненным циклом SaaS-подписки.
Кабинеты клиентов через SMS OTP
Вход по номеру телефона связывает профиль клиента с историей заказов, кешбэком и подарками — единая учётная запись на сайте без паролей.
Технологический стек
Фронтенд
- Next.js
- TypeScript
- Tailwind CSS
- Zustand
- TanStack Query
- React Hook Form
- Zod
Бэкенд
- Node.js
- Fastify
- REST API
- WebSocket
- JWT + RBAC
Данные
- PostgreSQL
- Prisma
- Redis
Инфраструктура
- Vercel
- Render
- Cloudflare R2
- SMS-провайдер