wl·solution
Каталог · Доставки
Доставки

Доставка воды и напитков

Клиент оформляет подписку «2 бутылки 19 литров каждую вторую среду» — и забывает о воде. Система раз в день считает по расходу семьи (двое взрослых = 1 бутылка в неделю + кофе, ребёнок добавляет +0.3, лето +20%), формирует маршрут на завтра, водитель утром получает в Telegram-боте 18 точек на день с порядком объезда. На двери — обмен пустой бутылки на полную, оплата заранее списанная с кошелька, QR-чек ОФД и фото-отчёт. Каждая бутылка имеет серийный номер и историю владения — мы знаем, у кого сколько тары и каков остаток депозита.

Доставка воды и напитков по подписке, тара-обмен, маршрутный планировщик.

WebTG-ботAdmin
О продукте

«Доставка воды и напитков Pro» — это white-label платформа для запуска сервиса доставки питьевой воды (в формате 19L оборотных бутылок), лимонадов, кофе и сопутствующих товаров (кулера, помпы, стаканы) с подписочной моделью. Решение для региональных водных компаний, франшиз бутилированной воды, дистрибьюторов крафтовых лимонадов и offline-магазинов, которые хотят перевести клиентов в онлайн-каналы и закрепить их подпиской.

Главное отличие от обычного интернет-магазина — это движок подписки с расчётом по семье (система запоминает: «двое взрослых, один ребёнок, средний расход 1.3 бутылки в неделю, летом +20%»), тара-обмен с учётом залогов (у каждой бутылки серийный номер, и мы точно знаем, у какого клиента какая бутылка стоит), и маршрутный планировщик VRPTW (Vehicle Routing Problem with Time Windows), который раскладывает 80 заказов на 3 машины за 2 секунды с минимумом пробега.

Стек собран на проверенной базе: Next.js 14 для веб-кабинета и админки, Node/NestJS на бэке с Postgres 16 + PostGIS для геоданных, OR-Tools для маршрутизации, telegraf для Telegram-бота, ЮKassa и Tinkoff Pay для платежей, Контур.Диадок и СБИС для B2B-документооборота. При покупке — полные исходники с коммерческой лицензией без роялти и 6 месяцев обновлений. При аренде — то же плюс инфраструктура, мониторинг и обновления на нашей стороне. Развёртывание за 3–7 минут от оплаты до зелёного HTTPS под вашим доменом.

Задача

Почему обычный интернет-магазин и Excel убивают экономику доставки воды

Доставка воды — категория, где маржинальность мизерная (10–25% с бутылки), а себестоимость одной поездки курьера сравнима со стоимостью самой бутылки. Без подписочной модели и оптимизированного маршрута бизнес работает в ноль или в минус — потому что машина едет в район с тремя заказами вместо двадцати, потому что бутылку забыли забрать, потому что клиент уехал в отпуск и подписка крутится впустую, потому что бухгалтер B2B-клиента не получил счёт-фактуру и тормозит оплату.

Excel-таблицы и обычный интернет-магазин не закрывают ни одну из этих проблем. Excel не знает, что у Иванова стоит ваша бутылка №А-2347 с залогом 200 ₽. Интернет-магазин не умеет ставить подписку на «каждый второй вторник» и считать расход по семье. Универсальные курьерские сервисы (Яндекс.Доставка) не оптимизируют маршрут под бутылочную развозку и не умеют принимать пустую тару обратно. Платформа собрана именно под эти задачи.

  • Машина едет в район с 3 заказами — расход топлива съедает маржу
    Цена ошибки: 20–35% выручки уходит на бензин и зарплату курьера впустую
    VRPTW-движок (OR-Tools) раскладывает 80 заказов на 3 машины с минимумом суммарного пробега, учитывая окна доставки клиента, грузоподъёмность и точку старта. Плотность маршрута растёт на 40–60%, расход топлива падает пропорционально. День разбит на сетку: понедельник — район А (плановая развозка по подпискам), вторник — район Б, и т.д.
  • Клиент уехал в отпуск — подписка крутится, вода не нужна
    Цена ошибки: клиент злится, отписывается, плохой отзыв в гугле
    В кабинете и Telegram-боте — кнопка «пауза подписки» (от 1 недели до 3 месяцев). Кнопка «сдвинуть на неделю». Кнопка «изменить расход» (например, «на лето двойная норма»). Клиент управляет подпиской без звонков в кол-центр — отток снижается на 25–40%.
  • Курьер забыл забрать пустую бутылку — клиент платит залог второй раз
    Цена ошибки: 100–300 ₽ за бутылку × 100 клиентов = $300–500 в месяц на спорах
    Каждая бутылка имеет серийник (QR на горлышке). Курьер при выдаче сканирует новую бутылку и пустую, которую забирает. Система видит, какие бутылки стоят у клиента, и не даёт закрыть заказ, пока пустые не сданы (если в подписке не указано «накопить и сдать раз в месяц»). Bottle Ledger — точный учёт каждой бутылки.
  • B2B-клиент требует ЭДО, счёт-фактуру и акт — обычный сервис не даёт
    Цена ошибки: потеря 60–70% потенциальной выручки (B2B — это 2–5× B2C)
    B2B-аккаунт: реквизиты юрлица, договор, post-pay 14 или 30 дней, кредитный лимит. Счета-фактуры формируются автоматически в конце месяца, отправляются через Контур.Диадок или СБИС. Акт сверки за квартал — кнопкой. Бухгалтерия 1С интегрирована через webhook.
  • Семья из 4 человек заказывает 2 бутылки — а нужно 4, всегда не хватает
    Цена ошибки: клиент уходит к конкуренту, теряем LTV $400–800
    Расход по семье: при оформлении клиент указывает состав (двое взрослых, один ребёнок). Система предлагает оптимальный график (например, 4 бутылки раз в 2 недели). После 2 месяцев — корректировка по факту (если расход больше — предложение «увеличить норму»). Прогноз с точностью 85–90%.
  • Кулер стоит в аренде, клиент не пользуется — депозит сгорает зря
    Цена ошибки: теряем $30–60 в месяц на «забытом» оборудовании
    Кулера и помпы — отдельная сущность в учёте (Asset Ledger). Условия аренды: «бесплатно при подписке от X бутылок в месяц», «бесплатно при предоплате на год», «$5/мес при разовых заказах». Если клиент 2 месяца без заказа — авто-уведомление с предложением «вернуть кулер бесплатно» или продолжить с депозитом.
  • База клиентов половинчатая — старые в Excel, новые в системе
    Цена ошибки: путаница, потери, неточный прогноз
    Импорт CSV-базы клиентов с маппингом полей (имя, адрес, телефон, последний заказ, статус подписки). Дедупликация по телефону. Адреса геокодируются автоматически (Mapbox + OSM, точность 95%+ для городов от 100k населения). За 1 рабочий день переезжает база до 5 000 клиентов.
  • Курьер потерял путевой лист — половина дня ушла на разбор
    Цена ошибки: 10–15% дня впустую, 2–3 недовольных клиента
    У курьера в Telegram-боте — карта маршрута, список адресов с порядком объезда, фото подъезда, домофон, окна доставки, бутылки на сдачу/выдачу. Кнопка «выехал» — старт таймера, отслеживание по геолокации. Кнопка «доставлено» — фото подъезда + закрытие точки. Возврат к диспетчеру в реальном времени.
Сборка с нуля против готового

Сборка с нуля vs готовая платформа: считаем по статьям

Если собирать «Доставку воды Pro» силами штатной команды, минимально нужно: 2 фронта (веб-кабинет + админка диспетчера), 1 бэкендер, разработчик Telegram-ботов, дизайнер, DevOps, тестировщик, project-менеджер. Команда из 6–8 человек на 5–7 месяцев. Бюджет на старт — $60k–$140k, плюс зарплаты команды на сопровождение.

У нас этот стек уже написан, обкатан на запусках 5+ водных сервисов и регулярно обновляется. Подписочный движок, тара-учёт, VRPTW-маршруты, Telegram-бот, B2B с ЭДО — всё готово и работает. Вы получаете тот же результат за дни и направляете освободившиеся $60k+ на рекламу, на закупку первой партии бутылок (нужно 800–1200 штук для старта) и на холодильные склады.

Свой стек
5–7 месяцев
$60k–$140k
С wl-solution
5 минут — 2 дня
от $290 setup + $149/мес или $2 900 с исходниками
ЭтапСвой стекС wl-solution
Веб-кабинет клиента + админка диспетчера2 фронта × 3 мес ≈ $30kготов (Next.js 14, App Router, RU/EN i18n)
Подписочный движок с расходом по семье1 фронт + 1 бэк × 2 мес ≈ $20kготов с rule-engine и UI
Bottle Ledger (учёт оборотной тары с залогами)1 бэк × 1.5 мес ≈ $10kготов, серийники + QR + история владения
VRPTW-маршрутизация (OR-Tools)1 бэк × 1 мес + Mapbox-интеграция ≈ $9kготов, 80 заказов за 2 сек
Telegram-бот для re-order и водителя1 бэк × 1.5 мес ≈ $10kготов с шаблонами и keyboard
B2B-кабинет, счета-фактуры, ЭДО (Диадок/СБИС/1С)1 бэк × 2 мес + юрист на договор ≈ $14kготовы 3 интеграции
Аренда кулеров и помп (Asset Ledger)1 бэк × 1 мес ≈ $7kготов, авто-уведомления по сроку
Платежи (ЮKassa, Tinkoff, Apple/Google Pay в TG)1 бэк × 1 мес ≈ $7kтри провайдера готовы
Импорт базы клиентов с геокодированием$4kwizard в админке
Инфра, CI/CD, мониторинг, бэкапы$5k setup + DevOps на ставкеauto-deploy на VPS за 5 минут
Решение

