Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
FunPay Бот v2.0 - Аналог Cardinal! Ваш личный ассистент, который ведёт магазин за вас 24/7
Выдаёт товар в чат сразу после оплаты, поднимает лоты, держит цену на уровне рынка и отвечает покупателям. Главная фишка: всё управление происходит прямо из Telegram! Никаких сложных веб-панелей и возни с конфигами. Бот работает круглосуточно и стойко переживает любые сбои FunPay.
Автовыдача: ключи/аккаунты/текст уходят покупателю в чат моментально после оплаты. Поддержка нескольких позиций в заказе, склад с проверкой наличия и безлимитные товары.
Каталог 1₽: массовое выставление дешёвых лотов одной кнопкой и быстрое снятие их обратно.
Умное автоподнятие: поднятие лотов по заданным интервалам с рандомизацией, настройка отдельно под каждый лот. Корректно работает с мультикатегориями.
Автоцена по рынку: бот сам сканирует конкурентов и удерживает цену. Алгоритмы: среднее / медиана / дешевле всех. Есть границы мин-макс цены и отсев мусорных лотов.
Продвинутый автоответчик: шаблоны, переменные, приветствия, режим «не в сети» и встроенный чёрный список.
Управление складом: автовосстановление и автодеактивация лота в зависимости от остатков на складе.
Детальные отчёты: статистика продаж по дням, топ товаров, остатки, профиль покупателя. Экспорт в CSV/Excel, ежедневная сводка и монитор баланса.
Прочее: мультиаккаунт, поддержка плагинов, автобэкапы и авто-рестарт сервисов.
🛠 Установка и запуск
Через Docker (Рекомендуется):
Bash:
cd funpay_bot
cp .env.example .env # заполнить BOT_TOKEN, ADMIN_IDS, FUNPAY_GOLDEN_KEY
docker compose up -d --build
После запуска просто отправьте /start в своего Telegram-бота, дальше всё настраивается через удобное меню: товары, лоты, автофункции.
Перейдите на сайт funpay.com ➜ нажмите F12 ➜ вкладка Application (или Storage) ➜ Cookies ➜ скопируйте значение параметра golden_key и вставьте его в FUNPAY_GOLDEN_KEY. Внимание: это полный доступ к вашему аккаунту — никому не передавайте этот ключ!
FAQ (Частые вопросы)
Да! Просто перечислите ключи через запятую в переменной FUNPAY_GOLDEN_KEY — на каждый аккаунт поднимется свой независимый процесс (runner).
Бот заходит на FunPay как обычный браузер с вашим cookie-файлом, а поднятия рандомизированы для имитации действий человека. Тем не менее, любая автоматизация — это всегда на ваш страх и риск. Устанавливайте разумные интервалы.
По умолчанию стоит SQLite, для большинства задач ничего менять не нужно. Если ожидается большая нагрузка — используйте PostgreSQL, указав данные в DATABASE_URL.
Что нового (Версия 2.0)
Исправлено:
Автовыдача теперь работает идеально — товар отправляется прямо в чат (ранее была проблема с фактической отправкой).
Сообщения считываются полностью, а не обрезанным превью — теперь корректно срабатывают все команды автоответчика.
Устранены утечки памяти при длительной непрерывной работе.
Исправлен баг с парсингом цен формата «1 250,00 ₽».
Добавлено:
Каталог 1₽ — массовое авто-выставление и снятие лотов в один клик.
Полное управление заказами из TG: повторная выдача, возврат средств, чат с покупателем и отправка сообщений.
Мониторинг статуса системы: аптайм, статус авторизации, баланс по всем аккаунтам, состояние сервисов.
Regex-автоответы с системой приоритетов.
Привязка заказа к товару по ID лота, возможность задать индивидуальный шаблон выдачи для конкретного товара.
Прокси на аккаунт, удаление из ЧС/БС и снятие прав администратора.
Хуки для разработчиков плагинов: on_order_paid, on_refund.
История прошлых версий: v1.2 — автоцена по рынку, отчёты, ежедневная сводка, монитор баланса, режим «не в сети», чёрный список. v1.1 — плагины, мультиаккаунт, автобэкапы. v1.0 — первый релиз: автовыдача, автоподнятие, автоответчик, панель в Telegram.
Остались вопросы, предложения или нашли баг? Пишите в комментарии к теме! Скачать
Это коммерческий бот для автоматизации продаж на FunPay в духе FunPay Cardinal, но с принципиальным отличием — управление построено вокруг удобной Telegram-панели с inline-кнопками и пошаговыми диалогами. Вам не нужно держать открытым браузер, настраивать сервер с веб-мордой или разбираться в конфигах руками: добавили товар, создали лот, привязали, включили нужные авто-функции — и магазин работает без вашего участия.
Под капотом — чистая асинхронная архитектура (services / handlers / repositories), супервизор сервисов с авто-рестартом, защита от спама и антифлуд. Каждый модуль изолирован: если FunPay вернул ошибку или сеть моргнула — бот не падает, а аккуратно логирует и продолжает работу.
━━━ ВОЗМОЖНОСТИ ━━━
Продажи и выдача
Автовыдача товара — ключи, аккаунты или текст уходят покупателю мгновенно после оплаты. Несколько позиций в одном заказе, проверка наличия, FIFO-склад, безлимитные товары.
Автовосстановление лота — после продажи бот пополняет количество и снова активирует лот.
Автодеактивация — лот выключается при нулевом остатке и включается обратно после пополнения склада.
Импорт товаров — массовая загрузка склада из файла/текста, по строке на единицу.
Продвижение лотов
Автоподнятие — подъём лотов по интервалам с рандомным джиттером (антиспам), отдельная настройка на каждый лот.
Корректная работа с FunPay — правильное определение game_id / node_id и поддержка мультикатегорий (то, на чём ломаются многие самоделки).
Поднять сейчас — ручной подъём в один тап из панели.
Автоцена по рынку (фишка)
Бот сам сканирует конкурентов в категории и держит вашу цену на уровне рынка.
Три стратегии: среднее, медиана, дешевле всех.
Усечение выбросов — мусорные лоты по 1 ₽ не сбивают расчёт.
Шаг скидки и границы мин/макс — вы всегда в безопасном коридоре цен.
Свои лоты исключаются из расчёта, изменение цены — только при реальном отклонении (антидёрганье).
Общение с покупателями
Умный автоответчик — команды и шаблоны с переменными {username} {order_id} {product_name} {date} {time}, точное/частичное совпадение, счётчик срабатываний.
Приветствие при первом контакте.
Режим «не в сети» — вне рабочих часов покупатель получает авто-сообщение.
Чёрный список — бот игнорирует забаненных покупателей.
Защита от спама — дедуп входящих, авто-прочтение чатов, кулдаун ответов.
Аналитика и контроль
Отчёты — продажи по дням с динамикой, топ товаров, заканчивающийся товар, профиль покупателя (LTV), сводный дашборд.
Экспорт заказов в CSV и статистики в Excel.
Ежедневная сводка — раз в день бот сам присылает отчёт в Telegram.
Монитор баланса — уведомление об изменении и алерт при падении ниже порога.
Плагины — загрузка / выгрузка / вкл-выкл без перезапуска, API для разработчиков.
Роли и права — owner / admin / moderator, rate-limit, антифлуд.
Автобэкапы базы по расписанию.
Мультиаккаунт — несколько golden_key, отдельный runner на каждый.
Авто-миграции — новые поля БД добавляются на старте, без ручных ALTER.
━━━ ПОЧЕМУ ЭТОТ БОТ ━━━
Критерий
Этот бот
Вручную
Типовые самоделки
Выдача после оплаты
Мгновенно, 24/7
Когда увидите
Часто без проверки наличия
Цена относительно рынка
Авто по конкурентам
Раз в неделю руками
Нет / процент от своей
Поднятие лотов
Авто + антиспам
Забудете
Ломается на мультикатегориях
Управление
Telegram с телефона
—
Конфиги / веб-панель
Устойчивость
Авто-рестарт сервисов
—
Падает на ошибке FunPay
Аналитика
Отчёты + сводка + CSV
В голове
Базовая статистика
━━━ ТЕХНОЛОГИИ ━━━
Слой
Стек
Язык
Python 3.12, полностью async / asyncio
Telegram
aiogram 3.x (FSM, inline-меню, middleware)
База данных
SQLAlchemy 2.0 async — SQLite или PostgreSQL
FunPay
Собственный async-клиент (auth, runner, raise, lots, chat)
Парсинг
BeautifulSoup4 + lxml
Логи
loguru (ротация, уровни, категории)
Деплой
Docker + docker-compose
━━━ УСТАНОВКА ━━━
Способ 1 — Docker (рекомендуется)
Форматирование (BB-код):
# 1. Распаковать архив и зайти в папку
cd funpay_bot
# 2. Создать конфиг из примера
cp .env.example .env
# 3. Заполнить .env (см. блок ниже)
# 4. Собрать и запустить в фоне
docker compose up -d --build
# 5. Смотреть логи
docker compose logs -f bot
Способ 2 — напрямую через Python
Форматирование (BB-код):
cd funpay_bot
# виртуальное окружение
python -m venv .venv
.venv\Scripts\activate # Windows
source .venv/bin/activate # Linux / macOS
# зависимости
pip install -r requirements.txt
# конфиг
copy .env.example .env # Windows
cp .env.example .env # Linux / macOS
# запуск
python main.py
━━━ КОНФИГУРАЦИЯ ━━━
Минимум для старта (.env):
Код:
# Telegram
BOT_TOKEN=123456:ABC-DEF... # от @BotFather
ADMIN_IDS=123456789 # ваш Telegram ID (через запятую — несколько)
# FunPay
FUNPAY_GOLDEN_KEY=ваш_golden_key # cookie аккаунта FunPay
# База (по умолчанию SQLite — менять не нужно)
DATABASE_URL=sqlite+aiosqlite:///data/funpay_bot.db
# PostgreSQL:
# DATABASE_URL=postgresql+asyncpg://funpay:funpay@db:5432/funpay
Залогиньтесь на funpay.com в браузере.
Нажмите F12 → вкладка Application (Chrome) или Storage (Firefox).
Слева: Cookies → https://funpay.com.
Найдите cookie golden_key и скопируйте значение в FUNPAY_GOLDEN_KEY.
golden_key = полный доступ к аккаунту. Никому не передавайте и не публикуйте.
Код:
# ── Автоцена по рынку ──
AUTOPRICE_ENABLED=true
AUTOPRICE_INTERVAL=3600 # пересчёт, сек
AUTOPRICE_TRIM=0.1 # отсечь 10% выбросов
# ── Автоподнятие ──
AUTORAISE_ENABLED=true
AUTORAISE_MIN_INTERVAL=14400 # 4 часа
AUTORAISE_JITTER=600 # рандом до 10 мин (антиспам)
# ── Автоответы / антиспам ──
AUTORESPONSE_COOLDOWN=20 # не чаще, сек на покупателя
AUTOREAD_ENABLED=true # авто-прочтение чатов
GREETING_ENABLED=false # приветствие при первом контакте
# ── Режим «не в сети» ──
AWAY_ENABLED=false
WORK_HOURS_START=9
WORK_HOURS_END=23
# ── Сводка и баланс ──
DAILY_DIGEST_HOUR=21 # ежедневный отчёт в 21:00 (-1 = выкл)
BALANCE_ALERT_THRESHOLD=0 # алерт при балансе ниже (0 = выкл)
# ── Уведомления ──
NOTIFY_MESSAGES=true
NOTIFY_ORDERS=true
BLACKLIST_ENABLED=true
Исправлено автоподнятие: корректные game_id/node_id и мультикатегории
v1.1
Плагины, мультиаккаунт, автобэкапы
v1.0
Первый релиз: автовыдача, автоподнятие, автоответчик, панель в Telegram
━━━ FAQ ━━━
golden_key истёк или скопирован не полностью. Возьмите заново (спойлер выше) и перезапустите бота.
Проверьте node_id лота (ID категории из ссылки). game_id бот определяет сам — в логе должно быть Raised game <id>.
Да. Перечислите ключи через запятую в FUNPAY_GOLDEN_KEY — поднимется отдельный runner на каждый.
Для старта — SQLite (по умолчанию). Под нагрузку и мультиаккаунт — PostgreSQL: поменяйте DATABASE_URL.
Бот ходит на FunPay как обычный браузер с вашим cookie, поднятия рандомизированы (антиспам). Но автоматизация — на ваш риск; используйте разумные интервалы.
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Вопросы, баги и идеи — в комментарии
Обновления выходят в этой же теме. Подпишитесь, чтобы не пропустить.
Если бот полезен — поставьте реакцию и оставьте отзыв
Совет мой тебе, пиши в теме меньше воды, выглядит вырвиглазно, к примеру: ━━━ 🗂 СТРУКТУРА ━━━
Зачем это вообще в теме написано? Захотят сами посмотрят, + не пиши тему нейронкой, я пока листал её ахуел от того какая она огромная, кстати как вырубить этот шрифт я не понял поэтому пишу так)
Это коммерческий бот для автоматизации продаж на FunPay в духе FunPay Cardinal, но с принципиальным отличием — управление построено вокруг удобной Telegram-панели с inline-кнопками и пошаговыми диалогами. Вам не нужно держать открытым браузер, настраивать сервер с веб-мордой или разбираться в конфигах руками: добавили товар, создали лот, привязали, включили нужные авто-функции — и магазин работает без вашего участия.
Под капотом — чистая асинхронная архитектура (services / handlers / repositories), супервизор сервисов с авто-рестартом, защита от спама и антифлуд. Каждый модуль изолирован: если FunPay вернул ошибку или сеть моргнула — бот не падает, а аккуратно логирует и продолжает работу.
━━━ ВОЗМОЖНОСТИ ━━━
Продажи и выдача
Автовыдача товара — ключи, аккаунты или текст уходят покупателю мгновенно после оплаты. Несколько позиций в одном заказе, проверка наличия, FIFO-склад, безлимитные товары.
Автовосстановление лота — после продажи бот пополняет количество и снова активирует лот.
Автодеактивация — лот выключается при нулевом остатке и включается обратно после пополнения склада.
Импорт товаров — массовая загрузка склада из файла/текста, по строке на единицу.
Продвижение лотов
Автоподнятие — подъём лотов по интервалам с рандомным джиттером (антиспам), отдельная настройка на каждый лот.
Корректная работа с FunPay — правильное определение game_id / node_id и поддержка мультикатегорий (то, на чём ломаются многие самоделки).
Поднять сейчас — ручной подъём в один тап из панели.
Автоцена по рынку (фишка)
Бот сам сканирует конкурентов в категории и держит вашу цену на уровне рынка.
Три стратегии: среднее, медиана, дешевле всех.
Усечение выбросов — мусорные лоты по 1 ₽ не сбивают расчёт.
Шаг скидки и границы мин/макс — вы всегда в безопасном коридоре цен.
Свои лоты исключаются из расчёта, изменение цены — только при реальном отклонении (антидёрганье).
Общение с покупателями
Умный автоответчик — команды и шаблоны с переменными {username} {order_id} {product_name} {date} {time}, точное/частичное совпадение, счётчик срабатываний.
Приветствие при первом контакте.
Режим «не в сети» — вне рабочих часов покупатель получает авто-сообщение.
Чёрный список — бот игнорирует забаненных покупателей.
Защита от спама — дедуп входящих, авто-прочтение чатов, кулдаун ответов.
Аналитика и контроль
Отчёты — продажи по дням с динамикой, топ товаров, заканчивающийся товар, профиль покупателя (LTV), сводный дашборд.
Экспорт заказов в CSV и статистики в Excel.
Ежедневная сводка — раз в день бот сам присылает отчёт в Telegram.
Монитор баланса — уведомление об изменении и алерт при падении ниже порога.
Плагины — загрузка / выгрузка / вкл-выкл без перезапуска, API для разработчиков.
Роли и права — owner / admin / moderator, rate-limit, антифлуд.
Автобэкапы базы по расписанию.
Мультиаккаунт — несколько golden_key, отдельный runner на каждый.
Авто-миграции — новые поля БД добавляются на старте, без ручных ALTER.
━━━ ПОЧЕМУ ЭТОТ БОТ ━━━
Критерий
Этот бот
Вручную
Типовые самоделки
Выдача после оплаты
Мгновенно, 24/7
Когда увидите
Часто без проверки наличия
Цена относительно рынка
Авто по конкурентам
Раз в неделю руками
Нет / процент от своей
Поднятие лотов
Авто + антиспам
Забудете
Ломается на мультикатегориях
Управление
Telegram с телефона
—
Конфиги / веб-панель
Устойчивость
Авто-рестарт сервисов
—
Падает на ошибке FunPay
Аналитика
Отчёты + сводка + CSV
В голове
Базовая статистика
━━━ ТЕХНОЛОГИИ ━━━
Слой
Стек
Язык
Python 3.12, полностью async / asyncio
Telegram
aiogram 3.x (FSM, inline-меню, middleware)
База данных
SQLAlchemy 2.0 async — SQLite или PostgreSQL
FunPay
Собственный async-клиент (auth, runner, raise, lots, chat)
Парсинг
BeautifulSoup4 + lxml
Логи
loguru (ротация, уровни, категории)
Деплой
Docker + docker-compose
━━━ УСТАНОВКА ━━━
Способ 1 — Docker (рекомендуется)
Форматирование (BB-код):
# 1. Распаковать архив и зайти в папку
cd funpay_bot
# 2. Создать конфиг из примера
cp .env.example .env
# 3. Заполнить .env (см. блок ниже)
# 4. Собрать и запустить в фоне
docker compose up -d --build
# 5. Смотреть логи
docker compose logs -f bot
Способ 2 — напрямую через Python
Форматирование (BB-код):
cd funpay_bot
# виртуальное окружение
python -m venv .venv
.venv\Scripts\activate # Windows
source .venv/bin/activate # Linux / macOS
# зависимости
pip install -r requirements.txt
# конфиг
copy .env.example .env # Windows
cp .env.example .env # Linux / macOS
# запуск
python main.py
━━━ КОНФИГУРАЦИЯ ━━━
Минимум для старта (.env):
Код:
# Telegram
BOT_TOKEN=123456:ABC-DEF... # от @BotFather
ADMIN_IDS=123456789 # ваш Telegram ID (через запятую — несколько)
# FunPay
FUNPAY_GOLDEN_KEY=ваш_golden_key # cookie аккаунта FunPay
# База (по умолчанию SQLite — менять не нужно)
DATABASE_URL=sqlite+aiosqlite:///data/funpay_bot.db
# PostgreSQL:
# DATABASE_URL=postgresql+asyncpg://funpay:funpay@db:5432/funpay
Залогиньтесь на funpay.com в браузере.
Нажмите F12 → вкладка Application (Chrome) или Storage (Firefox).
Слева: Cookies → https://funpay.com.
Найдите cookie golden_key и скопируйте значение в FUNPAY_GOLDEN_KEY.
golden_key = полный доступ к аккаунту. Никому не передавайте и не публикуйте.
Код:
# ── Автоцена по рынку ──
AUTOPRICE_ENABLED=true
AUTOPRICE_INTERVAL=3600 # пересчёт, сек
AUTOPRICE_TRIM=0.1 # отсечь 10% выбросов
# ── Автоподнятие ──
AUTORAISE_ENABLED=true
AUTORAISE_MIN_INTERVAL=14400 # 4 часа
AUTORAISE_JITTER=600 # рандом до 10 мин (антиспам)
# ── Автоответы / антиспам ──
AUTORESPONSE_COOLDOWN=20 # не чаще, сек на покупателя
AUTOREAD_ENABLED=true # авто-прочтение чатов
GREETING_ENABLED=false # приветствие при первом контакте
# ── Режим «не в сети» ──
AWAY_ENABLED=false
WORK_HOURS_START=9
WORK_HOURS_END=23
# ── Сводка и баланс ──
DAILY_DIGEST_HOUR=21 # ежедневный отчёт в 21:00 (-1 = выкл)
BALANCE_ALERT_THRESHOLD=0 # алерт при балансе ниже (0 = выкл)
# ── Уведомления ──
NOTIFY_MESSAGES=true
NOTIFY_ORDERS=true
BLACKLIST_ENABLED=true
Исправлено автоподнятие: корректные game_id/node_id и мультикатегории
v1.1
Плагины, мультиаккаунт, автобэкапы
v1.0
Первый релиз: автовыдача, автоподнятие, автоответчик, панель в Telegram
━━━ FAQ ━━━
golden_key истёк или скопирован не полностью. Возьмите заново (спойлер выше) и перезапустите бота.
Проверьте node_id лота (ID категории из ссылки). game_id бот определяет сам — в логе должно быть Raised game <id>.
Да. Перечислите ключи через запятую в FUNPAY_GOLDEN_KEY — поднимется отдельный runner на каждый.
Для старта — SQLite (по умолчанию). Под нагрузку и мультиаккаунт — PostgreSQL: поменяйте DATABASE_URL.
Бот ходит на FunPay как обычный браузер с вашим cookie, поднятия рандомизированы (антиспам). Но автоматизация — на ваш риск; используйте разумные интервалы.
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Вопросы, баги и идеи — в комментарии
Обновления выходят в этой же теме. Подпишитесь, чтобы не пропустить.
Если бот полезен — поставьте реакцию и оставьте отзыв
Совет мой тебе, пиши в теме меньше воды, выглядит вырвиглазно, к примеру: ━━━ 🗂 СТРУКТУРА ━━━
Зачем это вообще в теме написано? Захотят сами посмотрят, + не пиши тему нейронкой, я пока листал её ахуел от того какая она огромная, кстати как вырубить этот шрифт я не понял поэтому пишу так)
Сейчас такой функции нет. Бот умеет управлять уже существующими лотами (цена, вкл/выкл, поднятие, авто-пополнение,
авто-цена) и выдавать товар, но сам новые лоты на FunPay не создаёт и «базы товаров по 1₽» с авто-выставлением — нет. Я это добавлю в следущем апдейте
Сейчас такой функции нет. Бот умеет управлять уже существующими лотами (цена, вкл/выкл, поднятие, авто-пополнение,
авто-цена) и выдавать товар, но сам новые лоты на FunPay не создаёт и «базы товаров по 1₽» с авто-выставлением — нет. Я это добавлю в следущем апдейте
та мне хватило шоб хоть ктото дал эту сраную базу лотов по рублю , я возможно и сам бы повыставлял их, катку в доте сыграл , выдохся - пару десятков разделов закрыл лотами - еще катка и так далее