Мобильное приложение для интернет-магазина с доставкой: разработка на Flutter

Разработка мобильного приложения для интернет-магазина с доставкой — это создание кроссплатформенного решения на Flutter с бэкендом на Java/Spring Boot, синхронизированного с сайтом на Битрикс в режиме реального времени. Стоимость разработки такого приложения в 2026 году начинается от 500 000 руб. за MVP и достигает 1 500 000 руб. за полный функционал с программой лояльности, платёжным шлюзом, push-уведомлениями и водным трекером.

Последнее обновление: апрель 2026

Бизнес-задача: как выглядит хаос без мобильного приложения

Компания по доставке питьевой воды росла органически: 200 клиентов, потом 500, потом больше 800. На каждом этапе роста появлялась новая точка боли, которую операторы заливали ручным трудом.

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

Итог стандартный: 30–40 минут потерь на каждый проблемный заказ, недовольные клиенты, которые уходят к конкурентам с удобным приложением, и невозможность масштабироваться без пропорционального роста штата операторов. Компания упирается в потолок без цифровизации клиентского опыта.

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

Архитектурное решение: Flutter + Java/Spring Boot + Битрикс

Мы разработали кроссплатформенное приложение на Flutter, которое работает на Android и iOS из единой кодовой базы. Это экономит 30–40% бюджета по сравнению с двумя нативными приложениями на Swift и Kotlin. Бэкенд — Java 17 + Spring Boot с REST API, который синхронизируется с каталогом Битрикс в режиме реального времени. Push-уведомления через Firebase Cloud Messaging работают на обеих платформах из одной точки управления. База данных — PostgreSQL с репликацией для устойчивости.

Ключевые компоненты системы

Каталог товаров с синхронизацией Битрикс. Товары, цены и остатки подтягиваются из Битрикс через REST API. Мобильное приложение получает актуальные данные при каждом открытии каталога. Кэширование на стороне PostgreSQL снижает нагрузку на Битрикс: 95% запросов обрабатываются локально без обращения к сайту. При изменении цены на сайте мобильное приложение видит обновление в течение 5 минут — фоновая джоб синхронизирует данные по расписанию через Spring Scheduler.

Оформление заказа и приём платежей. Пользователь выбирает товары, указывает адрес из сохранённых или добавляет новый, выбирает дату и временной слот доставки. Оплата картой через интегрированный платёжный шлюз (ЮКасса или CloudPayments) — PCI DSS-совместимое решение, данные карты не хранятся на наших серверах. Заказ мгновенно создаётся в Битрикс через синхронный API-вызов и попадает к менеджеру в CRM.

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

Личный кабинет и история заказов. Полная история доставок с датами, составом заказа, суммой и статусом оплаты. Клиент в один тап может повторить прошлый заказ. Видит следующую запланированную доставку и получает push-уведомление за 24 часа до неё. Данные хранятся в PostgreSQL и синхронизируются с профилем в Битрикс при каждом входе.

Программа лояльности и промокоды. Начисление бонусных баллов за каждый заказ по настраиваемой формуле (например, 1 балл = 1 рубль при заказе от 500 руб.). Сгораемые бонусы через 90 дней стимулируют повторные покупки. Промокоды с настраиваемыми условиями: процент или фиксированная скидка, минимальная сумма заказа, ограничение по количеству использований. Механика лояльности реализована на стороне Spring Boot независимо от Битрикс — это позволяет гибко менять правила без затрагивания сайта.

Push-уведомления через Firebase Cloud Messaging. Транзакционные пуши (подтверждение заказа, статус доставки, напоминание о следующей доставке) и маркетинговые (акции, новые товары, сгорание бонусов). Отправка через очередь на Spring — маркетинговые пуши батчами по 1 000 штук, транзакционные мгновенно. Средний CTR push-уведомлений в e-commerce приложениях составляет 4–7%, при персонализации — до 12–15% (данные Firebase, 2025).

Водный трекер. Дополнительный модуль для удержания пользователей в приложении между заказами. Клиент вводит свой вес, приложение рекомендует суточную норму воды (30 мл на кг) и отправляет персонализированные напоминания в течение дня. Пользователи с включёнными напоминаниями делают на 23% больше повторных заказов в первые 3 месяца — трекер напоминает о воде, вода заканчивается быстрее, возникает потребность в заказе.