Три канала и единая база — подписка, маршрут, тара, B2B

Веб-кабинет клиента для управления подпиской и оплаты, Telegram-бот для re-order и общения с водителем, админка диспетчера для контроля маршрута и склада. Все три синхронизированы через Order Service, Subscription Service и Bottle Ledger — изменение в одном канале мгновенно появляется во всех. Водитель работает только через Telegram-бот (никакого отдельного приложения с обновлениями), что снижает порог входа для новых водителей до 10 минут обучения.

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

Подписочный движок с расходом по семье

Клиент не вспоминает про воду — она приезжает по графику.

При первом заказе клиент отвечает на 3 вопроса: «сколько взрослых», «сколько детей», «как часто пьёте воду (мало / средне / много)». Система рассчитывает оптимальный график: например, «3 бутылки 19L каждые 2 недели». Клиент подтверждает или корректирует — подписка активна.

Поддерживаются 5 типов графика: еженедельно (фиксированный день недели), раз в 2 недели, раз в месяц, по требованию (клиент сам нажимает «нужна вода» в TG-боте), бюджет (списываем фиксированную сумму в месяц, доставляем сколько укладывается). За 2 дня до доставки — push «привезём 2 бутылки в среду 16:00, всё ок?» с кнопкой «перенести/отменить/изменить».

Тара-учёт (Bottle Ledger) с залогами

Каждая бутылка — учётный актив с серийником и историей.

У каждой 19L бутылки есть QR-код с серийным номером, который наклеивается при первой выдаче. Bottle Ledger хранит: серийник → текущий владелец → дата выдачи → залог. Курьер при доставке сканирует две бутылки: новую (которую отдаёт) и старую (которую забирает). Система автоматически обновляет ledger.

Залог за бутылку (типично 200–300 ₽) хранится на счёте клиента. При возврате бутылки залог возвращается на кошелёк. Если клиент уходит — может вернуть все бутылки и забрать депозит. Полный аудит-лог: «бутылка №А-2347 — Иванов с 2024-03-15, залог 250 ₽».

VRPTW-маршрутизация по дням недели

80 заказов на 3 машины — 2 секунды, минимум пробега.

Каждый день недели — свой район или две зоны (например, понедельник = центр + север, вторник = юго-запад). Подписки распределяются по дням так, чтобы плотность была равномерной (если все подписаны на пятницу — система предложит часть клиентов сдвинуть на четверг с скидкой).

Утром в день доставки OR-Tools раскладывает все заказы дня на N машин (где N задано доступной парком). Учитывает: окна доставки клиента, грузоподъёмность машины, точку старта (склад), время разгрузки. Маршрут — в Telegram-бот водителя с фото подъезда, домофоном, кодом, бутылками на сдачу/выдачу.

Telegram-бот для re-order и водителя

70–80% повторных заказов после первой покупки идут через бот.

Клиент: «/start» → меню с тремя кнопками: «Нужна вода» (доставим в ближайший день), «Управление подпиской», «Поддержка». Один тап — заказ оформлен. Оплата Apple Pay / Google Pay прямо в Telegram через ЮKassa. Push о статусе заказа: «оплачен», «выезжает курьер», «у двери», «доставлено».

Водитель: получает в TG-боте список из 18–25 точек с порядком, кнопкой «выехал», картой, контактами. На каждой точке — кнопка «доставлено», «не дома», «отказ». Связь с диспетчером — через тот же бот. Никакого отдельного приложения, никаких обновлений в TestFlight — водитель работает с первого дня.

Аренда кулеров, помп, сопутствующих товаров

Доп. выручка $5–15 в месяц с каждого клиента-кулерщика.

Каталог сопутствующих товаров: кулера (нагрев/охлаждение, 3 модели), помпы механические, помпы электрические, подставки, стаканы, чашки. Кулера — в аренду (с залогом) или продажу. Условия аренды: «бесплатно при подписке от 4 бутылок в месяц», «$5/мес при меньшем расходе», «$15/мес при разовых заказах».

Asset Ledger следит за каждой единицей: серийник, текущий клиент, дата выдачи, последнее обслуживание (для кулеров — раз в год обязательная санитарная чистка с уведомлением). При отказе клиента — авто-уведомление за 7 дней до окончания подписки с предложением «вернуть бесплатно» или «продолжить аренду».

B2B-аккаунты с ЭДО и счетами-фактурами

Офисы и компании — это 2–5× выручки B2C.

B2B-регистрация требует: ИНН, КПП, реквизиты, договор (генерируется автоматически из шаблона), e-mail бухгалтерии. После проверки СПАРК/Контур.Фокус (опционально для безопасности) — открывается кредитный лимит и post-pay 14 или 30 дней.

Счета-фактуры формируются автоматически в конце месяца за все доставки. Отправка через Контур.Диадок, СБИС или 1С-ЭДО (три коннектора в коробке). Акт сверки за квартал — кнопкой. Бухгалтерия 1С получает webhook с каждой реализацией для автокниги.

Wallet/prepay + ЮKassa + Apple/Google Pay

Клиент пополняет кошелёк раз в квартал — и забывает про оплату.

Wallet (кошелёк клиента): пополняется через ЮKassa, Tinkoff Pay, Apple Pay (в TG-боте), Google Pay, банковской картой в кабинете. Бонус за пополнение от 5000 ₽ — 3%, от 10000 ₽ — 5%. Каждый заказ списывает с кошелька автоматически — клиент не вводит карту каждый раз.

B2B post-pay: счёт раз в месяц, оплата 14 или 30 дней. При просрочке 7 дней — мягкое уведомление, при 14 — приостановка отгрузок до оплаты. Кредитный лимит индивидуален, скоринг через СПАРК/Контур.Фокус по запросу.

White-label под ваш бренд: домен, логотип, цвета

Никаких упоминаний wl-solution в интерфейсе или на счетах.

Веб-кабинет, Telegram-бот (вашим юзернеймом и аватаром), админка диспетчера, счета-фактуры, e-mail-уведомления — под вашим брендом. Кастомизация: логотип, основной/акцентный цвет, шрифт, фавикон, домен с автоматическим SSL.

Telegram-бот регистрируется через ваш BotFather-аккаунт (мы помогаем с инструкцией). Платёжный аккаунт ЮKassa/Tinkoff — ваш. Все деньги идут напрямую вам, мы не посредник.

Принципы

Что мы держим в голове, проектируя продукт

  1. 01

    Подписка — это не «карточка и спишет», а гибкая программа

    Клиент должен иметь возможность поставить на паузу, изменить норму, перенести на неделю, swap-нуть товар (с воды на лимонады) без звонка в кол-центр. Иначе отток съест выручку. Все эти операции — в кабинете и TG-боте, в один тап.

  2. 02

    Тара — это актив, а не упаковка

    Каждая бутылка стоит вам 200–400 ₽. Терять их «в карманах клиентов» означает дотировать каждую подписку. Bottle Ledger с серийниками и QR-кодами обязателен — иначе через год вы не знаете, где половина парка тары.

  3. 03

    Маршрут — это математика, а не магия диспетчера

    Опытный диспетчер раскладывает 80 заказов на 3 машины за 30 минут с погрешностью 20%. OR-Tools делает то же за 2 секунды с оптимумом по пробегу. Не отдавайте маршруты человеку — отдайте алгоритму, а человеку — контроль исключений.

  4. 04

    B2B без ЭДО — это потерянная половина рынка

    Офисы, ЖК, школы, спорткомплексы — это 50–70% выручки зрелого водного сервиса. Без счетов-фактур, ЭДО (Диадок/СБИС) и post-pay их не получить. Сразу закладывайте B2B-функции с первого дня запуска.

Возможности

Полный набор сценариев — без покупки модулей и плагинов

Подписка и расход

Сердце продукта. Гибкие графики, расход по семье, прогноз потребления, управление в один тап.

5 типов графика подписки
Еженедельно / раз в 2 недели / раз в месяц / по требованию / бюджет — на выбор клиента.

Еженедельно: фиксированный день недели (например, «каждую среду»). Раз в 2 недели: чётные или нечётные недели. Раз в месяц: фиксированное число (например, «5 числа»). По требованию: клиент сам нажимает «нужна вода» в TG-боте — приезжаем в ближайший плановый день района. Бюджет: списываем фиксированную сумму в месяц (например, 1500 ₽), доставляем сколько укладывается.

Подписка создаётся в кабинете или TG-боте за 4 шага: товары → график → адрес → оплата. Изменения — без обращения в поддержку. История подписки — полный лог изменений, никогда не теряется.

  • · Клиент выбирает удобный график — выше удержание
  • · Бюджетный тип привлекает клиентов с низким доходом
  • · Меняется без звонков в кол-центр
Расчёт расхода по составу семьи
Указали состав (2 взрослых + 1 ребёнок) → система предложит оптимальный график.

Модель расхода: взрослый = 1 бутылка 19L на 2 недели (питьё + готовка), ребёнок до 6 лет = +0.3, ребёнок 7–14 = +0.5, подросток = +0.8. Дополнительные коэффициенты: лето (+20%), зима (-10%), наличие чая/кофе (+15%). Прогноз с точностью 85–90% после 2 месяцев наблюдений.

Если клиент в кабинете отметил «лето в командировке 2 недели» — система автоматически пропускает доставку на этот период. Если расход выше прогноза — push с предложением «увеличить норму».

  • · Клиент получает столько, сколько нужно — нет переплат
  • · Снижение отказов «нам не нужно столько воды»
  • · Прогноз помогает планировать закупку
