From af1cef3d11739ba940e5b46740fee4d1f6587f45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=B8=D0=BA=D1=82=D0=BE=D1=80?= <78488229+viktor138irk@users.noreply.github.com> Date: Mon, 18 May 2026 09:33:59 +0900 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=BE=20=D0=BE=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=B8=D0=B5?= =?UTF-8?q?=20BotShop=20v0.2.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 83 +++++++++++++++++++++++++++---------------------------- 1 file changed, 41 insertions(+), 42 deletions(-) diff --git a/README.md b/README.md index 5ec425f..766a3d9 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,53 @@ -# BotShop +# BotShop v0.2.0 -BotShop — стартовый каркас мультибот-магазина для Telegram с веб-админкой. +BotShop — локальная платформа для запуска нескольких Telegram-магазинов из одной панели управления. + +Проект рассчитан на легальную продажу цифровых и физических товаров: файлы, доступы, инструкции, мерч, услуги, коды, подписки, инфопродукты. В проекте нет механики тайников, скрытых адресов, обхода платёжных правил или автоподтверждения платежей по словам пользователя. ## Что заложено - подключение нескольких Telegram-ботов через токен; - локальный режим без домена через Telegram polling; - webhook-режим для сервера с HTTPS-доменом; -- выбор города, района, товара и варианта в Telegram; -- создание заказа без отправки чека; -- выдача реквизитов и уникальной суммы `цена + случайная добавка`; -- ручное подтверждение/отклонение оплаты в админ-панели; -- управление городами, районами, товарами, вариантами и реквизитами; -- базовые логи входящих Telegram-событий и ошибок; +- главная бота: приветствие, выбор города, баланс, рефералка, последний заказ, поддержка; +- последовательность заказа: город → продукт → район/зона → тип/вариант → итог → оплата/отмена; +- оплата с баланса магазина; +- карта/СБП/банк с уникальной суммой для ручной идентификации; +- Bitcoin-реквизиты с подтверждением оператором; +- баланс пользователя через ledger: рефералы, пополнения, возвраты, списания; +- автовыдача товара после статуса `paid`; +- управление городами, районами, товарами, вариантами, остатками, заказами, платежами; +- базовые логи Telegram-событий и действий администратора; - автоустановщик `install.sh`. -## Важно +## Важная логика платежей -Проект предназначен только для легального магазина товаров и услуг. В коде нет механики тайников, скрытых адресов, автоматической выдачи запрещённых товаров или обхода платёжных правил. +Пользовательское нажатие `Я оплатил` не делает заказ оплаченным. Оно переводит платёж в проверку оператором. Автовыдача выполняется только после статуса `paid`. + +Для полностью автоматической оплаты нужен официальный платёжный API банка/эквайринга/крипто-провайдера. Уникальная сумма без API — это полуавтоматический режим с ручной проверкой. + +## Статусы заказа + +- `draft` — черновик; +- `waiting_payment` — ожидает оплату; +- `payment_review` — пользователь заявил оплату, оператор проверяет; +- `paid` — оплата подтверждена; +- `delivered` — товар выдан; +- `cancelled` — отменён; +- `refunded` — возвращён; +- `expired` — истёк срок оплаты; +- `rejected` — оплата отклонена. ## Требования - Ubuntu/Debian сервер или локальная VM; - PHP 8.1+; -- MySQL 5.7+/8+; +- MySQL 5.7+/8+ или MariaDB; - Nginx; - доступ в интернет для Telegram Bot API. ## Локальная установка без домена -Самый простой вариант: - ```bash sudo apt update sudo apt install -y git curl @@ -72,36 +89,10 @@ sudo bash install.sh --local \ 4. В панели откройте «Боты». 5. Добавьте токен. 6. Поставьте статус `active`. -7. В локальном режиме кнопку webhook нажимать не нужно. -8. Добавьте город, район, товар, вариант и реквизиты. +7. В локальном режиме webhook не нужен. +8. Добавьте город, район, товар, вариант, остатки и реквизиты. 9. Напишите `/start` своему Telegram-боту. -## Обслуживание - -Перезапуск polling: - -```bash -sudo systemctl restart botshop-polling -``` - -Логи polling: - -```bash -sudo journalctl -u botshop-polling -f -``` - -Логи Nginx: - -```bash -sudo tail -n 100 /var/log/nginx/botshop_error.log -``` - -Файл локальной конфигурации: - -```text -/var/www/botshop/storage/config.php -``` - ## Структура ```text @@ -113,6 +104,14 @@ storage/config.php # создаётся installer'ом, не хранитс storage/logs/ # логи ``` +## Ближайший roadmap + +- v0.2.1 — экран баланса, рефералки и последнего заказа в Telegram; +- v0.2.2 — админ-раздел остатков и автовыдачи; +- v0.2.3 — подтверждение платежа оператором с автоматической выдачей; +- v0.2.4 — поддержка в панели; +- v0.3.0 — аккуратный UI, роли операторов и журнал аудита. + ## Версия -`0.1.1` +`0.2.0`