- 18
- 3
FunPay Bot
Магазин на автопилоте — управление из Telegram
Выдаёт товар сразу после оплаты · поднимает лоты · держит цену по рынку · отвечает покупателям.
Работает 24/7 на ПК, сервере и прямо на телефоне. Переживает сбои FunPay.
Выдаёт товар сразу после оплаты · поднимает лоты · держит цену по рынку · отвечает покупателям.
Работает 24/7 на ПК, сервере и прямо на телефоне. Переживает сбои FunPay.
Python 3.12 aiogram 3 async SQLAlchemy Docker
Что умеет
- Автовыдача — ключи/аккаунты/текст уходят покупателю в чат сразу после оплаты. Несколько позиций в заказе, склад с проверкой наличия, безлимитные товары.
- Каталог 1₽ — массовое выставление дешёвых лотов одной кнопкой и снятие их обратно.
- Автоподнятие лотов по интервалам с рандомом, отдельно на каждый лот. Корректно работает с мультикатегориями.
- Автоцена — сам сканирует конкурентов и держит цену по рынку. Среднее / медиана / дешевле всех, границы мин-макс, отсев мусорных лотов.
- Автоответчик с шаблонами и переменными, приветствие, режим «не в сети», чёрный список.
- Чаты и CRM в Telegram — вся переписка с покупателями в панели, на каждого клиента карточка: заметки, теги, история заказов и сколько всего он принёс. Быстрые шаблоны ответов в один тап и очередь проблемных заказов (оплачено, но не выдано). Всё без захода на FunPay.
- Переезд с FunPayCardinal — импорт настроек прямо из файлов Cardinal (автоответы, шаблоны выдачи, флаги, golden_key): просто пришлите
.cfgботу в чат. - Подпись сообщений — своя вотермарка в конце каждого сообщения покупателю, как в Cardinal.
- Автосинхронизация лотов — свои лоты сами подтягиваются с FunPay в базу, без ручной кнопки.
- Автоответ на отзыв — благодарность покупателю сразу после оставленного отзыва.
- Автовосстановление и автодеактивация лота по остатку склада.
- Отчёты с графиками прямо в Telegram: продажи по дням, топ товаров, остатки, профиль покупателя. Экспорт в CSV/Excel, ежедневная сводка, монитор баланса, вотчер склада, цели по продажам.
- Прогноз склада — считает скорость продаж и подсказывает, когда закончится каждый товар (и шлёт алерт заранее, пока ещё есть запас). Не тупой порог «осталось N», а реальный ETA по спросу.
- Часы продаж — аналитика, в какие часы и дни недели реально покупают, чтобы ловить пик поднятиями.
- Роли доступа (owner / admin / moderator / viewer), мультиаккаунт, плагины, автобэкапы, авто-рестарт сервисов.
Чем отличается от обычных ботов
| Возможность | Этот бот | Типичный бот |
|---|---|---|
| Импорт настроек прямо из FunPayCardinal | | |
| Прогноз склада по реальному спросу (ETA до нуля) | | |
| Аналитика часов и дней продаж | | |
| Графики прямо в Telegram (без внешних сервисов) | | редко |
| Автоцена: среднее / медиана / демпинг + отсев мусора | | частично |
| Роли доступа owner / admin / moderator / viewer | | |
| Запуск на Android без ПК (Termux) | | |
| Мастер настройки при первом запуске (по шагам) | | |
| Интерфейс на 3 языках (ru/en/uk) | | |
| Плагины с включением без перезапуска | | частично |
| Чаты покупателей + CRM (заметки/теги/история) в Telegram | | |
| Авто-рестарт сервисов + watchdog «упал/поднялся» | | |
| Авто-торг: бот сам делает встречную скидку в чате | | |
| Страж выдачи: проверка товара перед отправкой (не отдаёт брак) | | |
| Промокоды: покупатель гасит код прямо в чате | | |
| Учёт расходов и чистой прибыли (P&L) по периодам | | |
| Личные задачи с напоминаниями в Telegram | | |
| Рассылка одним сообщением по недавним покупателям | | частично |
| Себестоимость и маржа по каждому товару | | |
| Сегменты покупателей (VIP / постоянный / новичок / уснувший) | | |
| Отложенные действия по расписанию (цена/лот/рассылка) | | |
И честно — сравнение с FunPayCardinal
Cardinal — хороший бесплатный бот, на нём выросло полсообщества. Не хейт, просто по фактам, чем отличается мой. Если сидите на Cardinal — настройки переносятся в пару кликов (см. апдейт v4.2).| Возможность | Этот бот | FunPayCardinal |
|---|---|---|
| Бесплатный и открытый код | | |
| Автовыдача / автоответы / автоподнятие | | |
| Мультиаккаунт, прокси, вечный online | | |
| Плагины | | |
| Подпись сообщений (вотермарка) | | |
| Управление полностью из Telegram (не консоль) | панель с кнопками | частично |
| Автоцена по рынку (среднее/медиана/демпинг) | | |
| Прогноз склада (ETA до нуля) + часы продаж | | |
| Графики продаж прямо в Telegram | | |
| Каталог лотов по 1₽ (массовое выставление) | | |
| Роли доступа owner / admin / moderator / viewer | | |
| Запуск на Android без ПК (Termux, 1 скрипт) | | частично |
| Импорт настроек из Cardinal | | — |
| Чаты покупателей + CRM (заметки, теги, LTV) в Telegram | | |
| Быстрые шаблоны ответов в один тап | | частично |
| Очередь проблемных заказов + умная цена по лоту | | |
| Возраст проекта / размер сообщества | младше | большое |
Установка
Работает на Windows, Linux, на сервере (VPS) и прямо на телефоне (Android/Termux) — без ПК. Заполняете
.env один раз (BOT_TOKEN, ADMIN_IDS, FUNPAY_GOLDEN_KEY) и запускаете.
Код:
cd funpay_bot
cp .env.example .env # заполнить BOT_TOKEN, ADMIN_IDS, FUNPAY_GOLDEN_KEY
docker compose up -d --build
docker compose logs -f. Обновление: git pull && docker compose up -d --build.Поставьте Python 3.12 с python.org (галочка Add Python to PATH), затем в папке бота:
Код:
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
copy .env.example .env
notepad .env
python main.py
Код:
chmod +x scripts/run.sh
./scripts/run.sh # создаст venv, поставит зависимости, попросит заполнить .env
Код:
sudo cp scripts/funpay-bot.service /etc/systemd/system/
sudo nano /etc/systemd/system/funpay-bot.service # поправить User и пути
sudo systemctl daemon-reload
sudo systemctl enable --now funpay-bot
journalctl -u funpay-bot -f # живые логи
1) Установите Termux с F-Droid (версия из Play Market устарела и не работает).
2) В Termux выполните:
Скрипт сам поставит Python и системные библиотеки, возьмёт wake-lock (бот не уснёт с выключенным экраном) и запустит бота. После первого запуска откройте
Совет: поставьте ещё приложение Termux:API и в настройках Android отключите оптимизацию батареи для Termux — тогда бот живёт сутками.
2) В Termux выполните:
Код:
pkg install -y git
git clone <ссылка-на-репозиторий> funpay_bot
cd funpay_bot
bash scripts/install_termux.sh
nano .env, впишите ключи и снова bash scripts/run.sh.Совет: поставьте ещё приложение Termux:API и в настройках Android отключите оптимизацию батареи для Termux — тогда бот живёт сутками.
После запуска —
/start в Telegram, дальше всё через меню: товары, лоты, автофункции.funpay.com → F12 → Application/Storage → Cookies → скопировать значение
golden_key в FUNPAY_GOLDEN_KEY. Это полный доступ к аккаунту — никому не давайте.
FAQ
Да, перечислите ключи через запятую в
FUNPAY_GOLDEN_KEY — на каждый поднимется свой runner.Бот ходит на FunPay как обычный браузер с вашим cookie, поднятия рандомизированы. Но автоматизация — на ваш риск, держите разумные интервалы.
По умолчанию SQLite, ничего менять не надо. Под нагрузку — PostgreSQL через
DATABASE_URL.
Плагины «из коробки»
- smart_autoresponder — мгновенные ответы покупателю на типовые вопросы по ключевым словам. Команда
/faq_reload. - sales_dashboard — карточка продаж в реальном времени, средний чек, milestone'ы и рекорды.
/sales,/sales_reset. - anti_fraud_guard — сигнализация о попытках увести сделку с FunPay и развести.
/fraud_reload. - post_delivery_thanks — благодарность и просьба об отзыве после выдачи.
/thanks_reload. - loyalty_rewards — промокоды постоянным покупателям по порогам покупок (2/5/10…).
/loyalty_reload. - vip_order_alert — громкий алерт о крупных заказах и заказах от постоянников.
/vip_reload. - promo_broadcast — рассылка акций в чаты недавних покупателей.
/promo,/promo_count. - competitor_watch — фоновый радар цен конкурентов, алерт о демпинге.
/market. - delivery_speed_monitor — тревога, если заказ висит невыданным дольше порога.
/pending_orders. - rating_monitor — слежение за рейтингом и новыми отзывами.
/rating.
plugins/installed/ с plugin.json и __init__.py: хуки on_new_order, on_delivery, on_new_message, on_order_paid, on_refund и свои Telegram-команды. Можно запускать фоновые задачи.
История версий
Три вещи, которые превращают бота из «автопродавца» в инструмент, который реально помогает зарабатывать больше, а не просто отгружать заказы.
Себестоимость и маржа — у каждого товара теперь можно указать закупочную цену за единицу, и бот сразу показывает прибыль с продажи и маржу в процентах прямо в карточке товара, с цветным индикатором (
хорошо /
тонко /
в минусе). Раньше «финансы» знали только общие расходы — теперь видно рентабельность по каждой позиции. Продаёшь ниже закупки и не замечал? Теперь заметишь.
Сегменты покупателей — бот сам раскладывает всю твою базу по полкам:
VIP (много заказов или большая сумма),
постоянные,
новички и
уснувшие (кто покупал, но пропал на пару месяцев). Видно сразу, где костяк, который тебя кормит, и кого стоит вернуть промокодом, пока не ушёл к конкуренту. Пороги настраиваются под твой чек.
Отложенные действия — планируешь действие на будущее, и бот выполнит его сам, когда придёт время: включить/выключить лот, сменить цену, разослать анонс. Пишешь одной строкой — цена 12345 990 | 6h(через 6 часов поставить лоту цену 990) иливыкл 12345 | 1d(завтра снять лот). Удобно под ночные акции, распродажи по расписанию и «подниму цену после ажиотажа». Одноразовые, с историей выполнения.
Дорос до полноценного «рабочего стола» продавца. Четыре новых раздела в меню — то, ради чего раньше приходилось держать блокнот и калькулятор рядом.
- 🎟 Промокоды — создаёшь код (например
SALE10на 10% или на 150 ₽), задаёшь лимит использований и срок. Покупатель пишет код прямо в чат — бот сам его узнаёт, проверяет (не истёк ли, остались ли применения, не гасил ли этот покупатель раньше) и отвечает подтверждением скидки. Одноразовые на человека, бессрочные, лимитированные — как захочешь. Всё считается автоматически.
Финансы и прибыль — выручку бот и так знает из заказов, но прибыль — это выручка минус расходы. Теперь можно вносить траты (закупка товара, реклама, комиссии) одной строкой, а бот сводит P&L за день/неделю/месяц: сколько пришло, сколько потратил, сколько осталось чистыми, и по каким категориям ушли деньги. Наконец видно реальную маржу, а не оборот.
Задачи и напоминания — свой чек-лист прямо в боте: «докинуть ключи», «ответить на спор». Можно прицепить срок — пишешь докинуть ключи | 2h, и через 2 часа бот сам пингнёт в Telegram. Важные помечаются, выполненные убираются в историю. Больше ничего не забывается.
Рассылка покупателям — одно сообщение всем недавним клиентам (акция, новый товар, «вернулся в онлайн»). Пишешь текст, бот показывает скольким уйдёт, подтверждаешь — и он рассылает с паузами, чтобы FunPay не ругался на флуд. Чёрный список не трогает. Есть переменные {username} {date}.
Две вещи, которых я не видел ни в Cardinal, ни в платных ботах. Обе выросли из моих же граблей.
Умный авто-торг — половина покупателей пишет «а скинуть можешь?», и раньше, пока я спал, они просто уходили к другому. Теперь бот сам ловит торг («скинь», «дешевле», «дорого», «уступи»…) и делает встречное предложение по твоим правилам: задаёшь потолок скидки (скажем, 10%), а первый ответ бот даёт вполовину меньше — чтобы было куда двигаться, если напишут второй раз. Второй раз — даёт потолок. Свой кулдаун, чтобы не спамить, и работает даже в режиме «не в сети»: ночью сделка не срывается. Оффер ни к чему не обязывает — это просто «готов уступить N%», а решаешь всё равно ты.- 🛡 Страж выдачи — та самая защита от позора, когда автовыдача отправляет покупателю пустое сообщение или битый ключ, а следом прилетает возврат и минус в рейтинг. Перед каждой выдачей бот проверяет товар: пустая строка, подозрительно короткий обрывок или несоответствие твоему формату (можно задать шаблон, например
логин:пароль). Если хоть одна единица похожа на брак — бот не отдаёт её покупателю, возвращает весь товар на склад (ничего не теряется) и шлёт тебе тревогу: проверь и выдай вручную. Из коробки ловит самое страшное — пустую выдачу; проверку длины и формата включаешь сам, если нужно.
Взялся за то, обо что все спотыкаются в первый день — настройку. Раньше надо было руками лезть в
.env, знать свой числовой Telegram ID и не ошибиться ни в одной строчке. Теперь бот сам всё спросит.
Мастер настройки при первом запуске — запускаешь бота, а он по шагам: язык, токен бота, твой ID, golden_key, пароль, прокси. Каждое поле проверяет на месте, подсказывает где что взять. В конце сам пишет правильный .envи стартует. Не знаешь свой ID — можно пропустить, потом войдёшь по паролю. Пустой конфиг больше не роняет бота с непонятной ошибкой.- 🗣 Три языка интерфейса — русский, английский, украинский. Выбираешь в мастере на первом шаге или потом в «Настройки → Язык», переключается на лету. Меню, настройки, экран входа — всё переводится.
Вход по паролю — как в Cardinal. Даже если не знаешь свой Telegram ID, просто отправь боту пароль и он откроет доступ. Первый вошедший становится владельцем, остальные — админами, тебе прилетает уведомление о каждом новом входе. От перебора защита: пять попыток и хватит, а сам пароль хранится хешем, не открытым текстом.
Блокировка входа — владелец может вообще запретить вход по паролю, чтобы пускало только по списку ID. Тумблер в настройках.
Приветствие только новым — здороваться можно только с теми, кто пишет впервые, а не с каждым, кто просто открыл старый диалог.
Вид уведомлений — можно не слать себе уведомления о своих же сообщениях, а картинки в чате теперь приходят с именем файла, а не пустым сообщением.
Запуск в один клик на Windows — Start.batсам поднимет окружение, поставит зависимости и запустит. Двойной клик — и поехали.- Обновил вид главного экрана и настроек: живая сводка, прогресс-бар к дневной цели, аккуратные бейджи статуса.
Большой апдейт. Раньше, чтобы посмотреть переписку или что-то узнать про клиента, приходилось лезть на FunPay в браузер. Теперь всё живёт в панели.
Чаты — все входящие от покупателей одним списком: кто написал, когда, превью последнего сообщения, непрочитанные помечены точкой. Открываешь диалог — подтягивается история переписки, отвечаешь в один тап, не заходя на FunPay. Открыл чат — он сам пометился прочитанным, чтобы не путаться.
Карточка покупателя (CRM) — на каждого клиента своя карточка: заметки (например «оптовик, платит вовремя»), теги (vip, опт…), вся история заказов и сколько всего человек заказал и на какую сумму принёс. Оттуда же — в чёрный/белый список в один тап и написать напрямую. Открывается из заказа, из чата или просто поиском по нику.
Быстрые шаблоны — заготовки ответов на частые вопросы. В отличие от автоответов они не срабатывают сами — ты выбираешь нужный и он вставляется в чат. Поддерживают переменные {username} {date} {time}, бот ещё и считает, каким шаблоном ты пользуешься чаще.
Проблемные заказы — отдельная очередь: заказы, которые оплачены, но не выданы, и те, где выдача сорвалась. Счётчик висит прямо в шапке раздела «Заказы», чтобы косяк не потерялся среди остальных.
Умная цена по лоту — жмёшь кнопку на лоте, бот смотрит конкурентов и предлагает цену на 1 ₽ ниже самого дешёвого, с учётом твоих границ мин-макс. Согласен — применяешь в один тап, не считая руками.
- Импорт из FunPayCardinal — в «Настройки → Импорт из Cardinal» пришлите файлы из папки
configs/прямо в чат. Переносятся автоответы, шаблоны выдачи, флаги автофункций, приветствие и его кулдаун.golden_keyи токен бот сначала показывает и просит подтверждение, молча в.envне пишет. - Подпись сообщений (вотермарка) — свой текст добавляется в конец каждого исходящего сообщения покупателю. Пусто — выключено, повторно не дублируется.
- Кулдаун приветствия — приветствие можно слать повторно спустя N часов, а не «один раз навсегда».
- Авто-разбивка длинных сообщений — большие тексты выдачи режутся на части, чтобы FunPay их не обрезал.
- Больше переменных в выдаче — к
{username} {order_id} {product_name}добавились{order_title} {amount} {price} {chat_id}. - Команда
!команды— покупатель пишет!командыи бот сам отдаёт список доступных команд-автоответов.
- Весь интерфейс к единому виду: заголовки, разделители, строки и значки статуса
/
️ одинаковые на всех экранах. - Главный экран, статистика и статус системы читаются ровно, без «слипшихся» строк.
- Убрал лишние дублирующие команды-панели — статистика и отчёты теперь в одном меню, без зоопарка отдельных команд.
Добавлено:
- Запуск на Android (Termux) прямо с телефона без ПК — скрипт-установщик
scripts/install_termux.sh(ставит зависимости, берёт wake-lock). - Запуск на Linux/VPS одним скриптом
scripts/run.sh+ готовый сервис systemd для работы 24/7 с авто-рестартом. - Прогноз склада — оценка скорости продаж и ETA до нуля по каждому товару, заблаговременный алерт «скоро закончится» (умнее статичного порога).
- Часы продаж — отчёт по часам и дням недели: когда покупают чаще всего.
- Обновлённый дизайн панели — единый стиль кнопок (сетка 2-в-ряд, тумблеры со статус-индикатором), читаемый дашборд.
- Редактирование цены/остатка лота больше не воскрешает выключенный лот: форма правки перестала тащить снятые галочки (active и пр.).
- Ручная повторная выдача заказа больше не списывает товар повторно — переотправляет уже выданное.
- Заказ с пустым/нулевым количеством больше не уходит как пустая выдача и не роняет доставку.
- Просмотр счётчика непрочитанных больше не «съедает» сообщения покупателей (был побочный эффект, из-за которого ответ мог не уйти).
- Кулдаун автоответчика и режим «не в сети» разведены — приветствие «оффлайн» больше не блокирует обычные автоответы; кулдаун ставится только после успешной отправки.
- Низкий баланс теперь шлёт один алерт на просадку, а не спам каждые 10 минут.
- Рандомизация автоподнятия стала настоящей (раньше джиттер у всех лотов почти совпадал).
- Шаблоны выдачи: значение с фигурными скобками внутри больше не ломает подстановку.
- Бэкапы: защита от затирания всех архивов при
BACKUP_KEEP=0и от Zip-Slip при восстановлении.
Добавлено:
- Автосинхронизация лотов — свои лоты подтягиваются с FunPay в базу по интервалу, без ручной кнопки. Пропавшие (проданные/снятые) лоты убираются автоматически, с защитой от стирания при сбое загрузки.
- Автоответ на отзыв — бот сам отвечает благодарностью на оставленный покупателем отзыв.
- Графики в Telegram — спарклайны, бар-чарты и гистограммы в дашборде и ежедневной сводке (без внешних сервисов).
- Роли доступа — owner / admin / moderator / viewer вместо плоского списка админов; токен-бакет и sliding-window rate-limit, скрытие секретов в логах.
- Анти-спам автоответчика — кулдаун на ответ одному покупателю и авто-пометка чата прочитанным (стоп повторному поллингу).
- Вотчер склада — мгновенное уведомление, как только товар заканчивается или на исходе, без спама по одному и тому же лоту.
- Цель дня — задайте план по выручке/заказам и получайте пуш «цель достигнута», счётчик сбрасывается в полночь.
- Heartbeat и watchdog — бот сам сообщает, если какой-то сервис упал (и когда восстановился); опционально шлёт периодический пульс «я в строю» с аптаймом и сводкой.
- Плюс 6 готовых плагинов: программа лояльности (промокоды постоянным), VIP-радар крупных заказов, рассылка акций покупателям, радар цен конкурентов с алертом о демпинге, контроль скорости выдачи и монитор рейтинга/отзывов.
- Автоцена: режимы среднее / медиана / дешевле всех, отсев выбросов и мусорных лотов, анти-джиттер цены.
- Устойчивость сервисов — один сбойный лот больше не роняет цикл, авто-рестарт фоновых задач.
v2.0 — автовыдача реально доходит до покупателя, полный текст сообщений, починка утечек памяти и разбора цены. Каталог 1₽, управление заказами из Telegram, статус системы, regex-автоответы с приоритетом, привязка заказа к лоту, прокси на аккаунт, плагин-хуки on_order_paid/on_refund.
v1.2 — автоцена по рынку, отчёты, ежедневная сводка, монитор баланса, режим «не в сети», чёрный список.
v1.1 — плагины, мультиаккаунт, автобэкапы.
v1.0 — первый релиз: автовыдача, автоподнятие, автоответчик, панель в Telegram.
v1.2 — автоцена по рынку, отчёты, ежедневная сводка, монитор баланса, режим «не в сети», чёрный список.
v1.1 — плагины, мультиаккаунт, автобэкапы.
v1.0 — первый релиз: автовыдача, автоподнятие, автоответчик, панель в Telegram.
Последнее редактирование:

АВТОПОДНЯТИЕ
ОТЧЁТЫ
О ПРОЕКТЕ ━━━
Продажи и выдача
Общение с покупателями
Аналитика и контроль
ПОЧЕМУ ЭТОТ БОТ ━━━
Вручную
ТЕХНОЛОГИИ ━━━
Способ 1 — Docker (рекомендуется)
Способ 2 — напрямую через Python
КОНФИГУРАЦИЯ ━━━
golden_key = полный доступ к аккаунту. Никому не передавайте и не публикуйте.
ПЕРВЫЙ ЗАПУСК ━━━
Авто-ответ на отзывы, статистика по конкурентам
Ваши предложения — пишите в комментарии
CHANGELOG ━━━
Автоцена по рынку (среднее / медиана / дешевле всех)
Исправлен спам одинаковыми уведомлениями (дедуп + авто-прочтение чатов)
и оставьте отзыв