Пауза, скип, swap, перенос — без поддержки
Все операции с подпиской — в кабинете или TG-боте, в один тап.

Пауза: «приостановить на 2/4/8/12 недель» с автовозобновлением. Скип: «пропустить ближайшую доставку». Перенос: «доставку с 5-го на 10-е». Swap: «заменить воду на лимонад на следующий раз» или «изменить количество бутылок».

Все изменения подтверждаются push-уведомлением. Полный аудит — кто, когда, что изменил. Никаких звонков в поддержку, никаких операторов на 3-минутном ожидании.

  • · Снижение нагрузки на кол-центр в 5–8 раз
  • · Удержание клиента (отток снижается на 25–40%)
  • · Самообслуживание = выше NPS
Wallet (кошелёк) с авто-пополнением
Клиент пополняет на 5000 ₽, получает +3% бонус, не вводит карту каждый раз.

Кошелёк — внутренний баланс клиента в рублях (или другой локальной валюте). Пополняется через ЮKassa, Tinkoff Pay, Apple Pay (в TG-боте), Google Pay, банковской картой. Бонус за пополнение: от 5000 ₽ — 3%, от 10000 ₽ — 5%, от 20000 ₽ — 7%.

Каждый заказ автоматически списывается с кошелька. Если баланса не хватает — push «не хватает 350 ₽, пополните» с deep-link в платёжку. Авто-пополнение опционально (при балансе ниже 500 ₽ — списать 2000 ₽ с привязанной карты).

  • · Cashflow заранее (вы получаете деньги до доставки)
  • · Клиент не отвлекается на оплату каждый раз
  • · Бонусы стимулируют пополнения покрупнее

Тара и активы

Bottle Ledger и Asset Ledger — учёт каждой бутылки, каждого кулера, каждой помпы. С серийниками, QR-кодами и историей владения.

Bottle Ledger — учёт каждой 19L бутылки
QR-код на горлышке, серийник в базе, история владения и залогов.

При первой выдаче на бутылку наклеивается QR-код (печатается на термопринтере). Серийник вида A-2347. Запись в Bottle Ledger: серийник → клиент → дата выдачи → залог. При обмене курьер сканирует две бутылки: новую (которую отдаёт) и старую (забирает). Система автоматически обновляет владельца.

Залог за бутылку — типично 200–300 ₽ — хранится на счёте клиента отдельной строкой. При возврате бутылки залог возвращается на кошелёк или выплачивается обратно. Если клиент уходит с бутылками — система удерживает залог как стоимость утраты.

  • · Точный учёт парка тары (нет потерь «в карманах»)
  • · Защита от двойного начисления залога
  • · Аудит-готовность (каждая бутылка — отдельная запись)
Aging-отчёт по бутылкам у клиентов
«У Иванова бутылка №А-2347 стоит 87 дней — пора менять».

Отчёт показывает, у кого какие бутылки стоят сколько времени. При превышении срока (например, 90 дней с момента выдачи) — авто-уведомление клиенту: «время заменить бутылку для свежести». При визите курьера он обязательно забирает старые бутылки.

Это снижает риск, что у клиента дома стоит бутылка 6 месяцев и развивает запах. Стандарт по СанПиН — менять не реже раза в 3 месяца.

  • · Качество воды у клиента не страдает
  • · Снижение жалоб «вода с привкусом»
  • · Соблюдение санитарных норм
Asset Ledger для кулеров, помп, подставок
Каждый кулер — серийник, история владения, обязательная санитарная чистка раз в год.

Каталог сопутствующих товаров: кулера (3 модели — компрессорный с нагревом, термоэлектрический, без охлаждения), помпы (механические, электрические), подставки, стаканы. У каждого кулера — серийник, история (склад → клиент → склад → клиент), последняя санитарная чистка.

За 30 дней до даты обязательной чистки (по СанПиН — раз в 12 месяцев) — авто-уведомление клиенту и диспетчеру. Курьер при следующем визите забирает кулер на чистку, привозит подменный. Если клиент отказывается — арендный договор расторгается (для соблюдения норм).

  • · Полный аудит парка оборудования
  • · Соблюдение СанПиН по чистке
  • · Доп. выручка $5–15 в месяц с каждой единицы
Инвентаризация склада в один клик
Сканируй все бутылки на складе телефоном — получи остаток за 5 минут.

В админке кнопка «начать инвентаризацию». Сотрудник склада обходит штабеля с телефоном, сканирует QR на каждой бутылке (батчевый режим — 60 бутылок в минуту). Система сверяет с ожидаемым остатком (по Bottle Ledger), показывает расхождения: «должно быть 850, отсканировано 832, разница -18».

Для крупных складов — режим штрих-кодов на коробках (12 бутылок = одна коробка). Расхождения видны сразу — это или потери, или бутылки у клиентов не учтены. Месячная инвентаризация занимает 30–60 минут вместо целого дня.

  • · Быстрая инвентаризация без остановки операций
  • · Расхождения выявляются вовремя
  • · Защита от воровства/потерь

Маршруты и склад

VRPTW-движок (OR-Tools) — 80 заказов на 3 машины за 2 секунды. Дни недели по районам, погрузочные листы, контроль исключений.

VRPTW-маршрутизация (OR-Tools)
80 заказов → 3 машины → 2 секунды → минимум пробега.

Каждое утро (или по кнопке диспетчера) OR-Tools раскладывает все заказы дня на доступные машины. Входные данные: список адресов с координатами, окна доставки клиента, грузоподъёмность машины (количество бутылок), точка старта (склад), время разгрузки (5–10 минут на адрес).

Выход: для каждой машины — упорядоченный список адресов + расчётное время прибытия. Диспетчер видит маршрут на карте, может вручную сдвинуть точку (например, «вот этот клиент VIP — пусть первым»). После подтверждения — маршрут уходит в Telegram-бот водителя.

  • · Снижение пробега на 25–40% против ручной развозки
  • · Время диспетчера на маршруты — 5 минут вместо 60
  • · Точные ETA для клиентов
Распределение по дням недели (плотность маршрута)
Подписки автоматически распределяются по дням так, чтобы плотность была равномерной.

При оформлении подписки клиент выбирает желаемый день недели. Система проверяет загрузку района: если этот день уже переполнен — предлагает соседний с скидкой 5% («перейдите на четверг и получите 5% скидки на следующие 3 заказа»). Большинство клиентов соглашаются.

Результат: пик нагрузки сглажен, маршрут на каждый день полный (40–60 точек на машину), нет «пустых» дней с 5 заказами.

  • · Равномерная загрузка парка
  • · Себестоимость доставки ниже на 20–30%
  • · Водители получают полную смену каждый день
Окна доставки и приоритеты
Клиент указывает окно (например, «18:00–22:00 будни») — VRPTW его учитывает.

Клиент в кабинете задаёт удобные окна доставки: «будни 18:00–22:00» или «выходные с 10:00». При оптимизации маршрута OR-Tools соблюдает окна как hard-constraint. Если для всех клиентов 18:00–22:00 — система разделит на 2 машины с разным стартом.

VIP-приоритет (B2B, премиум-подписка) — отдельный флаг, который ставит клиента в начало маршрута. ETA с погрешностью 10–15 минут (push клиенту «приедем через 30 минут» за полчаса до прибытия).

  • · Клиент дома именно тогда, когда обещано
  • · Меньше «не застал» — экономия на повторных заездах
  • · Лояльность B2B (VIP-приоритет)
Погрузочные листы для склада
До выезда машины склад знает, сколько бутылок и каких загрузить.

После расчёта маршрутов в админке появляется погрузочный лист на каждую машину: 40 бутылок воды Х, 8 бутылок воды Y, 2 кулера на возврат с маршрута, 12 чашек. Лист на печать или в TG-бот складовщика.

Складовщик собирает заказ, сканирует QR каждой выходящей бутылки — система автоматически списывает со склада и привязывает к маршруту. Водитель получает машину «загруженную» с подтверждённым списком.

  • · Нет недогрузов («забыли положить»)
  • · Точный учёт остатков склада в реальном времени
  • · Прозрачность для бухгалтерии

B2B и финансы

Юрлица с ЭДО, счетами-фактурами, кредитным лимитом, post-pay. Контур.Диадок, СБИС, 1С — три коннектора в коробке.

B2B-регистрация с авто-проверкой
ИНН → авто-подтягивание из ЕГРЮЛ → договор → кредитный лимит.

Клиент-юрлицо вводит ИНН — система через ЕГРЮЛ API подтягивает наименование, КПП, ОГРН, адрес, ОКВЭД, статус (действующая/ликвидирована/банкрот). Договор генерируется автоматически из шаблона с подставленными реквизитами. Подписание — простой ЭЦП или ЭДО.

Опционально — скоринг через СПАРК или Контур.Фокус: финансовая надёжность, риск-индекс, история банкротств. На основе скоринга определяется кредитный лимит (от $200 до $10k) и срок post-pay (14 или 30 дней).

  • · Регистрация B2B — 5 минут вместо 2 дней
  • · Защита от ненадёжных контрагентов
  • · Автоматизация документооборота
Счета-фактуры и акты автоматически
В конце месяца — счёт, отправка через Диадок/СБИС/1С, акт сверки за квартал.

Раз в месяц (или по требованию клиента) формируется счёт-фактура за все доставки месяца. УПД (универсальный передаточный документ) формируется по форме, утверждённой ФНС. Отправка через выбранный канал ЭДО (Контур.Диадок, СБИС, 1С-ЭДО).

Акт сверки за квартал — кнопкой в кабинете клиента или по запросу из 1С-Бухгалтерии. Расхождения подсвечиваются, можно exportировать в Excel для бухгалтерии.

  • · Бухгалтерия счастлива (вовремя и без ошибок)
  • · Закрытие месяца — 30 минут вместо дня
  • · Соответствие НК РФ ст. 169
