Разработка мобильного приложения для доставки товаров
Доставка товаров принципиально отличается от доставки еды: крупногабаритные грузы, интервальные временные слоты, подпись при получении, интеграция с внешними ERP/WMS. Мы создаём приложения для служб доставки и интернет-магазинов, которые решают эти задачи — с точным расчётом тарифа, оптимизированными маршрутами и надёжным трекингом посылок. Наш опыт — 5 лет на рынке и более 20 проектов доставки. Мы знаем, как объединить клиентское приложение, приложение курьера и админку в единую систему.
Как мобильное приложение для доставки товаров решает проблему сложных тарифов?
Расчёт стоимости доставки — первая боль любого логистического бизнеса. Тариф зависит от веса, габаритов, хрупкости и даже температурного режима. Хранить матрицу тарифов на сервере — единственно верное решение: запрос POST /delivery/calculate возвращает доступные варианты с ценой и сроком. Хардкод в приложении неизбежно приводит к ошибкам при изменении условий. Серверный расчёт тарифа позволяет гибко настраивать тарифы без выпуска новой версии приложения. Например, при изменении стоимости топлива или появлении нового тарифа, достаточно обновить конфиг на сервере. Для оптимизации маршрутов мы используем OR-Tools — библиотеку от Google, которая позволяет сократить пробег на 15-20%. API доставки товаров стандартизирует обмен данными между приложением и складом.
Управление временными слотами — ещё один вызов. Клиенты выбирают интервал в 2-4 часа, а не точное время. Слоты генерируются на N дней вперёд, каждый с лимитом заказов. При заполнении слот становится недоступен. Ёмкость рассчитывается исходя из количества активных курьеров и средней загрузки рейса. Это позволяет избежать перегрузки курьеров и снизить количество жалоб. В одном из проектов с сетью гипермаркетов мы внедрили динамическое перестроение маршрута при добавлении нового заказа — время доставки сократилось на 25% относительно фиксированного маршрута.
Почему важна интеграция с ERP-системами?
Без интеграции с ERP (1С, МойСклад, SAP) приложение рискует продавать товары, которых нет в наличии. Мы реализуем синхронизацию через REST API или асинхронные очереди RabbitMQ/Kafka. Каталог товаров кэшируется локально (Room/Core Data) с TTL и инвалидацией при событии «обновление ассортимента». Двойная проверка — при добавлении в корзину (сервер подтверждает доступность) и при финальном оформлении — почти полностью исключает ситуации «заказал, а товара нет». Для сети магазинов товаров для дома мы реализовали интеграцию с 1С через REST API. При обновлении цены или остатка на складе 1С отправляет событие, приложение обновляет кэш и моментально блокирует заказ, если товара нет. Это позволило сократить количество возвратов на 30%. При возврате товаров клиент инициирует запрос через приложение, сервер создаёт возвратную накладную и запускает возврат средств.
Серверный расчёт тарифа в три раза точнее хардкода — погрешность снижается с 15% до 5% за счёт централизованного обновления правил. Кроме того, мы автоматически генерируем отчёты по эффективности работы курьеров в Power BI или Tableau.
Как настроить серверный расчёт тарифа? Пошаговый процесс
- Определение параметров: вес, габариты, хрупкость, температурный режим, тарифная зона.
- Разработка бэкенда: создание эндпоинта
calculateс инъекцией правил ценообразования. - Загрузка матрицы тарифов: в виде JSON-конфига, который можно менять без деплоя.
- Интеграция с картографическим API: для расчёта дистанции и времени по точным маршрутам.
- Падение ни одного запроса: при сбое — резервный тариф (максимальный или прошлый успешный).
- Тестирование: 100+ сценариев, включая граничные значения веса и хрупкости.
Что мы используем?
| Компонент | iOS | Android | Cross-platform |
|---|---|---|---|
| Язык/Фреймворк | Swift 5.9+, SwiftUI | Kotlin, Jetpack Compose | Flutter/Dart, React Native/TS |
| Хранение | CoreData, CloudKit | Room, DataStore | sqflite, Hive |
| Сеть | URLSession + async/await | Retrofit + Coroutines | Dio, axios |
| DI | Ручной или Swinject | Hilt, Koin | Provider, Riverpod |
| Push | APNs + FCM | FCM | FCM |
Push-уведомления реализуются через APNs в строгом соответствии с App Store Review Guidelines Section 4.2. В Android — через FCM с высоким приоритетом.
Что входит в работу?
| Этап | Состав работ | Результат |
|---|---|---|
| Аналитика | Интервью с заказчиком, изучение бизнес-процессов, API интеграций | Техническое задание |
| Проектирование | UI/UX дизайн, архитектура БД, выбор стека | Дизайн-макеты, ER-диаграммы |
| Разработка | Backend (API), клиентские приложения, приложение курьера | Исходный код, документация API |
| Тестирование | Модульное, интеграционное, нагрузочное, UAT | Отчёт о тестировании |
| Деплой | Публикация в App Store/Google Play, настройка CI/CD | Работающее приложение в сторах |
Сроки и стоимость
MVP (одна платформа + приложение курьера) занимает 8–14 недель. Полная платформа (iOS + Android, интеграция с 1С, слоты, возвраты, панель диспетчера) — 4–8 месяцев. Стоимость рассчитывается индивидуально после анализа требований. Мы гарантируем прозрачные этапы и фиксированные сроки. Получите консультацию по вашему проекту — оценим сроки и стоимость. Свяжитесь с нами, чтобы обсудить детали.
Попробуйте наш подход — закажите предварительную оценку проекта. Узнайте, как мы можем помочь вашему бизнесу автоматизировать доставку и сократить издержки.







