Разработка приложения доставки: нюансы картографии

0
56

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

Мир уже не будет прежним. Доставка становится стандартом для любого потребительского бизнеса. За много лет разработки мобильных приложений для торговли и услуг Spider Group накопила опыт технической реализации доставки. Его не уложить в одну статью, поэтому сегодня я расскажу об одном, особенно важном аспекте таких решений — работе с картами. А в качестве примера использую наше приложение для краснодарской сети ресторанов Madyar Collection.

Зонируем доставку

С самого начала вы должны решить вопрос рентабельности доставки в разные районы города. Чем дальше клиент, тем дольше и дороже везти заказ. Если вы хотите занять приличную долю рынка, не стоит ограничиваться ближайшим окружением и разочаровывать клиентов, которым не повезло оказаться чуть дальше. Но доставлять в убыток ради доли рынка — мера ограниченная и подойдёт не всем. Можно гибко рассчитывать цену, как сервисы такси, но это усложняет систему и для клиентов, и для вас.

В приложении Madyar действует другой вид расчёта стоимости доставки. Всё покрытие доставки поделено на зоны. Такой же подход, кстати, использует IKEA. На примере Краснодара, где работают рестораны, зоны можно поделить по районам города и близлежащим станицам и хуторам.

У сети Madyar Collection собственная курьерская служба, которая спешит доставить свежеприготовленную еду в любую точку Краснодара и даже за его пределы. У каждого ресторана есть своё покрытие с соответствующей стоимостью и временем доставки и учётом времени поступления заказа.

Как и большинство крупных городов, Краснодар испытывает проблемы с пробками. Вам предстоит уложить этот фактор в бизнес-модель на основании статистических данных, чтобы не возникало неожиданностей. Например, оказалось, что вне часов пик при расстоянии в 6 километров курьер может доставить еду за 20 минут, а в час пик на этом же маршруте время доставки увеличивается до 45 минут. Этот момент стоит гибко корректировать по свежим навигационным данным от курьеров.

Выбираем карты

Для доставки необходимо точное определение местоположения пользователя. Мы используем сразу несколько инструментов:

Для Madyar мы приняли решение отказаться от карт Google и оставить связку Яндекс. Карт и DaData. К решению пришли итерационно, обрабатывая обратную связь от пользователей. Google Карты просты в использовании и интеграции, производитель давно довёл их до ума. Но даже огромная американская корпорация не может одинаково хорошо вести бизнес везде. Оказалось, что актуализация «гуглокарт» по дорогам и адресам в регионах России очень слабая.

Например, улица Репина и проезд Репина на картах Google определяются как один и тот же адрес. А если вы делаете заказ в проезд Дальний, навигатор отправит курьера на улицу Дальнюю, которая находится в нескольких кварталах от нужного адреса. Многие новые районы отрисовывались в Google с существенной задержкой, и пользователям приходилось каждый раз расписывать в комментариях к заказу, как до них добраться. Весь негатив, получаемый от таких ошибок, клиенты направляют вовсе не в калифорнийский офис Google, а в ресторан.

Нам это совершенно не нужно, поэтому в новой версии приложения команда переходит на API Яндекс.Карт. В последнее время они вышли на новый уровень качества и детализации отображения адресных данных. Интеграция с Яндексом вызвала больше технических трудностей; приходилось часто обращаться в техподдержку для проверки подключений и работы функций. Но удобство пользователя важнее. Здесь российскому проекту равных нет.

И всё же, одного Яндекса оказалось недостаточно.

Уточняем через DaData

С сервисом DaData мы начали сотрудничать, когда появилась необходимость осуществлять доставку в коммерческие помещения. Люди редко живут в неожиданных местах, а вот коммерческую деятельность можно вести, в прямом смысле, в полях. Этот сервис позволяет максимально точно передать детализированный адрес. Фактически, DaData дополняет для нас данные Яндекс.Карт.

Интересное: Как мы делаем нейросеть для поиска похожих товаров по фото

Мы используем этот сервис для многих приложений, нацеленных на B2B-сегмент. Ручное заполнение регистрационных карточек предприятий требует очень много времени: по каждому нужно ввести название компании, ИНН, ОГРН, КПП, юридический адрес, фактический адрес, форму налогового обложения, контакты директора и многое другое. А главное, что нельзя ошибиться ни в одной одной букве или цифре.

DaData самостоятельно заполняет карточку организации. Нам остаётся только ввести название или ИНН. Подсказки при наборе экономят дополнительное (и значительное) время.

Из свежих проектов с применением вышеописанной геолокации в нашем портфолио можно отметить сервис доставки еды из сети ресторанов Madyar Collection, а также уникальный сервис доставки еды, продуктов, лекарств, товаров и цветов Антей, в котором курьеры работают со 120 поставщиками.

Если вам понравилась статья, обязательно поделитесь ей с друзьями. Хотите оставить отзыв о нашем блоге или предложить тему? Пишите редактору на a.lisovitsky@spider.ru. Подписаться на нас можно в Facebook, ВКонтакте, Twitter и Instagram. Впереди много интересного!

В Spider Group на вас работает более чем двадцатилетний опыт в разработке мобильных приложений, веб-разработке сайтов, серверных проектов, дополненной реальности, искусственного интеллекта и Интернета вещей.