Post-pay 14/30 с кредитным лимитом
Доставка сейчас → оплата через 14 или 30 дней → автоконтроль просрочек.

У B2B-клиента — индивидуальный кредитный лимит (например, $1500). Доставки идут без предоплаты, накапливаются на счёте. В конце месяца — счёт. Срок оплаты 14 или 30 дней. При просрочке 7 дней — мягкое уведомление, при 14 — приостановка отгрузок до оплаты.

Все условия (срок, лимит, штраф за просрочку) в договоре. Дашборд для финдира: дебиторская задолженность по клиентам, средний срок оплаты, риск-индекс по каждому контрагенту.

  • · Привлечение B2B-клиентов (без post-pay они не идут)
  • · Защита от роста просрочек
  • · Финдир видит cashflow в реальном времени
Интеграция с 1С-Бухгалтерией
Webhook на каждую реализацию — в 1С автоматически идёт проводка.

После закрытия заказа (доставка выполнена) система отправляет webhook в 1С с данными: контрагент, дата, номенклатура, сумма, ставка НДС. 1С создаёт документ «Реализация товаров и услуг» автоматически.

Поддержка 1С 8.3 (Бухгалтерия предприятия, Управление торговлей, ERP). Интеграция через стандартный REST-API 1С или через 1С-Шину. Настройка — 30 минут с инструкцией.

  • · Бухгалтер не дублирует ввод вручную
  • · Книга продаж формируется автоматически
  • · Меньше ошибок в учёте

Каналы и админка

Web-кабинет клиента, Telegram-бот, админка диспетчера. Мульти-бренд, white-label, аналитика, поддержка.

Telegram-бот для клиента (re-order и подписка)
70–80% повторных заказов идут через бот — это главный канал retention.

Бот с inline-keyboard: «🚰 Нужна вода» (одной кнопкой заказ в ближайший день района), «📋 Моя подписка» (управление), «📞 Поддержка» (чат с оператором), «💰 Кошелёк» (пополнение), «📦 История заказов». Оплата Apple Pay / Google Pay прямо в боте через ЮKassa.

Push-уведомления: «оплачен», «выезжает курьер», «у двери», «доставлено + фото-отчёт». При паузе подписки бот вежливо спрашивает «всё ок? нужна помощь?» — снижает отток. Конверсия повторного заказа из бота — 60–80%.

  • · Основной канал retention
  • · Низкий барьер входа (не надо устанавливать приложение)
  • · Apple/Google Pay = меньше отказов оплаты
Telegram-бот для водителя (маршрут и заказы)
Карта маршрута, точки в порядке, кнопки «доставлено / не дома / отказ».

Утром водитель получает в боте: «маршрут на сегодня, 23 точки, расчётное время 6 часов». Карта с маршрутом — открывается в Яндекс.Картах или 2GIS. Каждая точка раскрывается: адрес, домофон, телефон клиента, бутылки на выдачу/сдачу, фото подъезда (если есть).

На каждой точке кнопки: «✅ доставлено» (требуется фото-подтверждение + сканирование QR бутылок), «🚪 не дома» (с фото попытки), «❌ отказ» (с причиной). После закрытия точки бот выводит следующую.

  • · Водитель работает с первого дня — 10 минут обучения
  • · Никаких сторонних приложений — всё в TG
  • · Диспетчер видит прогресс в реальном времени
Веб-кабинет клиента
Управление подпиской, оплата, история, поддержка — всё в браузере.

Адаптивный веб-интерфейс (Next.js 14, RU/EN, тёмная/светлая темы). Главная: статус подписки, ближайшая доставка, кошелёк. Раздел подписки — изменение графика, пауза, swap, перенос. Раздел заказов — история, повторение, скачивание чека. Раздел оплат — пополнение, привязка карты, история транзакций.

Регистрация по номеру телефона (SMS-код через Voximplant) или через Telegram (без пароля). Авторизация по cookie 30 дней. PWA-режим — добавление на главный экран как приложение.

  • · Альтернатива TG-боту для тех, кто его не использует
  • · Все функции в одном месте
  • · PWA — почти как нативное приложение, без сторов
Админка диспетчера (control room)
Карта с маршрутами, статусами водителей, заказами, складом — всё в одном экране.

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

Действия диспетчера: вручную сдвинуть точку в маршруте, перенаправить заказ на другую машину, ответить клиенту в чате, добавить заказ в маршрут (если позвонил новый клиент), запустить дополнительный маршрут (если объём вырос).

  • · Контроль всей операции в одном окне
  • · Быстрая реакция на исключения
  • · KPI диспетчера прозрачны
Архитектура

Архитектура: модули, БД, очереди, интеграции

Платформа — это связка из 9 микросервисов, каждый отвечает за свою область (подписки, маршруты, тара, B2B, платежи). Бэкенд на Node/NestJS, фронтенд на Next.js 14, очереди BullMQ на Redis, основная БД Postgres 16 с PostGIS-расширением для геоданных.

Деплой — Docker Compose на 1 VPS для старта (до 5k заказов в месяц), Kubernetes по мере роста. Бутылочный и активный учёт — append-only журналы, что даёт полный аудит без потерь данных и упрощает соответствие 152-ФЗ.

Subscription Service
Подписки, графики, расход по семье, прогноз потребления.

Cron-jobs для генерации заказов из подписок (за 2 дня до доставки), пересчёт прогноза раз в неделю на основе фактического расхода клиента.

Rule-engine для гибких графиков: weekly / biweekly / monthly / on-demand / budget. Каждое изменение клиента (пауза, swap, перенос) идёт через очередь и логируется.

NestJS · Postgres 16 · BullMQ
Order Service
Заказы, статусы (создан → оплачен → в работе → доставлен), wallet-списания.

State machine на XState — все переходы статусов в одном месте, нельзя случайно пропустить шаг или перейти в недопустимое состояние.

Идемпотентность всех операций по orderId: повторный webhook от платёжки не создаёт дубликат, ретрай курьерского статуса не двоит событие.

NestJS · Postgres 16 · Redis · XState
Bottle Ledger
Учёт каждой бутылки (серийник, владелец, залог, история).

Append-only журнал событий (выдана → возвращена → утилизирована). Никаких UPDATE — только INSERT с timestamp. Текущее состояние бутылки — это reduce по событиям.

Каждая операция привязана к QR-сканированию курьера: подделать переход нельзя, всё привязано к timestamp + geo + userId курьера.

NestJS · Postgres 16
Asset Ledger
Учёт кулеров, помп, прочих ассетов — серийник, обслуживание, владелец.

Похож на Bottle Ledger, но с расписанием обязательного обслуживания (санитарная чистка кулера раз в 12 месяцев по СанПиН).

За 30 дней до даты — авто-уведомление клиенту и диспетчеру. Журнал чисток с отметкой ответственного сотрудника.

NestJS · Postgres 16
Routing Service
VRPTW-маршрутизация через OR-Tools, погрузочные листы, ETA.

Отдельный микросервис на Python — OR-Tools нативно на нём работает. Бэкенд Node вызывает по gRPC, передаёт точки + ограничения, получает упорядоченные маршруты.

Учитывает: окна доставки клиента, грузоподъёмность машины, точку старта (склад), время разгрузки, VIP-приоритет. Решает 80 точек на 3 машины за 2 секунды.

Python 3.11 · OR-Tools · FastAPI · Mapbox · OSM
Telegram Bot Service
Бот для клиента и водителя, inline-keyboard, оплата.

Webhook на NestJS-эндпойнт. Поддержка Apple/Google Pay через ЮKassa Telegram Provider Token — клиент платит прямо в чате без редиректов.

Двойная роль: для клиента (re-order, подписка, поддержка) и для водителя (маршрут на день, точки, фото-подтверждение). Разделение по userId с проверкой роли в БД.

telegraf 4 · Node.js · Redis
Payment Service
ЮKassa, Tinkoff Pay, Apple/Google Pay, wallet-операции.

Webhook от ЮKassa → автозачисление на кошелёк клиента. Двойная запись (debit/credit) в БД, никаких прямых апдейтов баланса — только через транзакции.

Поддержка нескольких эквайрингов одновременно: ЮKassa для B2C, Tinkoff для B2B со счетами по реквизитам, СБП-фастпей как альтернатива.

NestJS · Postgres 16
B2B Service
Юрлица, кредитные лимиты, post-pay, скоринг, ЭДО.

Интеграции с Диадок/СБИС/1С — через стандартные REST-API + adapter-pattern. Адаптеры изолированы: добавить новый ЭДО — это написать 1 класс по интерфейсу EdmAdapter.

Автогенерация УПД и счетов-фактур по форме ФНС, проверка ИНН через ЕГРЮЛ-API, скоринг через СПАРК/Контур.Фокус.

NestJS · Postgres 16
Admin / Cabinet Frontend
Web-кабинет клиента и админка диспетчера на одной платформе.

App Router, RSC, server actions. RBAC: client / driver / dispatcher / admin / owner — пять ролей с гранулярными правами.

PWA-режим для клиента — добавление на главный экран как нативное приложение. Тёмная/светлая тема, RU/EN i18n.

Next.js 14 · React 18 · TanStack Query · Tailwind

Поток данных

Клиент в TG-боте нажимает «нужна вода» → Bot Service создаёт OrderDraft → Subscription Service подтверждает право на доставку → Order Service переводит в created → Payment Service списывает с кошелька (или просит пополнить).

Утром в день доставки Subscription Service агрегирует все заказы дня → Routing Service через gRPC вызывает OR-Tools → возвращает упорядоченные маршруты → диспетчер видит в админке, может скорректировать → подтверждает → маршруты уходят в TG-бот водителей.

