Бюджет:
80 000 руб
📑 ТЗ: Telegram-бот «Обмен lts» (P2P)
1. Назначение
Отдельный Telegram-бот для обмена внутренней единицы lts между пользователями.
У пользователя единый кошелёк lts, общий с внешними сервисами (например, «Игра-Стратегия»).
Через бот происходят все обмены lts ↔ деньги между людьми (P2P).
Админы и модераторы управляют лимитами, спорами и статистикой.
2. Функции для пользователя
2.1. Кошелёк
Баланс lts и замороженные суммы (в сделках).
История операций (пополнения, обмены, выводы).
2.2. P2P-обмен
Создание ордера на покупку/продажу lts.
Принятие чужого ордера.
Автоматическая блокировка (эскроу) lts у продавца до завершения сделки.
2.3. Сделка
Покупатель переводит деньги вне бота.
Отмечает «Я оплатил» + прикрепляет чек.
Продавец проверяет → подтверждает получение.
Бот выпускает lts покупателю.
Для мелких сумм — автоматический выпуск.
Для крупных — сделка уходит на модерацию.
Отмена возможна только до оплаты.
После оплаты спор решает модератор.
2.4. Паспорт сделки
Полный отчёт: ID, стороны, сумма, статусы, хронология шагов, чеки, комментарии, решение модератора.
Возможность скачать в PDF (с приложенными чеками).
2.5. Чат в сделке
Текстовый чат между покупателем и продавцом.
Сообщения и чеки фиксируются в паспорте.
В споре чат видит модератор.
2.6. Рейтинг
После сделки обе стороны ставят оценку 👍/👎.
В профиле: число сделок, % положительных.
Рейтинг виден при выборе ордера.
2.7. История
Раздел Мои сделки: все завершённые и активные сделки.
Быстрый доступ к паспорту и действиям.
3. Функции для админов/модераторов
Очередь сделок на проверку (крупные и спорные).
Паспорт сделки с чеками, хронологией и чатом.
Действия:
Одобрить (выпустить lts покупателю).
Отклонить (вернуть lts продавцу).
Запросить дополнительные доказательства.
Управление лимитами, комиссиями и сроками сделок.
История решений модераторов.
Экспорт паспортов сделок в PDF.
Статистика: оборот, количество сделок, споры, рейтинги.
Управление операторами (аккаунты для ликвидности).
4. Пользовательские флоу
4.1. Пополнение через внешний сервис
Пользователь в «Игре-Стратегии» нажимает «Пополнить баланс».
Выбирает сумму → жмёт «Пополнить».
Его перебрасывает в бот.
В боте создаётся сделка на покупку lts.
Покупатель получает реквизиты продавца.
Делает перевод вне бота → жмёт «Я оплатил» + чек.
Продавец подтверждает → бот выпускает lts.
Баланс пополняется в кошельке и в «Игре-Стратегии».
4.2. Вывод через внешний сервис
Пользователь в «Игре-Стратегии» нажимает «Вывести баланс».
Указывает сумму (≤ баланс lts).
Вводит реквизиты:
Номер карты,
Название банка,
Телефон (для СБП).
Отмечает метод перевода (по карте или по СБП).
Создаётся ордер на продажу lts в боте.
Дальнейшие шаги:
Когда другой пользователь (покупатель) откликается на этот ордер, бот отправляет запрос продавцу:
«Покупатель хочет перевести вам X ₽. Готовы ли вы принять перевод?»
Кнопки: Да, я готов / Нет, отменить.
Если продавец жмёт Да, я готов:
lts замораживаются в эскроу,
Покупателю выдаются реквизиты (карта/телефон).
Покупатель переводит деньги вне бота → жмёт «Я оплатил» + чек.
Продавец проверяет поступление → жмёт Подтвердить получение.
Бот выпускает lts покупателю.
Сделка закрыта, продавец получает деньги на свои реквизиты.
5. Обязательные функции
Прикрепление чеков при оплате.
Паспорт сделки (карточка + PDF).
Чат внутри сделки.
Рейтинг пользователей.
Модерация крупных сумм и споров.
Единый кошелёк для бота и внешних сервисов.
6. Внешние API
Для интеграции с внешними сервисами (например, «Игра-Стратегия») бот должен предоставлять единый API к кошельку пользователя.
Основные возможности:
Авторизация пользователя
Внешний сервис может идентифицировать пользователя и открыть ему доступ к его кошельку lts (по user_id / tg_id).
Просмотр баланса
Получение текущего баланса и замороженной суммы.
Пополнение
Внешний сервис инициирует переход пользователя в бот для покупки lts.
После завершения сделки баланс обновляется и в боте, и во внешнем сервисе.
Вывод
Внешний сервис инициирует вывод: сумма и реквизиты передаются в бот.
В боте автоматически создаётся сделка на продажу lts.
Статусы операций
Внешний сервис может запросить статусы всех операций: активные, завершённые, отменённые.
Возможность подписки на уведомления (например, через вебхуки).
История
Запрос истории кошелька и сделок (для отображения в интерфейсе внешнего сервиса).