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

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.
Разработка и поддержка любых видов мобильных приложений:
Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Предлагаемые услуги
Показано 1 из 1 услугВсе 1735 услуг
Реализация бота-ассистента для обработки заказов в мобильном приложении
Средняя
~3-5 рабочих дней
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    756
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    624
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1054
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    862
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    445

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

Бот обработки заказов — это не просто чат. Это диалоговый интерфейс поверх бизнес-логики: создание заказа, изменение состава, отслеживание статуса, отмена. Каждое действие должно быть атомарным и откатываемым — пользователь может передумать на любом шаге.

Управление состоянием диалога

Оформление заказа через бота — это форма с несколькими шагами, растянутая во времени. Между репликами пользователь может свернуть приложение, переключиться в другое, вернуться через 10 минут. Состояние должно сохраняться.

Структура слотов для диалога заказа:

{
  "session_id": "uuid",
  "step": "confirm_address",
  "order_draft": {
    "items": [
      {"sku": "ITEM-123", "qty": 2, "price": 1500}
    ],
    "delivery_address": null,
    "payment_method": "card",
    "promo_code": null
  },
  "expires_at": "2024-01-15T14:30:00Z"
}

Состояние хранится на сервере (Redis с TTL 30–60 минут). Мобильное приложение передаёт только session_id с каждым сообщением.

Критичный момент: каждый шаг диалога должен поддерживать команды «назад» и «отмена». Если пользователь на шаге подтверждения адреса напишет «изменить товар», бот должен вернуться к шагу выбора состава, не обнуляя уже введённые данные.

Интеграция с бэкендом заказов

Бот не должен содержать бизнес-логику. Он вызывает методы API:

  • POST /orders/draft — создать черновик
  • PUT /orders/draft/{id}/items — изменить состав
  • POST /orders/draft/{id}/submit — оформить
  • DELETE /orders/{id} — отменить

Типичная проблема: бот позволяет пользователю добавить товар, которого нет в наличии, и об этом узнаёт только при финальном submit. Это плохой UX. Проверку наличия нужно делать при добавлении позиции в черновик.

Если используется LLM для обработки сообщений — function calling делает интеграцию чище: модель вызывает add_to_cart, remove_from_cart, apply_promo_code как инструменты, а не пытается разобрать намерение через регулярки.

UI на мобильном клиенте

Кроме текстового чата, бот часто использует структурированные элементы:

Quick reply кнопки — после вопроса «Способ оплаты?» показываем варианты как тапабельные чипы, не заставляем пользователя печатать.

Карточки товаров — при подтверждении состава заказа показываем мини-карточки с изображением, названием, ценой. На Android это RecyclerView горизонтальной прокрутки внутри bubble сообщения, на iOS — UICollectionView с horizontalScrollDirection.

Резюме заказа — финальный экран перед подтверждением отдельным компонентом, не plain text. Пользователь видит полный список, сумму, адрес и кнопку «Оформить».

Уведомления о статусе

После оформления заказа бот продолжает работу через push-уведомления: «Заказ принят», «Курьер выехал», «Доставлен». На iOS — APNs через Firebase Cloud Messaging, на Android — FCM напрямую.

Уведомление содержит deep_link с параметрами, которые открывают чат с историей этого заказа, а не главный экран приложения.

Процесс работы

Проектирование сценариев: обычный заказ, изменение, отмена, повторный заказ, промокод.

Разработка state machine на сервере + интеграция с API заказов.

Мобильный UI: bubble layout, quick replies, карточки товаров, резюме.

Тестирование нестандартных путей: прерывание в середине, противоречивые команды, истёкшая сессия.

Ориентиры по срокам

Бот с линейным сценарием (выбор → адрес → оплата → подтверждение) + мобильный клиент — 1–1,5 недели. С нелинейными сценариями, интеграцией с системой лояльности, историей заказов и push-уведомлениями — 3–4 недели.