Водитель на адресе сканирует две бутылки (новую + пустую) → Bot Service шлёт событие в Bottle Ledger → ledger обновляет владельца + двигает депозиты → Order Service переводит в delivered → клиенту push с фото-чеком.

Раз в месяц B2B Service агрегирует доставки за месяц по каждому юрлицу → формирует УПД → отправляет через выбранный EDM-адаптер (Диадок / СБИС / 1С-ЭДО) → webhook на 1С-Бухгалтерию для автопроводки.

Масштабирование

Все микросервисы stateless кроме Bottle Ledger / Order Service / Payment Service — эти три держат истину в БД и реплицируются через Postgres streaming replication.

Routing Service масштабируется горизонтально — OR-Tools жирный по CPU, но решает короткие задачи (2–5 секунд). 4-ядерный VPS закрывает 50 городов одновременно.

BullMQ-очереди на Redis Cluster — разделение worker'ов по типам задач (subscription, notification, b2b-invoice, bottle-aging). При росте нагрузки добавляем worker'ы независимо.

Что ломается и как восстанавливаем

Падение Routing Service → маршруты не рассчитываются автоматически. Диспетчер видит баннер «алгоритм недоступен, используйте ручной режим» и раскладывает заказы по машинам через UI (медленнее, но работает).

Падение Payment Service → клиенты не могут оплачивать новые заказы, но уже оплаченные доставки выполняются. Wallet-баланс читается из БД напрямую, не зависит от провайдеров.

Сбой ЕГРЮЛ-API → B2B-регистрация переключается на ручной режим (клиент сам вводит реквизиты), скоринг откладывается. Без блокировки регистрации.

Сбой ЮKassa → автоматический failover на Tinkoff Pay (если подключён) или показ инструкции «оплатите по реквизитам, мы зачислим вручную в течение часа».

Безопасность

Платежи через PCI DSS-сертифицированных провайдеров (ЮKassa, Tinkoff). Карточные данные на нашей стороне не хранятся — только токены провайдера.

PII (телефоны, адреса, имена) — отдельная схема в БД с шифрованием at-rest. Доступ по ролям + аудит-логирование каждого SELECT по таблице PII.

Соответствие 152-ФЗ: данные клиентов хранятся в РФ-юрисдикции по умолчанию, согласия на обработку логируются, право на забвение — кнопкой в кабинете.

Все webhook-эндпойнты с HMAC-подписями (ЮKassa, Telegram). Idempotency-key на каждом запросе — повторный вызов не двоит операцию.

Интеграции

Готовые коннекторы

12 готовых коннекторов — платежи, ЭДО, карты, скоринг, фискализация. Подключение нового — типично 1–3 дня через adapter-pattern. Договоры с провайдерами оформляете напрямую, мы даём готовый коннектор и сопровождаем при включении.

Telegram Bot APIchannels
Бот для клиента и водителя — re-order, оплата, маршрут, поддержка.
Главный канал retention в РФ/СНГ — 70–80% повторных заказов идут через бота.
Подключение: 30 минут (регистрация бота через BotFather + webhook)
ЮKassapayments
Банковские карты, Apple Pay, Google Pay, СБП, кошельки.
Лидер на рынке РФ, поддержка платежей в Telegram через Provider Token.
Подключение: 1 день (регистрация магазина + KYC + webhook) · Комиссия 2.5–3.5% от оборота, без абонплаты
Tinkoff Paypayments
Альтернативный эквайринг (если ЮKassa не подходит) + СБП-фастпей.
Конкурент ЮKassa, иногда выгоднее по комиссии для B2B и крупных оборотов.
Подключение: 2 дня (договор + интеграция API) · Комиссия 2.0–2.8% (зависит от оборота)
Voximplant SMStelephony
SMS-коды для регистрации, голосовые напоминания о доставке.
Стабильный провайдер с RU-номерами и адекватной ценой за SMS.
Подключение: 1 день (регистрация + пополнение баланса) · ≈ 2.5 ₽ за SMS, голос от 1.5 ₽/мин
Mapboxgeo
Карты в админке, отображение маршрутов, геокодирование адресов.
Быстрая и красивая отрисовка для UI диспетчера. OSM используем для бесплатного fallback геокодирования.
Подключение: 2 часа (Mapbox token + конфиг) · $0.50 за 1000 запросов после free-tier 200k/мес
Контур.Диадокedm
Отправка счетов-фактур и УПД через ЭДО, акты сверки с B2B-клиентами.
Лидер на рынке РФ, 70%+ юрлиц используют Диадок — без него невозможен B2B.
Подключение: 3–5 дней (договор + получение токена + тест) · От 4000 ₽/год за исходящий пакет документов
СБИСedm
Альтернатива Диадоку, поддержка ЭДО и отчётности.
Покрытие 25–30% B2B-сегмента — для клиентов, у которых СБИС основной.
Подключение: 3–5 дней (договор + получение токена) · От 5000 ₽/год за тариф «Базовый»
1С-Бухгалтерияaccounting
Webhook на каждую реализацию → автопроводка в 1С (Бухгалтерия / Управление торговлей / ERP).
Стандарт для бухгалтерии в РФ/Беларуси/Казахстане — без интеграции бухгалтер дублирует ввод.
Подключение: 1 день (REST API или 1С-Шина)
СПАРК / Контур.Фокусscoring
Проверка B2B-контрагентов: финансы, риск-индекс, банкротства, аффилированность.
Защита от ненадёжных B2B-клиентов при пост-оплате — снижает риск невозврата дебиторки.
Подключение: 1 день (API-ключ + интеграция) · От 5000 ₽/мес за пакет проверок
ОФД (Атол / Платформа ОФД)fiscal
Электронные чеки по 54-ФЗ, отправка в ФНС автоматически.
Обязательно для B2C-сегмента в РФ — без чека работать нельзя.
Подключение: 2 дня (договор + регистрация ККТ) · ≈ 3000 ₽/год за ОФД + 2000–3000 ₽/мес за ККТ
ЕГРЮЛ APIregistry
При регистрации B2B — авто-подтягивание данных по ИНН (наименование, КПП, ОГРН, ОКВЭД).
Удобство клиента + защита от ошибок ручного ввода реквизитов.
Подключение: 1 час (открытый API ФНС, без ключей) · Бесплатно
Sentry + Better Stackmonitoring
Ошибки бэкенда, frontend-ошибки, аптайм-чеки, алерты в Telegram.
Без мониторинга — узнаёшь о падении от клиента в TG. С мониторингом — за 30 секунд до клиента.
Подключение: 1 час (token + конфиг) · Sentry $26/мес, Better Stack от $0 на старте
Сценарии операторов

Кейсы, которые мы регулярно разворачиваем

Молодая семья 30 лет, квартира 1+1

2 бутылки 19L каждые 2 недели, Telegram-бот, Apple Pay — без головной боли

Двое взрослых, кофе по утрам, чай вечером. Расход — около 1 бутылки в неделю.

Зарегистрировались через Telegram-бот (без скачивания приложения).

Кулер не нужен — есть встроенный диспенсер в холодильнике.

Открыли TG-бот вашего бренда → «оформить подписку» → выбрали воду «Святой источник 19L» → ответили на 3 вопроса (2 взрослых, нет детей, обычное потребление).

Система предложила: «2 бутылки каждые 2 недели, по средам». Подтвердили. Адрес — из геолокации, домофон — указали вручную.

Оплатили Apple Pay в TG-боте: 700 ₽ за две бутылки + 500 ₽ залог. Wallet пополнен на 1200 ₽.

Через 12 дней — push «привезём 2 бутылки в среду 18:00–22:00, всё ок?». Подтвердили.

В среду 19:30 — водитель в подъезде, push «у вашей двери». Открыли, обменяли 2 пустые на 2 новые, сканирование QR.

Через 2 недели — снова push. И так каждые 2 недели без вашего участия.

Что включаем
  • · Telegram-бот для оформления и управления
  • · Расход по семье (2 взрослых)
  • · Apple Pay в TG
  • · Wallet с предоплатой
  • · Bottle Ledger (учёт залогов)
  • · Push о доставке
Результат
  • · Клиент: «забыл про воду как про проблему»
  • · Магазин: LTV $480 за год (24 доставки × $20 средний чек)
  • · Себестоимость удержания: $0 (TG-бот, без рекламы)
Большая семья с детьми, частный дом

Премиум-вода, 5 бутылок в неделю, кулер в подарок, графика «по требованию»

Пара 40 лет + 3 детей (8, 12, 16 лет). Загородный дом 250м².

Потребление: 5 бутылок 19L в неделю (питьё, готовка, чай).

Заказывают «Архыз» в стекле или «Эвиан» (премиум-сегмент). Кулер с нагревом/охлаждением в кухне.

Зарегистрировались через веб-кабинет (с компьютера). Указали состав семьи (2 взрослых + 3 детей).

Система предложила: «10 бутылок раз в 2 недели». Скорректировали на «5 раз в неделю» (любят свежую воду каждые 2 дня).

Подписались на 2 кулера в аренду (бесплатно при подписке от 4 бутылок/неделя). Залог за кулера 5000 ₽ — на кошельке.

Каждую субботу 10:00 — доставка 5 бутылок. Курьер в перчатках, обмен пустых на новые, фото-чек.

Через 3 месяца — авто-уведомление «кулер на кухне нуждается в санитарной чистке». Курьер при следующем визите забирает на чистку, привозит подменный.

В отпуск (2 недели в августе) — кнопка «пауза» в кабинете. После возвращения — авто-возобновление.

