# ПРИЛОЖЕНИЕ № 1 ## к Договору подряда на разработку программного обеспечения № ___ от «__»____ 20__ г. ## ТЕХНИЧЕСКОЕ ЗАДАНИЕ на разработку платформы MaxMedias > Черновик. Конкретизируется Сторонами на этапе утверждения. --- ## 1. Общее описание **Название продукта**: MaxMedias — рекламная биржа для размещения рекламы в каналах и чатах мессенджера MAX. **Домены**: - маркетинг/лендинг: `maxmedias.babayoga.pro` (после регистрации ООО — переносится на боевой домен); - кабинет: `cabinet.babayoga.pro` (после регистрации ООО — переносится на боевой домен). **Целевая архитектура**: - фронтенд — Next.js (TypeScript); - бэкенд — Node.js (API на том же Next.js / отдельный сервис); - БД — PostgreSQL (Prisma ORM); - аутентификация — NextAuth (email/password + magic link по опциям); - хостинг — PaaS / VPS в РФ (после переезда с текущей инфраструктуры). --- ## 2. Роли пользователей 1. **ADVERTISER (рекламодатель)** — покупает размещения рекламы. 2. **PUBLISHER (паблишер)** — владелец канала/чата в MAX, размещает рекламу. 3. **AGENT (агент)** — привлекает рекламодателей/паблишеров, получает комиссию. 4. **ADMIN (администратор платформы)** — модерация, финансы, настройки. --- ## 3. Функциональный состав ### 3.1. Публичный лендинг - Обзор платформы, форматы рекламы, тарифы, кейсы, контакты. - Регистрация (общая + по приглашению от агента). - Публичные страницы: Политика конфиденциальности, Пользовательское соглашение, Правила размещения рекламы. ### 3.2. Кабинет рекламодателя - Пополнение баланса, вывод остатков, история транзакций. - Каталог каналов/чатов с фильтрами: категория, регион, охват, ER, средние просмотры, цена, CPV, формат. - Создание заявок на размещение: выбор канала, формата, креатива, даты. - Получение erid через интеграцию с ОРД и прикрепление его к посту (для классического формата). - Smart-кампании (AI‑подбор каналов под бюджет/цели). - Аналитика кампаний: показы, клики, конверсии (при наличии UTM). ### 3.3. Кабинет паблишера - Регистрация канала/чата (верификация владельца). - Установка цен и форматов (24 ч / 48 ч / 72 ч / 30 дн. / нативный / репост / распаковка). - Входящие заказы — принять/отклонить, загрузить пост, подтвердить факт публикации (скриншот/ссылка). - Вывод заработанных средств, комиссии, история. ### 3.4. Кабинет агента - Реферальные ссылки, статистика по приглашённым. - Комиссии с оборота приглашённых рекламодателей и/или паблишеров. - Агентские договоры (электронный документооборот). ### 3.5. Админка - Модерация каналов, пользователей, спорных ситуаций. - Финансовая панель: взаиморасчёты, вывод, комиссии, налоги. - Настройки платформы (тарифы комиссий, категории, форматы). - Журнал аудита. ### 3.6. Биллинг - Пополнение через эквайринг (ЮKassa / Тинькофф / любой российский PSP). - Выплаты паблишерам и агентам через API банка / Tinkoff Massplatezh / СБП. - Хранение транзакций, балансов, резервов по заказам. ### 3.7. Интеграция с мессенджером MAX - Проверка владения каналом/чатом (bot‑проверка, токен). - (Будущая опция) автопубликация/снятие постов через API MAX. ### 3.8. Интеграция с ОРД (оператор рекламных данных) - Запрос erid‑токена для каждой рекламной кампании с маркировкой. - Передача отчётов (реестр договоров, актов, креативов) в ЕРИР через ОРД. - Поддерживаемые ОРД — уточнить (Яндекс ОРД / ВК ОРД / МедиаСкаут / ОРД-А / Первый ОРД). --- ## 4. Категории каналов еда · путешествия · политика · экономика · финансы · образование · IT · AI · наука · культура · здравоохранение · творчество · хобби · недвижимость · транспортные средства · спорт · дом и ремонт · красота и здоровье · игры/гейминг · психология · коучинг и инфобизнес · развлечения · треш‑контент. --- ## 5. Форматы рекламы | Код | Название | Срок жизни поста | Маркировка erid | |---|---|---|---| | FORMAT_1_24 | Пост 1/24 | 1 час в топе / 24 ч всего | да | | FORMAT_2_48 | Пост 2/48 | 2 ч в топе / 48 ч всего | да | | FORMAT_3_72 | Пост 3/72 | 3 ч в топе / 72 ч всего | да | | FORMAT_30_DAYS | Пост 30 дней | 30 дней | да | | NATIVE | Нативный пост | постоянный | нет | | REPOST | Репост из другого канала | 24 ч | по ситуации | | UNPACKING | Пост‑распаковка | 24 ч | нет | Носители: текст, картинка, видео, кружок (video‑message). --- ## 6. Этапы и предварительные сроки | Этап | Состав | Срок | Цена | |---|---|---|---| | 1. Архитектура и дизайн | Архитектура, схема БД, Figma‑макеты | 2 недели | ______ руб. | | 2. Лендинг + регистрация | Публичный сайт, auth | 2 недели | ______ руб. | | 3. Каталог каналов | Парсер, каталог, фильтры, страницы каналов | 3 недели | ______ руб. | | 4. Биллинг и баланс | Пополнение, выплаты, транзакции | 2 недели | ______ руб. | | 5. Заказы и сделки | Размещение, модерация, статусы | 3 недели | ______ руб. | | 6. Интеграция ОРД | erid, отчёты в ЕРИР | 2 недели | ______ руб. | | 7. Интеграция MAX | верификация каналов, webhooks | 2 недели | ______ руб. | | 8. Админ‑панель | CRUD, аудит, финансы | 2 недели | ______ руб. | | 9. Публичный запуск | Нагрузочное тестирование, мониторинг, SRE | 2 недели | ______ руб. | Итого: ≈ 20 недель + поддержка. --- ## 7. Требования к качеству - покрытие критичных модулей юнит‑тестами (не менее 60% линий); - e2e‑тесты ключевых сценариев (регистрация, пополнение, создание заказа, выплата); - нагрузочное тестирование до 1000 одновременных пользователей кабинета; - мониторинг (uptime, ошибки, задержки) — в течение 24×7; - бэкапы БД каждые 24 часа с хранением не менее 30 дней. --- ## 8. Передача результатов По завершении этапа Исполнитель передаёт Заказчику: - исходный код (git); - миграции БД; - `.env.example` и описание переменных окружения; - деплой‑инструкции; - API‑документацию (OpenAPI/Swagger); - реестр сторонних библиотек и их лицензий; - доступы к инфраструктуре, зарегистрированной в интересах Заказчика. --- ## 9. Изменения ТЗ Изменения вносятся дополнительным соглашением с указанием влияния на сроки и стоимость.