CASE / OPENEDBOT-FOOD-DELIVERY
← все кейсыTelegram-бот · F&Bгод · 2024длительность · 9 недель

Бот доставки еды

Telegram-бот доставки для сети ресторанов: меню с фото, оплата и трекинг курьера в одном окне.

@bistro_delivery_botonline
Привет! Что закажем сегодня? 🍽 Меню ниже:
🍜
Том ям
₽ 540
🍣
Ролл «Эби»
₽ 380
🍔
Бургер BBQ
₽ 460
Корзина · 3 поз.₽ 1 380
ЗАКАЗ #4821
Принят
Готовится
Курьер в пути
Доставлен
ETA · 12 мин
повтор в 1 тап
01 / CONTEXTКонтекст

Контекст

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

Задача была не «сделать ещё одно приложение», а перенести весь путь заказа туда, где аудитория уже сидит — в Telegram. Меню с фото, корзина, оплата и понимание «где мой курьер» должны жить в одном окне, без установки, регистрации и звонков.

02 / BRIEFЗадача

Задача

  1. 01Меню с фото, категориями и стоп-листом по позициям
  2. 02Корзина и оплата прямо в боте, без переходов на сайт
  3. 03Трекинг курьера на карте со статусом «в пути»
  4. 04Повторный заказ в один тап из истории
  5. 05Заказы должны мгновенно падать на кухню без оператора
03 / SOLUTIONРешение

Решение

/ step 01

Меню и корзина

Карточки блюд с фото, ценой и весом, категории каруселью. Сборка корзины — инлайн-кнопками «+/−», итог и доставка пересчитываются на лету и видны до оплаты.

/ step 02

Оплата в два тапа

Telegram Payments поверх YooKassa: подтянутый адрес, инвойс прямо в чате, оплата картой или сохранённым способом. От «оформить» до «оплачено» — два касания, без ввода данных заново.

/ step 03

Курьер на карте

После сборки заказа бот шлёт живой статус: «принят → готовится → курьер в пути» с мини-картой и честным ETA. Точку курьера обновляем по live-локации, без звонков «вы где».

/ step 04

Повтор в один тап

История заказов с кнопкой «повторить»: бот собирает ту же корзину, проверяет стоп-лист и сразу ведёт к оплате. Любимый заказ можно закрепить избранным.

/ step 05

Webhook на кухню

Оплаченный заказ уходит вебхуком на кухонный экран и в учётную систему. Повар видит состав, время и адрес; стоп-лист с кухни мгновенно скрывает позицию в меню бота.

04 / STACKАрхитектура

Архитектура

PythonaiogramTelegram PaymentsYooKassaYandex MapsPostgreSQLRedis

Бот написан на aiogram с FSM-сценарием заказа: состояние корзины и шага оплаты живёт в Redis, заказы и история — в PostgreSQL. Оплата идёт через Telegram Payments с провайдером YooKassa, а подтверждение платежа ловится отдельным вебхуком, чтобы кухня видела только реально оплаченные заказы.

Кухня и бот связаны двусторонним вебхуком: оплаченный заказ улетает на кухонный экран, а смена статуса и стоп-лист возвращаются обратно и обновляют сообщение в чате. Трекинг курьера — отдельный воркер, который пишет live-локацию и пересчитывает ETA по трафику Яндекс.Карт.

05 / RESULTSРезультаты

Результаты

+0%
повторных заказов
0тапа
до оплаты
−40%
нагрузки на колл-центр
0/7
приём заказов без оператора
06 / HONESTЧто не получилось с первого раза

Что не получилось с первого раза

  • Сначала статус заказа гнали отдельными сообщениями: «готовится», потом «в пути», потом «у двери» — и чат превращался в простыню из десяти уведомлений на один заказ, люди жаловались на спам. Переписали на одно сообщение, которое редактируется по месту: меняется текст, мини-карта и кнопка, а пуш приходит только на смену этапа.
  • Стоп-лист поначалу синхронизировали с кухней раз в пять минут по таймеру — в обеденный пик гость успевал оплатить блюдо, которое только что закончилось, и заказ приходилось отменять с возвратом. Перевели стоп-лист на мгновенный вебхук с кухни плюс финальную проверку наличия прямо перед выставлением счёта.
07 / VOICEСлово клиента
Колл-центр перестал быть узким горлышком: больше трети заказов теперь повторные и приходят сами, без единого звонка. Гости пишут, что заказывать «стало как переписываться с другом».
МС
Марина Северцева
Директор по доставке · сеть ресторанов (NDA)
08 / TEAMКоманда

Команда

DK
Product lead
AL
Bot-разработчик
SY
Backend
AS
Дизайнер
09 / ROADMAPЧто дальше

Что дальше

  • Программа лояльности с бонусами за повторы
  • Предзаказ ко времени и расписание доставки
  • Подписка на бизнес-ланч с автосписанием
10 / RELATEDСвязанные кейсы