Что включаем
  • · Расход по семье (5 человек)
  • · Премиум-каталог (Эвиан, Архыз стекло)
  • · Аренда кулеров (Asset Ledger)
  • · Санитарная чистка по СанПиН
  • · Пауза подписки
  • · Wallet с депозитом
Результат
  • · Клиент: семья перестала покупать воду в магазине
  • · Магазин: LTV $2400 за год (260 бутылок × $9 + 2 кулера × $0 аренда)
  • · Доп. маржа $480 в год на премиум-сегменте
Офис на 35 человек, IT-компания

12 бутылок в неделю, оплата раз в месяц, ЭДО Диадок, кулер на каждый этаж

Офис 3 этажа, 35 сотрудников. Кулера на каждом этаже (3 шт).

Расход — 12 бутылок 19L в неделю. Бухгалтерия требует ЭДО Диадок.

Post-pay 30 дней с кредитным лимитом $800.

Офис-менеджер зарегистрировал юрлицо: ИНН, реквизиты подтянулись из ЕГРЮЛ. Договор сгенерирован, подписан простой ЭЦП.

СПАРК-скоринг прошёл (компания «зелёная»), кредитный лимит $800, post-pay 30 дней.

Подписка: 12 бутылок «АкваМинерале» каждый понедельник 9:00–11:00. 3 кулера в аренду (бесплатно при объёме).

Каждый понедельник в 10:00 — водитель привозит 12 бутылок на 3 этажа, ставит к каждому кулеру, забирает 12 пустых.

1-го числа следующего месяца — счёт-фактура в Контур.Диадок. УПД в формате 5.01. Бухгалтерия в 1С получила webhook автоматически.

Оплата до 30-го числа. Если задержка >7 дней — мягкое уведомление, >14 — приостановка отгрузок.

Что включаем
  • · B2B-регистрация с ЕГРЮЛ
  • · Скоринг СПАРК
  • · Post-pay 30 дней
  • · Аренда кулеров (3 шт)
  • · ЭДО Диадок (УПД)
  • · Webhook в 1С-Бухгалтерия
Результат
  • · Офис: «вода появилась как услуга, бухгалтерия счастлива»
  • · Магазин: LTV $5800 в год (48 доставок × $120)
  • · Маржа выше B2C на 5–8% (объём + post-pay)
Управляющая компания ЖК на 200 квартир

Доставка в одно окно раз в неделю, единый счёт УК, индивидуальные подписки жильцов

ЖК «Восход» на 200 квартир, 80 из них — клиенты доставки воды.

Управляющая компания договорилась о централизованной доставке: один день в неделю (среда), одна машина, выгрузка на консьерж-сервис.

Жильцы подписываются индивидуально через TG-бот, оплата каждый сам, но логистика — через УК.

УК зарегистрировалась как B2B-партнёр со специальным флагом «coordinator»: координирует доставку, но не платит.

Жители ЖК «Восход» получили промо-ссылку через УК: при регистрации автоматически выбирается среда и точка выгрузки «консьерж 1 подъезд».

В среду в 10:00 — одна машина привозит 80 бутылок в одно место (консьерж). Консьерж раздаёт по квартирам в течение дня (по своему графику).

Каждый жилец оплачивает свою доставку отдельно. Бутылки помечены QR — система знает, чья какая.

Через 2 недели — обратный сбор пустых. Консьерж собирает за день, водитель забирает за раз.

Что включаем
  • · B2B с ролью coordinator
  • · Групповая доставка в одну точку
  • · Индивидуальные подписки внутри группы
  • · Bottle Ledger (учёт каждой бутылки)
  • · Промо-ссылка от УК
Результат
  • · ЖК: вода стала «инфраструктурой» дома
  • · Магазин: 80 клиентов с одной точки доставки, себестоимость доставки в 4 раза ниже
  • · УК: бесплатный сервис для жильцов, бонусные баллы для лояльности
План запуска

От оплаты до первого реального заказа — 7 дней

Развёртывание платформы — это 5 минут (ваш домен, SSL, админка, бот). Полноценный запуск с базой клиентов, парком тары, маршрутом и складом — 7 дней. Ниже — план по дням.

  1. День 0: оплата и развёртывание
    Платформа работает на вашем домене, бот зарегистрирован, админка доступна.
    • · Оплата ($2900 buy или $149/мес rent) через ЮKassa / SWIFT / крипта
    • · Заполнение анкеты: домен, логотип, цвета, реквизиты компании
    • · Регистрация Telegram-бота через BotFather (инструкция в письме)
    • · Авто-развёртывание на VPS: домен → SSL → миграции БД → запуск сервисов (5–7 минут)
    • · Первый вход в админку: проверка, что всё работает
    Готово, когда:
    • https://water.вашдомен.ru открывается с вашим логотипом
    • TG-бот @YourWaterBot отвечает на /start
    • Админка доступна по логину admin@вашдомен.ru
  2. Дни 1–3: настройка каталога, склада, тара
    В системе есть все товары, склад заполнен, бутылки промаркированы QR-кодами.
    • · Создание ассортимента: 2–4 марки воды, кулера (3 модели), помпы, доп. товары — с фото и ценами
    • · Загрузка остатков склада (или ручной ввод первой партии 200–500 бутылок)
    • · Печать QR-стикеров на термопринтере (1 рулон на 1000 наклеек = $20)
    • · Маркировка бутылок: каждой бутылке — серийник в Bottle Ledger
    • · Настройка зон доставки и дней недели (понедельник — район А, и т.д.)
    • · Настройка тарифов: цена бутылки, залог, скидки за объём, B2B-цены
    Готово, когда:
    • В каталоге 4+ позиции воды + сопутствующие
    • Маркировано минимум 200 бутылок
    • Зоны доставки разнесены по дням недели
  3. Дни 3–5: интеграции (платежи, ЭДО, 1С, скоринг)
    Платежи работают, ЭДО подключено, 1С интегрирована.
    • · ЮKassa: регистрация магазина, KYC, привязка webhook (1 день)
    • · Tinkoff Pay (опционально): альтернативный эквайринг
    • · Контур.Диадок: договор, получение токена, тест отправки (3 дня)
    • · 1С-Бухгалтерия: настройка REST API или 1С-Шины, тест webhook (1 день)
    • · ОФД (Атол): регистрация ККТ, привязка к ЮKassa (2 дня)
    • · СПАРК: получение API-ключа для скоринга B2B (опционально)
    Готово, когда:
    • Тестовая оплата 10 ₽ прошла через ЮKassa
    • Тестовый счёт-фактура отправлен в Диадок
    • Webhook в 1С создал тестовую реализацию
  4. Дни 5–7: импорт базы клиентов, водители, маршрут, пилотный день
    Перенесена база старых клиентов, обучены водители, первый рабочий день.
    • · Импорт CSV-базы клиентов (имя, телефон, адрес, история подписок)
    • · Автогеокодирование адресов (Mapbox + OSM), ручная проверка спорных
    • · Перевод подписок в систему — клиентам уходит SMS «теперь управляйте подпиской в боте»
    • · Регистрация водителей в TG-боте (нужен только Telegram-аккаунт)
    • · Первый рабочий день: VRPTW рассчитал маршрут, водитель повёз, диспетчер смотрит карту
    • · После дня: разбор инцидентов, корректировка зон/окон/тарифов
    Готово, когда:
    • База клиентов в системе (300+ записей)
    • Маршрут на 20+ адресов рассчитан и выполнен
    • Все заказы дня закрыты, фото-отчёты собраны
    • Сборы с дня сошлись со складом (Bottle Ledger в норме)
Альтернативы

Когда наш продукт — не лучший выбор (и когда лучший)

Excel + WhatsApp + 1С отдельно

no-op

Классическая схема малого водного бизнеса: база клиентов в Excel, заказы по WhatsApp, бухгалтерия в 1С, маршрут диспетчер рисует на бумажке.

Плюсы
  • + Стоимость $0 (всё уже есть)
  • + Гибкость (любой каприз клиента — записал в блокнот)
  • + Никакой кривой обучения
Минусы
  • База клиентов не синхронизирована с заказами и 1С
  • Маршруты неоптимальны — пробег на 30–50% выше
  • Нет учёта тары (потери 5–15% бутылок в год)
  • Подписки невозможны (только разовые заказы)
  • При 200+ клиентах диспетчер тонет в WhatsApp-сообщениях
  • B2B нельзя (нет ЭДО, нет post-pay, нет договоров)

Наш вердикт:Работает до 100–150 клиентов, дальше любой рост ломает операцию. Сразу закладывайте платформу — переход с Excel позже стоит дороже.

Альтернатива выигрывает, когда: Если вы только тестируете категорию (1–2 месяца), без планов масштабироваться. Иначе — сразу на платформу.

Чужой агрегатор (Яндекс.Доставка, СберМаркет)

competitor

Использовать готовый агрегатор как канал продаж: ваши товары в их приложении, они доставляют, вы получаете заказ.

Плюсы
  • + Готовая аудитория агрегатора
  • + Не нужны свои водители (поначалу)
  • + Простой старт
Минусы
  • Комиссия 25–40% — съедает всю маржу водной категории
  • Нет подписки — каждый раз новый заказ
  • Нет учёта тары — агрегатор не понимает оборотную упаковку
  • Нет лояльности — клиент агрегатора, а не ваш
  • Нет B2B-сегмента (агрегаторы заточены на B2C)
  • Вы зависите от их правил и комиссий (могут поднять в любой момент)

Наш вердикт:Подходит для тестов спроса в новом районе. Для масштабирования — губительно из-за комиссий. Своя платформа окупается за 3–6 месяцев.

