Новые маршруты цифровой эволюции
Заказать проект✦
Ретейл

Ягодка — магазин в Telegram

Каталог, корзина и передача заказа менеджеру — в боте; ассортимент и цены — в Google Таблицах.

3Уровня каталога из таблицы: категории, подкатегории, товары
2Формата продажи: весовые и штучные товары в одной корзине
3Места фиксации заявки: база бота, Google Таблица, канал менеджеров
1Таблица для ассортимента, цен, наличия, фото и шага выбора количества

Контекст и задача

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

Задача проекта — дать покупателю возможность самостоятельно собрать заказ в Telegram и передать магазину все данные для дальнейшей обработки. Управление ассортиментом должно оставаться простым: сотрудники магазина меняют цены и наличие без участия разработчика.

Исследование

Сценарий построили с учётом особенностей продуктового магазина. Для каждого товара нужны своя единица измерения, цена и шаг добавления в корзину. Покупателю важно видеть доступный ассортимент и итоговую сумму до отправки заявки.

Отдельно учли минимальную сумму доставки и передачу заказа команде. Эти правила встроили в оформление: бот проверяет порог, собирает контактные данные и сохраняет заявку в системе учёта.

Решение

Каталог с актуальным наличием. Бот формирует витрину из Google Таблицы и показывает доступные товары. Покупатель проходит от категории к подкатегории и карточке с фотографией, ценой и единицей измерения.

Корзина для весовых и штучных товаров. Количество меняется кнопками «плюс» и «минус» с шагом, заданным для конкретного продукта. Позиции можно добавлять, редактировать и удалять. Бот рассчитывает стоимость каждой позиции и общую сумму.

Проверка условий доставки. Если корзина не достигает минимальной суммы, бот сообщает о пороге и предлагает дополнить покупку перед оформлением.

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

Самостоятельное управление магазином. Сотрудники редактируют категории, товары, цены, наличие, фотографии и шаг количества в Google Таблице. Изменения отображаются при следующем открытии каталога.

Связь с покупателем. Из главного меню доступны контакты магазина и его канал. После оформления команда связывается с покупателем для дальнейшей обработки заявки.

Технологии

  • Python и aiogram 3 — логика Telegram-бота и пользовательские сценарии.
  • Google Sheets API — управление каталогом и запись заказов.
  • SQLite, SQLAlchemy и Alembic — хранение корзин и заявок, работа с базой данных.
  • Docker и GitLab CI — развёртывание и доставка обновлений.
Pythonaiogram 3Google Sheets APISQLiteSQLAlchemyAlembicDockerGitLab CI

Результат

Магазин получил готовый инструмент приёма заказов в Telegram. Покупатель самостоятельно выбирает продукты и количество, проверяет сумму и передаёт адрес доставки. Менеджер получает составленный заказ, с которым можно сразу работать.

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

«Ягодка» автоматизирует повторяющуюся часть оформления — выбор, расчёт и сбор данных — и передаёт команде готовую заявку для обработки, сборки и доставки.