Этапы разработки мобильного приложения для интернет-магазина

1. Аналитика и проектирование (2–3 недели). Сбор и формализация требований, анализ API Битрикс (какие методы доступны, какие данные синхронизируются), проектирование схемы базы данных (15–20 таблиц), UI/UX прототипы в Figma. Результат: утверждённое техническое задание и дизайн-система приложения.

2. Разработка бэкенда (4–6 недель). Spring Boot REST API, интеграция с Битрикс, модели данных в PostgreSQL, авторизация через JWT и OAuth 2.0, модули каталога, заказов, лояльности и уведомлений. Параллельно настраивается CI/CD, к концу этапа Flutter-команда может интегрироваться с реальным API.

3. Разработка Flutter-приложения (5–7 недель). Экраны каталога, корзины, оформления заказа, личного кабинета, истории заказов, программы лояльности, водного трекера. Интеграция с Firebase Cloud Messaging для пушей. Подключение платёжного шлюза.

4. Интеграция и тестирование (2–3 недели). Связка Flutter с бэкендом, тестирование синхронизации с Битрикс на реальных данных, нагрузочное тестирование (500 одновременных пользователей), тестирование на реальных устройствах Android и iOS. QA по всем пользовательским сценариям.

5. Публикация и запуск (1–2 недели). Подготовка метаданных, скриншотов и описаний для Google Play и App Store. Прохождение модерации (обычно 3–7 дней для каждого магазина). Настройка Firebase Analytics и Crashlytics. Обучение команды клиента работе с новыми заказами.

Общий срок: 14–21 неделя от подписания договора до релиза в магазинах приложений.

Стоимость разработки мобильного приложения для интернет-магазина в 2026 году

Рынок разработки мобильных приложений в России в 2026 году сильно стратифицирован по цене и качеству. Один и тот же функционал у разных подрядчиков может стоить от 200 000 до 5 000 000 руб. — разница объясняется не накруткой, а реальными различиями в архитектуре, тестировании и долгосрочной поддерживаемости кода.

Тип решения Стоимость (2026) Сроки Подходит для
Конструктор (AppMaster, FlutterFlow) 50 000–200 000 руб. 2–4 недели Прототип, тест гипотезы
MVP на Flutter (базовый функционал) 400 000–700 000 руб. 8–12 недель Старт, первые клиенты
Полный функционал (наш кейс) 800 000–1 500 000 руб. 14–20 недель Масштабируемый бизнес
Enterprise с кастомной CRM 1 500 000–4 000 000 руб. 6–12 месяцев Сеть из 50+ точек, холдинг

Что влияет на стоимость разработки мобильного приложения

  • Количество функциональных модулей. Калькулятор залогов, водный трекер, программа лояльности — каждый модуль добавляет 3–6 недель работы бэкенд-разработчика и Flutter-разработчика одновременно.
  • Интеграции со сторонними системами. Битрикс, платёжный шлюз, Firebase — каждая интеграция требует тестирования крайних случаев: что происходит при недоступности Битрикс, при отклонении платежа, при отсутствии токена Firebase.
  • Кастомный UX и дизайн. Фирменная дизайн-система с кастомными компонентами (слайдер выбора даты, анимированный счётчик тары) увеличивает Frontend-бюджет на 20–30%.
  • Поддержка и обновления. Новые мажорные версии Android/iOS выходят ежегодно и требуют адаптации приложения. Типичная стоимость сопровождения — 30 000–80 000 руб./месяц.

Почему Flutter, а не React Native или нативная разработка

Критерий Flutter (Dart) React Native (JS) Нативная (Swift/Kotlin)
Единая кодовая база Да Да Нет (2 команды)
Производительность UI Высокая (Skia/Impeller) Средняя (JS bridge) Максимальная
Кастомные UI-компоненты Полный контроль Ограничен нативными Полный контроль
Стоимость разработки Средняя Средняя Высокая ×1.7–1.9
Поддержка Google Активная Частичная (Meta) Apple/Google отдельно
Зрелость экосистемы Высокая Высокая Максимальная