Альтернатива выигрывает, когда: Параллельно со своей платформой как доп. канал для разовых заказов. Но 80%+ выручки должны идти через свою.

Заказной IT-проект (фрилансеры / студия)

build-from-scratch

Найти команду на Upwork или студию в РФ, сделать свою платформу с нуля по ТЗ.

Плюсы
  • + Кастомизация под ваш бизнес 100%
  • + Кодовая база ваша полностью
  • + Можно учесть редкие требования
Минусы
  • Бюджет $60k–$140k на старте
  • Срок 5–7 месяцев до первого реального заказа
  • Риски: студия не справится, фрилансеры исчезнут, ТЗ окажется неполным
  • Поддержка ляжет на вашу команду или подрядчика — это $3–5k/мес
  • Все ошибки набивать самим (мы их уже набили на 5+ запусках)
  • VRPTW, Bottle Ledger, ЭДО — это сложные модули, легко не получить с первого раза

Наш вердикт:Имеет смысл, если у вас есть очень специфические требования, которые не покрываются нашей платформой. В 95% случаев готовое решение быстрее, дешевле и надёжнее.

Альтернатива выигрывает, когда: Если вы — крупная сеть (5000+ клиентов в нескольких городах) с уникальными процессами. Малому и среднему бизнесу — готовое.

Готовая SaaS-платформа (зарубежная)

competitor

Подписаться на готовый SaaS-сервис управления доставкой воды (например, Bluestar или Aquazil из США).

Плюсы
  • + Быстрый старт
  • + Не нужен свой сервер
  • + Регулярные обновления
Минусы
  • Нет интеграций с РФ-провайдерами (ЮKassa, Диадок, СБИС, 1С)
  • Интерфейс на английском, ваши клиенты не справятся
  • Цены в долларах ($200–500/мес), при текущем курсе — дорого
  • Данные клиентов хранятся за рубежом — нарушение 152-ФЗ
  • Нет ЭДО для РФ — B2B-сегмент потерян
  • Поддержка только англоязычная, в EU-часах

Наш вердикт:Зарубежные SaaS не работают для российского рынка из-за отсутствия интеграций с местными платёжными системами, ЭДО и 1С. Наша платформа специально заточена под РФ/СНГ.

Альтернатива выигрывает, когда: Если вы запускаете в США / Европе и не работаете с РФ. Иначе — наша платформа.

Стоимость владения

За что вы платите — и за что не платите

Покупка — что внутри

Покупка за $2 900 единоразово — полные исходники с коммерческой лицензией без роялти, без процентов с оборота, без лимитов по тенантам/городам. Развернуть можно на любой инфре: ваши VPS, Kubernetes, on-premise.

В комплекте 6 месяцев обновлений в подарок (новые фичи и баг-фиксы), сопровождение миграции на ваш сервер (1 день инженера) и доступ в наш приватный Git с тегами релизов.

Аренда — что внутри

Аренда $149/мес — это всё то же, что покупка, плюс инфра, мониторинг, бэкапы и обновления продукта на нашей стороне. Развёртывание за 3–7 минут от оплаты до боевого URL.

Можно перейти с аренды на покупку: до 80% арендных платежей первого года засчитываются в стоимость выкупа. То есть аренда — это рассрочка с правом отказа без штрафа.

TCO за первый год

Платформа (аренда 12 мес × $149)
$1 788
Setup (брендирование, домен, SSL)
$290
VPS (если покупка — Hetzner CX22)
Не нужно при аренде — инфра на нашей стороне
$5–10/мес × 12 = $60–120
Telegram-бот / Mapbox / Sentry
$30–50/мес × 12 = $360–600
ЮKassa комиссия
Зависит от объёма
≈ 2.5% от оборота
ЭДО Диадок / СБИС
$150–400/год
1С-Бухгалтерия (своя)
от $200/год
Первая партия бутылок (800 шт × $4)
Капекс — оборачивается за 6–10 месяцев
≈ $3 200
Кулера (20 шт × $40)
≈ $800
Машина (своя или аренда)
от $300/мес
Водители (2 человека × $700)
$1 400/мес = $16 800/год
ИТОГО Year 1 (аренда + операционка)
≈ $26 000–$30 000
Сравнение: разработка с нуля + операционка Year 1
$60 000–$140 000 + $25k = $85k–$165k

Что вы НЕ платите дополнительно

  • Разработка подписочного движка с расходом по семье
    Готовый rule-engine с UI и cron-jobs. Самостоятельная разработка — $15–25k и 2 месяца до боевого состояния.
  • VRPTW-маршрутизация с OR-Tools
    Готовый Python-микросервис, решает 80 точек на 3 машины за 2 секунды. Самостоятельная реализация — $8–12k и несколько недель тюнинга.
  • Bottle Ledger (учёт оборотной тары)
    Append-only журнал с QR-сканированием. Самостоятельная разработка — $7–10k. Без него теряются 5–15% бутылок в год.
  • Интеграция с ЭДО (Диадок + СБИС + 1С)
    Три готовых адаптера. Самостоятельная разработка + юрист на договор — $10–14k и 3+ недели.
  • Telegram-бот с Apple/Google Pay
    Готовый бот с inline-keyboard и ЮKassa Provider Token. Самостоятельная разработка — $7–10k.
  • Per-tenant цена
    Сколько хотите городов / брендов / франчайзи — без доплат.
  • DevOps на ставке
    При аренде — инфра на нашей стороне. При покупке — auto-deploy скрипты, можно без DevOps до 5k заказов/мес.
Что мы не делаем

Честный список ограничений

Лучше сказать сейчас, чем выяснить через месяц после оплаты. Если ваш кейс упирается во что-то из списка ниже — напишите, предложим обходной путь или честно скажем «не наш».

  • Производство воды (розлив, фильтрация)
    Мы — платформа доставки. У вас должно быть своё производство, поставщик или контракт с водозабором. Платформа учитывает приход с производства как «партии воды» в Bottle Ledger, но не управляет самим розливом. Это другая категория ПО (АСУ ТП), и мы не лезем туда.
  • Мобильное приложение для клиента (iOS/Android)
    Сознательное решение: доставка воды — не импульсная категория, клиент живёт в Telegram-боте и веб-кабинете. Мобильное приложение требует разработки на двух платформах, прохождения App Store / Google Play модерации, обновлений в TestFlight — это $20–40k и 2–3 месяца. Если очень нужно — делаем как заказную доработку. Но в 95% случаев TG-бот + PWA закрывают потребность.
  • Интеграция с фитнес-трекерами и весами для подсчёта воды
    Это уход в категорию health-tech, к которой мы не готовились. Если ваш клиент носит Apple Watch и хочет, чтобы доставка воды коррелировала с его физической активностью — это интересно, но требует отдельной разработки (HealthKit, Google Fit, политики 152-ФЗ). Платформа закладывает «расход по семье» — этого достаточно для 99% клиентов.
  • Маркетплейс воды от разных поставщиков
    Платформа — это инструмент одного бренда (или сети одного владельца). Не маркетплейс типа «выбери из 50 производителей». Если хотите маркетплейс — это другая архитектура (модерация поставщиков, рейтинги, споры, эскроу-платежи). Мы туда не лезем, у вас будет либо своё производство, либо контракт с 2–4 поставщиками.
  • Полноценная WMS (Warehouse Management System)
    Платформа закрывает простой учёт склада: остатки бутылок, инвентаризация по QR, погрузочные листы. Но полноценная WMS с ячеистым хранением, картами склада, штрих-кодами на коробках — это отдельный продукт (Wialon, 1С-Логистика). Если у вас склад 5000+ м² с десятками SKU — нужна интеграция с настоящей WMS, не наша мини-версия.
Глоссарий

Термины, чтобы говорить с нами на одном языке

Bottle Ledger
Журнал учёта каждой 19L бутылки с серийником, владельцем, депозитом, историей.
Внутренний append-only журнал событий по каждой бутылке: «выдана», «возвращена», «утилизирована». Никаких UPDATE — только INSERT с timestamp. Это даёт полный аудит и защищает от потерь.
Asset Ledger
Аналог Bottle Ledger для кулеров, помп, подставок — учёт оборудования.
VRPTW
Vehicle Routing Problem with Time Windows — задача маршрутизации с окнами доставки.
Классическая задача исследования операций. Решается алгоритмами OR-Tools (Google) или Jsprit. На входе — заказы, машины, окна, грузоподъёмность. На выходе — оптимальные маршруты с минимумом пробега. Сложность NP-hard, но эвристики дают решение за секунды.
Подписка с расходом по семье
График доставки, рассчитанный из состава семьи (2 взрослых + ребёнок = ~1.3 бутылки в неделю).
Тара-обмен
Курьер привозит новую бутылку и забирает пустую — циркулярная экономика упаковки.
Залог за бутылку
Сумма (типично 200–300 ₽), которую клиент оставляет за каждую бутылку. Возвращается при сдаче.
Wallet (кошелёк)
Внутренний баланс клиента, с которого автоматически списываются оплаты за заказы.
Post-pay
Оплата после доставки (типично через 14 или 30 дней). Для B2B-клиентов.
Кредитный лимит
Максимальная сумма задолженности B2B-клиента перед отгрузкой требует оплаты.
ЭДО (Электронный документооборот)
Обмен счетами-фактурами, актами, УПД в электронном виде через Контур.Диадок, СБИС, 1С-ЭДО.
УПД
Универсальный передаточный документ — заменяет счёт-фактуру и накладную в одном.
СПАРК / Контур.Фокус
Сервисы скоринга юрлиц: финансы, риски, банкротства. Используются для B2B-аккаунтов.
ОФД
Оператор фискальных данных — посредник между ККТ и ФНС, обязателен по 54-ФЗ.
СанПиН для кулеров
Санитарные правила: чистка кулера обязательна раз в 12 месяцев.
Multi-tenant
Один экземпляр платформы обслуживает несколько брендов или городов с изоляцией данных.
PWA
Progressive Web App — веб-сайт, который добавляется на главный экран как приложение, без сторов.
Telegram Provider Token
Ключ ЮKassa для приёма платежей напрямую в Telegram-боте (Apple/Google Pay, карты).
Сценарии использования

