diff --git a/docs/Tekhnicheskoe_zadanie_na_nastroyku_bota.docx b/docs/Tekhnicheskoe_zadanie_na_nastroyku_bota.docx new file mode 100644 index 0000000..70731d1 Binary files /dev/null and b/docs/Tekhnicheskoe_zadanie_na_nastroyku_bota.docx differ diff --git a/docs/Оплата_в_боте_описание.md b/docs/Оплата_в_боте_описание.md new file mode 100644 index 0000000..02c58a4 --- /dev/null +++ b/docs/Оплата_в_боте_описание.md @@ -0,0 +1,148 @@ +# Приём оплаты через чат-бота ИКП (ВКонтакте) + +Документ для согласования. Описывает, **как будет проходить оплата** через бота, +и **что для этого нужно со стороны компании** (бухгалтерия / руководство). + +--- + +## 1. Что предлагается + +Дать клиенту возможность **оплатить услугу прямо в переписке с ботом ВКонтакте** — +через Систему быстрых платежей (СБП) по QR-коду или ссылке в банковское приложение. +Приём платежей — через уже используемый сервис **ЮKassa**. Деньги поступают на +**расчётный счёт компании**, как и при обычной оплате через ЮKassa. + +--- + +## 2. Как это будет происходить (пошагово) + +**Со стороны клиента:** +1. Клиент оформляет заявку в боте и выбирает услугу. +2. Бот присылает прямо в чат **сумму к оплате**, **QR-код** и **кнопку «Оплатить»** + (ссылка открывает приложение его банка — Сбер / ВТБ / Альфа / Т-Банк и др.). +3. Клиент оплачивает в своём банке по СБП (сканирует QR или жмёт кнопку). +4. Бот сам узнаёт, что оплата прошла, и присылает: **«Оплата получена ✅»** и + инструкцию, что делать дальше (например, время занятия / контакт тренера). + +**Со стороны системы (автоматически):** +1. Бот создаёт платёж в ЮKassa на нужную сумму. +2. ЮKassa формирует QR/ссылку СБП и (при необходимости) **фискальный чек**. +3. Бот отслеживает статус платежа и, как только он «оплачен», подтверждает клиенту + и **уведомляет менеджера** о поступившей оплате. + +> Важно: клиент **не переходит на посторонние сайты** — оплата идёт через QR/ссылку +> в его банковском приложении. Это снижает риск сбоев на мобильном интернете. + +--- + +## 3. Куда поступают деньги + +- Платёж проходит через **ЮKassa** (тот же сервис, что используется сейчас). +- Средства зачисляются на **расчётный счёт компании** по условиям действующего + договора с ЮKassa. Никаких новых счетов/кошельков заводить не требуется. +- Комиссия — по тарифу ЮKassa/СБП (уточняется в кабинете ЮKassa). + +--- + +## 4. Где хранятся данные о платежах и как их получают + +**Хранение (три уровня):** +- **ЮKassa — основной финансовый реестр.** Полные данные каждого платежа + (плательщик, сумма, дата, статус, чек) хранятся в кабинете ЮKassa. Это + авторитетный источник для бухгалтерии и налоговой. +- **База сайта (infocyber.pro) — единый учёт.** Бот дублирует запись об оплате + (кто / когда / сколько / за что / статус) в базу сайта, чтобы платежи были в одном + месте с остальными заявками компании. +- **База бота — рабочая связка.** Локально бот хранит связь «платёж ↔ клиент/заявка» + для своей логики (подтверждение оплаты, сверка). + +**Получение данных (максимально безопасно):** +- Основной способ — **кабинет ЮKassa**: доступ по ролям, официальные выгрузки в + Excel/1С, чеки. Здесь бухгалтерия берёт данные для отчётности. +- Дополнительно — **выгрузка из базы сайта** штатными средствами (как по остальным + заявкам). +- Финансовые данные **не выводятся в переписку ВКонтакте** — это небезопасный канал. + Чат используется только для уведомления клиента об успешной оплате. + +> Примечание по реализации: запись в базу сайта требует доступа к ней (тип СУБД, +> структура таблиц, учётные данные) — это отдельный пункт согласования с +> администратором сайта. + +## 5. Что нужно подтвердить со стороны компании + +Это ключевой раздел — **реализуемость зависит от этих пунктов**: + +1. **Договор с ЮKassa действует** и позволяет приём платежей от физлиц. ✔/�’ +2. **Подключён СБП** в кабинете ЮKassa (отдельная активация). Без него QR/ссылку + по СБП выпустить нельзя. ✔/✗ +3. **Фискальные чеки (54-ФЗ):** при оплате услуги физлицом закон требует выдавать + чек. Нужно подтвердить, что: + - подключена онлайн-касса (своя или облачная от ЮKassa), и + - бухгалтерия согласовала **состав чека** (наименование услуги, ставка НДС/без НДС, + признак предмета/способа расчёта). ✔/✗ +4. **Юр. статус получателя** (ИП / ООО / самозанятый) — под него настраиваются чеки и + налогообложение. ✔/✗ +5. **Прайс для оплаты:** точные суммы за конкретные услуги (сейчас в боте указано + «от 870 ₽» — для оплаты нужна фиксированная цена позиции). ✔/✗ +6. **Доступы ЮKassa** (идентификатор магазина и секретный ключ) — выдаются + разработчику для настройки; хранятся в защищённом конфиге, в открытый код не попадают. + +--- + +## 6. Что делает бот, а что — нет + +**Бот делает:** +- создаёт платёж, показывает QR/ссылку, ловит подтверждение оплаты, сообщает клиенту + и менеджеру, ведёт учёт оплат. + +**Бот НЕ делает (это на стороне ЮKassa/бухгалтерии):** +- не хранит деньги и данные карт (всё в контуре ЮKassa — это безопаснее и по 152-ФЗ); +- не формирует чек самостоятельно — чек выпускает ЮKassa/касса по данным, которые + согласует бухгалтерия; +- не считает налоги. + +--- + +## 7. Риски и как они закрываются + +- **Клиент не оплатил / передумал** — платёж имеет срок (например, 15 минут), после + чего отменяется; бот предложит повторить. +- **Сбой связи** — бот перепроверяет статус платежа; при успешной оплате подтверждение + придёт, даже если клиент закрыл чат. +- **Сверка** — по каждой оплате менеджер получает уведомление; все платежи видны в + кабинете ЮKassa (для бухгалтерии — привычный источник данных). + +--- + +## 8. Что нужно для старта (резюме) + +| # | Пункт | Ответственный | Статус | +|---|-------|---------------|--------| +| 1 | Действующий договор ЮKassa | Бухгалтерия/руководство | | +| 2 | Подключён СБП в ЮKassa | Бухгалтерия/ЮKassa | | +| 3 | Онлайн-касса + состав чека (54-ФЗ) | Бухгалтерия | | +| 4 | Юр. статус и налоговый режим | Бухгалтерия | | +| 5 | Фиксированные цены услуг | Руководство | | +| 6 | Доступы ЮKassa (тестовые и боевые) | Руководство → разработчик | | +| 7 | Доступ к базе сайта (для записи платежей) | Администратор сайта | | + +**Вывод:** технически всё реализуемо и уже частично готово (в боте есть оформление +заявок и уведомления). Оставшиеся вопросы — **организационные** (СБП, чеки, доступы). +Как только пункты 1–7 подтверждены, внедрение занимает ограниченное время. + +--- + +## 9. Что нужно от администратора сайта (для записи платежей в базу сайта) + +Чтобы платежи дублировались в базу сайта (единый учёт с заявками), от администратора +**infocyber.pro** потребуется: +- **тип СУБД** (MySQL / PostgreSQL / иное); +- **способ подключения** — хост, порт, логин, пароль (или API сайта, если прямой доступ + к базе не предоставляется); +- **куда записывать** — таблица и её структура для платежей. + +Пока этих доступов нет, внедрение возможно **поэтапно**: +- **Этап 1.** Оплата полностью работает на базе бота + ЮKassa (приём платежей, + подтверждение, уведомление менеджера, учёт). Функционально — всё готово к работе. +- **Этап 2.** Добавляется дублирование платежей в базу сайта — как только администратор + сайта предоставит доступ и структуру.