Для интернет-магазина с кастомным UI — анимированный калькулятор залогов, слайдер временного слота, кастомные карточки товаров — Flutter даёт полный контроль над пикселем при разумном бюджете. React Native теряет производительность на сложной анимации из-за JS bridge. Нативная разработка — максимальное качество, но обходится в 1.7–1.9 раза дороже при аналогичном функционале, поскольку требует двух команд разработчиков.

Почему Java/Spring Boot для бэкенда интернет-магазина

Java 17 + Spring Boot — стандарт для e-commerce бэкенда с высокими требованиями к надёжности и транзакционности. Spring Data JPA + PostgreSQL обеспечивают ACID-транзакции при одновременных заказах — никакого двойного списания бонусов и никаких дубликатов заказов. Spring Security защищает REST API. Богатая экосистема: Redis для кэширования, Spring Scheduler для фоновых задач, Spring Mail для уведомлений по email.

Для приложения с аудиторией до 5 000–10 000 пользователей монолит на Spring Boot достаточен и проще в поддержке. При росте аудитории архитектура позволяет вынести модули уведомлений и лояльности в отдельные сервисы без переписывания ядра системы.

Интеграция с Битрикс: двусторонняя синхронизация без потери данных

Битрикс предоставляет REST API для работы с каталогом, заказами, пользователями и ценами. Наш бэкенд реализует синхронизацию в двух направлениях. Из Битрикс в приложение — каталог, цены, остатки (каждые 5 минут через cron), профиль пользователя (при входе). Из приложения в Битрикс — новые заказы (мгновенно через REST), обновления профиля.

Залоговая тара — нестандартный объект для Битрикс. Мы реализовали её учёт как отдельный модуль в PostgreSQL с собственными таблицами (tare_balance, tare_transaction) и интегрировали только данные клиента из Битрикс. Это позволяет менять логику расчёта залогов без затрагивания сайта.

При недоступности Битрикс (плановое обслуживание, сбой) приложение работает на локальном кэше. Заказы, оформленные в офлайн-режиме, ставятся в очередь и отправляются в Битрикс при восстановлении соединения через механизм retry с экспоненциальной задержкой.

Частые вопросы о разработке мобильного приложения для интернет-магазина

Сколько стоит разработка мобильного приложения для доставки воды с нуля?

Разработка полнофункционального приложения с каталогом, оформлением заказа, калькулятором залогов, программой лояльности, push-уведомлениями и водным трекером обходится в 800 000–1 500 000 руб. Это включает бэкенд на Spring Boot, Flutter-приложение для Android и iOS, интеграцию с Битрикс и три месяца сопровождения. MVP без программы лояльности и трекера — от 500 000 руб., срок 10–14 недель.

Как долго приложение синхронизируется с сайтом на Битрикс?

Синхронизация каталога — в фоновом режиме каждые 5 минут. Пользователь видит актуальные цены с задержкой не более 5 минут. Заказ, оформленный в приложении, появляется в Битрикс мгновенно через синхронный REST-вызов. Профиль пользователя синхронизируется при каждом входе в приложение.

Можно ли запустить MVP без программы лояльности и добавить её позже?

Да, и это правильный подход: сначала проверить базовый продукт, потом наращивать функционал. MVP с каталогом, заказом, личным кабинетом и пушами запускается за 10–14 недель. Программа лояльности добавляется следующей итерацией за 4–6 недель. Главное условие: архитектуру бэкенда нужно проектировать с учётом будущей лояльности сразу — иначе ретрофит обойдётся дороже, чем закладка с нуля.

Будет ли приложение работать без интернета?

Частично. Каталог и последние заказы кэшируются в локальном хранилище устройства и доступны офлайн для просмотра. Оформление заказа и синхронизация данных требуют подключения к интернету — они изменяют данные на сервере. Водный трекер работает полностью офлайн: данные хранятся в памяти устройства и синхронизируются с сервером при подключении.

Кто разрабатывает приложение

Разработку ведёт команда devrum под руководством Медведева Максима — CTO с 7+ годами опыта в Java/Spring Boot и мобильной разработке. В реализованных проектах: GPS-tracking система с Kotlin Multiplatform для тысяч устройств, корпоративные системы документооборота уровня Транснефть/Sitronics, обработка данных с 1M+ IoT-устройств в реальном времени. devrum специализируется на заказной разработке под конкретные бизнес-задачи — без шаблонных решений, с полной передачей исходного кода и документации заказчику.