Кому подходит «Доставка воды и напитков» — и как его обычно разворачивают.

2 бутылки 19L каждые 2 недели, Telegram-бот, Apple Pay — без головной боли

Двое взрослых, кофе по утрам, чай вечером. Расход — около 1 бутылки в неделю.

Премиум-вода, 5 бутылок в неделю, кулер в подарок, графика «по требованию»

Пара 40 лет + 3 детей (8, 12, 16 лет). Загородный дом 250м².

12 бутылок в неделю, оплата раз в месяц, ЭДО Диадок, кулер на каждый этаж

Офис 3 этажа, 35 сотрудников. Кулера на каждом этаже (3 шт).

Доставка в одно окно раз в неделю, единый счёт УК, индивидуальные подписки жильцов

ЖК «Восход» на 200 квартир, 80 из них — клиенты доставки воды.

Что внутри

Готовые сценарии — не надо собирать из частей.

  • Веб-кабинет клиента + админка оператора
  • Telegram-бот для самообслуживания и поддержки
  • Полнофункциональная админ-панель оператора
  • Маршрутизация курьеров + live-tracking
  • Тарификация по зонам и весу
  • Брендирование (логотип, цвета, шрифты, домен) — без правок исходников
  • Локализация под русский + английский, легко добавить другие
Частые вопросы

Что спрашивают операторы перед запуском «Доставка воды и напитков»

Сколько бутылок нужно для старта?
Минимум 800–1200 штук для города с населением 500k+. Расчёт: при 200 клиентах и обороте 2 недели на бутылку, в обороте всегда около 600 бутылок (по 2–3 у каждого клиента + резерв на складе). Стоимость 800 бутылок 19L — примерно $3000–4000. Окупаемость — 6–10 месяцев.
Что с Telegram, если его заблокируют в моей стране?
В РФ Telegram официально не заблокирован (после 2020). В Беларуси, Казахстане работает без проблем. Веб-кабинет — это полноценная альтернатива TG-боту (все функции есть и там). Также можно подключить SMS-бот через Voximplant как fallback. В крайнем случае — поднимем приложение на Capacitor (PWA в нативной обёртке) за 1–2 недели.
Подойдёт ли платформа для доставки бутилированного пива/лимонадов/кофе?
Да, архитектура товарная — поддерживает любые SKU. Алкоголь требует возрастной проверки (мы делаем через паспорт + 18+ галочку), а в РФ — лицензии для розничной продажи. Если у вас уже есть лицензия — платформа работает «как есть». Для кофе в зёрнах / лимонадов одноразовых — тоже подходит, только без тара-обмена.
Как платформа обрабатывает 152-ФЗ (персональные данные)?
Все данные клиентов хранятся в РФ-юрисдикции (по умолчанию — VPS в РФ). Согласие на обработку — модальное окно при регистрации, лог согласий — в audit_log. Право на забвение (удаление по запросу) — кнопка в кабинете клиента. Уведомление в Роскомнадзор о начале обработки ПДн — поможем оформить (шаблон в инструкции).
Можно ли работать через ИП на УСН без онлайн-кассы?
Нет, если вы продаёте конечному потребителю (B2C). Закон 54-ФЗ требует онлайн-кассу с фискализацией чеков. Платформа интегрирована с ОФД (Атол, Платформа ОФД) — каждый платёж автоматически уходит в ФНС. Если работаете только с юрлицами по безналу — касса не нужна (но это узкий случай).
Сколько водителей нужно для старта?
На 200–300 клиентов — 1 водитель на ставке (с машиной 1.5–3 тонны грузоподъёмности). На 500–800 клиентов — 2 водителя. На 1500+ — 3–4 водителя + диспетчер. VRPTW распределяет нагрузку так, что 1 водитель эффективно делает 25–40 точек в день.
Как водитель регистрируется в системе?
Через Telegram-бот: /start → «я водитель» → ввод кода-приглашения (генерируется диспетчером в админке) → готово. Никаких скачиваний приложений, обучения интерфейсам. С первого же дня видит маршруты, статусы, заказы.
Что если водитель потеряет телефон или сменит машину?
Маршрут привязан к водителю, не к телефону. Логин в TG-боте — на новом устройстве через тот же Telegram-аккаунт. История маршрутов и геолокаций — в БД, не на телефоне. Смена машины — в админке диспетчер ставит новую грузоподъёмность для водителя.
Поддерживает ли платформа несколько городов или регионов?
Да, multi-tenant из коробки. Тенант = город или регион (свой склад, свои водители, свой ассортимент, свои цены). Владелец сети видит всё в агрегированной аналитике. Один установленный экземпляр платформы обслуживает до 50 городов без проблем (на современном VPS с 8 CPU / 16 GB RAM).
Что с зимней доставкой? Вода замерзает в машине.
Для регионов с морозами ниже -10°C предусмотрено: пометка «зимний режим» в подписке (доставка не позднее 18:00 чтобы не оставлять у двери), термоизолированная упаковка (стандарт у поставщика), уведомление клиенту «откройте дверь сразу при звонке». В планах — интеграция с термоконтейнерами для машин (но это редкий кейс).
Как работают возвраты денег при отказе клиента?
Если клиент уходит — возвращаем залоги за все возвращённые бутылки. Если бутылки не возвращены — депозит удерживается как стоимость утраты. Wallet-баланс возвращается на карту через ЮKassa (с минимальной комиссией провайдера ≈1%). Процесс автоматический, без бумаг.
Что с B2B при срочной задержке оплаты?
После 7 дней просрочки — мягкое уведомление в почту бухгалтерии + копия директору. После 14 дней — приостановка отгрузок до оплаты. После 30 дней — передача в коллекшн (опционально, через партнёров). Все условия в договоре, прозрачно.
Сколько занимает санитарная чистка кулера и кто её делает?
По СанПиН — раз в 12 месяцев. Чистка занимает 30–40 минут (разборка, кварцевая лампа, химия, сборка). Делают штатные техники компании (если есть) или партнёр-подрядчик. В платформе — авто-уведомление за 30 дней до даты, диспетчер планирует визит, журнал чисток с отметкой сотрудника.
Можно ли подключить свой ОФД, если у меня уже есть договор?
Да. Платформа поддерживает Атол ОФД, Платформа ОФД, Первый ОФД и Такском. Если у вас другой — добавим коннектор за 1–2 дня (по запросу, обычно бесплатно для клиентов на тарифе «Аренда»).
Какие требования к VPS, если я покупаю исходники?
Минимум: 4 CPU / 8 GB RAM / 80 GB SSD (для старта до 1000 клиентов). Рекомендуем: 8 CPU / 16 GB / 160 GB SSD (для 1000–5000 клиентов). ОС: Ubuntu 22.04 LTS. Стек: Docker + Docker Compose. Хостинг: Hetzner ($15–30/мес), Vultr ($20–40/мес), Selectel (₽1500–3000/мес).
Поддерживается ли интеграция с системой охраны/умного дома?
Из коробки — нет. Но есть webhook на каждый статус заказа, к которому можно подключить любую систему (Home Assistant, MajorDoMo, IFTTT). Например, при «у двери» — открыть замок или сделать вызов на видеодомофон. Кастомная доработка под конкретный клиент — обычно 1–2 дня инженера.
Что с GDPR, если я хочу запуститься в EU?
Платформа поддерживает GDPR-режим: согласия на обработку, право на забвение, право на экспорт данных, журнал согласий. Хостинг в EU (Hetzner Falkenstein/Helsinki). Договор обработки данных (DPA) — поможем составить по шаблону. Платформа сертификации ISO 27001 — на текущей дорожной карте (Q4 2026).
Что я получаю при покупке: исходники или только бинарник?
При покупке вы получаете исходный код в приватный Git-репозиторий, коммерческую лицензию без роялти и образ контейнера в нашем Docker-registry. Срок поддержки — 6 месяцев бесплатно, дальше по тарифу.
Где физически работает мой деплой при аренде?
На VPS вашего облака на выбор: Hetzner, OVH, Vultr, DigitalOcean, Elistrax. Регион выбираете при заказе. Управление инфрой берём на себя: установка, TLS, мониторинг, авто-скейл.
Сколько времени от заказа до боевого URL?
Аренда — 3–7 минут до зелёного HTTPS. Покупка — 1–5 рабочих дней (зависит от того, нужен ли деплой на ваш собственный VPS или вы будете разворачивать сами).
Можно подключить собственный домен и сертификат?
Да. Указываете свой домен в кабинете — TLS-сертификат выпускается автоматически через Let's Encrypt (через Caddy) при первом HTTPS-запросе. Cloudflare включён в режиме оранжевого облака для DDoS-защиты.
Как работают обновления продукта?
Каждое обновление проходит через пайплайн backup → migrate → smoke-test → switch. При любом сбое автоматический откат на предыдущий контейнер из registry. Историю обновлений видно в админ-панели.
Что если мне нужны кастомные доработки?
Берём в работу как отдельный проект на базе вашей копии. SLA на критичные баги ядра — 1 рабочий день. Кастомные фичи оцениваем индивидуально.

Готовы запустить «Доставка воды и напитков» под своим брендом?

Аренда: 5 минут от заказа до боевого URL. Покупка: 1–5 рабочих дней.