Обновлено описание BotShop v0.2.0

Этот коммит содержится в:
Виктор
2026-05-18 09:33:59 +09:00
родитель fb05092183
Коммит af1cef3d11
+41 -42
Просмотреть файл
@@ -1,36 +1,53 @@
# BotShop # BotShop v0.2.0
BotShop — стартовый каркас мультибот-магазина для Telegram с веб-админкой. BotShop — локальная платформа для запуска нескольких Telegram-магазинов из одной панели управления.
Проект рассчитан на легальную продажу цифровых и физических товаров: файлы, доступы, инструкции, мерч, услуги, коды, подписки, инфопродукты. В проекте нет механики тайников, скрытых адресов, обхода платёжных правил или автоподтверждения платежей по словам пользователя.
## Что заложено ## Что заложено
- подключение нескольких Telegram-ботов через токен; - подключение нескольких Telegram-ботов через токен;
- локальный режим без домена через Telegram polling; - локальный режим без домена через Telegram polling;
- webhook-режим для сервера с HTTPS-доменом; - webhook-режим для сервера с HTTPS-доменом;
- выбор города, района, товара и варианта в Telegram; - главная бота: приветствие, выбор города, баланс, рефералка, последний заказ, поддержка;
- создание заказа без отправки чека; - последовательность заказа: город → продукт → район/зона → тип/вариант → итог → оплата/отмена;
- выдача реквизитов и уникальной суммы `цена + случайная добавка`; - оплата с баланса магазина;
- ручное подтверждение/отклонение оплаты в админ-панели; - карта/СБП/банк с уникальной суммой для ручной идентификации;
- управление городами, районами, товарами, вариантами и реквизитами; - Bitcoin-реквизиты с подтверждением оператором;
- базовые логи входящих Telegram-событий и ошибок; - баланс пользователя через ledger: рефералы, пополнения, возвраты, списания;
- автовыдача товара после статуса `paid`;
- управление городами, районами, товарами, вариантами, остатками, заказами, платежами;
- базовые логи Telegram-событий и действий администратора;
- автоустановщик `install.sh`. - автоустановщик `install.sh`.
## Важно ## Важная логика платежей
Проект предназначен только для легального магазина товаров и услуг. В коде нет механики тайников, скрытых адресов, автоматической выдачи запрещённых товаров или обхода платёжных правил. Пользовательское нажатие `Я оплатил` не делает заказ оплаченным. Оно переводит платёж в проверку оператором. Автовыдача выполняется только после статуса `paid`.
Для полностью автоматической оплаты нужен официальный платёжный API банка/эквайринга/крипто-провайдера. Уникальная сумма без API — это полуавтоматический режим с ручной проверкой.
## Статусы заказа
- `draft` — черновик;
- `waiting_payment` — ожидает оплату;
- `payment_review` — пользователь заявил оплату, оператор проверяет;
- `paid` — оплата подтверждена;
- `delivered` — товар выдан;
- `cancelled` — отменён;
- `refunded` — возвращён;
- `expired` — истёк срок оплаты;
- `rejected` — оплата отклонена.
## Требования ## Требования
- Ubuntu/Debian сервер или локальная VM; - Ubuntu/Debian сервер или локальная VM;
- PHP 8.1+; - PHP 8.1+;
- MySQL 5.7+/8+; - MySQL 5.7+/8+ или MariaDB;
- Nginx; - Nginx;
- доступ в интернет для Telegram Bot API. - доступ в интернет для Telegram Bot API.
## Локальная установка без домена ## Локальная установка без домена
Самый простой вариант:
```bash ```bash
sudo apt update sudo apt update
sudo apt install -y git curl sudo apt install -y git curl
@@ -72,36 +89,10 @@ sudo bash install.sh --local \
4. В панели откройте «Боты». 4. В панели откройте «Боты».
5. Добавьте токен. 5. Добавьте токен.
6. Поставьте статус `active`. 6. Поставьте статус `active`.
7. В локальном режиме кнопку webhook нажимать не нужно. 7. В локальном режиме webhook не нужен.
8. Добавьте город, район, товар, вариант и реквизиты. 8. Добавьте город, район, товар, вариант, остатки и реквизиты.
9. Напишите `/start` своему Telegram-боту. 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 ```text
@@ -113,6 +104,14 @@ storage/config.php # создаётся installer'ом, не хранитс
storage/logs/ # логи 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`