Мобильное приложение для интернет-магазина с доставкой: разработка на 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 специализируется на заказной разработке под конкретные бизнес-задачи — без шаблонных решений, с полной передачей исходного кода и документации заказчику.