# Product

<!-- impeccable:product-schema 1 -->

## Platform

web

## Users

- Основная аудитория: русскоязычные туристы, которые отдыхают в Таиланде или планируют поездку и уже находятся в Telegram.
- Основная ситуация: пользователь хочет быстро выбрать экскурсию, трансфер или туристическую услугу, понять ориентир по цене и отправить заявку без сложного бронирования.
- Допущение: для части пользователей важнее помощь менеджера и подтверждение деталей, чем самостоятельное оформление заказа до конца.
- Внутренняя аудитория: владелец ThaiForTravel и менеджеры, которым нужно видеть активность клиентов, заявки, оплаты и очередь чатов без ответа.

## Product Purpose

ThaiForTravel Mini App помогает выбрать туристическую услугу в Таиланде и передать менеджеру достаточно данных для подтверждения даты, мест, трансфера и других деталей.

Успешный сценарий:

1. Пользователь находит подходящую услугу.
2. Отправляет короткую заявку.
3. Получает подтверждение отправки в Mini App и в Telegram-боте.
4. Продолжает общение с менеджером в том же Telegram-боте.

## Positioning

Это не универсальный маркетплейс и не автоматизированная касса. Это лёгкий каталог-помощник лицензированной туристической компании с русскоязычным сопровождением и подтверждением заявки менеджером.

## Operating Context

- Mini App запускается из Telegram-бота ThaiForTravel.
- Основной канал дальнейшей коммуникации: тот же Telegram-бот.
- Telegram user подтягивается автоматически.
- Телефон и WhatsApp используются только как дополнительные контакты.
- Основные направления: Паттайя, Пхукет, трансферы, яхты и катера.
- Основные типы контента: фотографии, описание, программа, условия, цены, отзывы, состав услуги.

## Capabilities and Constraints

- Mobile-first интерфейс с базовой шириной макета 390 px.
- Каталог, поиск, фильтры, сортировка и избранное.
- Детальная карточка услуги с раскрывающимися информационными блоками.
- Заявка на выбранную услугу.
- Отдельный сценарий составления плана отдыха по дням.
- Рекомендации по экскурсиям на основе направления, количества взрослых и детей, а также нескольких выбранных категорий.
- Поиск из планирования показывает только каталог выбранного направления: Паттайя или Пхукет.
- В один день можно выбрать не более одной услуги: экскурсию или трансфер.
- Двухдневная экскурсия автоматически занимает текущий и следующий день как одна связанная запись.
- Трансферы доступны в поиске плана на любой день, но рекомендуются только в день приезда и день отъезда с учётом направления маршрута.
- Итоговый план имеет два режима отображения: маршрут по дням и компактные карточки.
- Личные напоминания по комментариям создаются только по явному выбору пользователя и предлагают несколько вариантов времени от недели до часа перед событием.
- Основные действия мастера закреплены в нижней зоне: создать план, назад, следующий день и отправить.
- Сервисные напоминания о подтверждённых экскурсиях приходят в Telegram-бот.
- Состояния загрузки, ошибки, пустого результата и отсутствующего фото.
- Поддержка длинных названий, нескольких цен, акций и бейджей.
- Базовая поддержка светлой и тёмной тем Telegram.
- Учитываются safe area, динамическая высота WebView и небольшие экраны.
- В MVP нет корзины, встроенной онлайн-оплаты в Mini App, личного кабинета, сложной CRM и календаря доступности по слотам. После подтверждения услуги менеджер присылает клиенту ссылку на онлайн-оплату в Telegram.
- Отдельная защищённая web-админка показывает операционные метрики, заявки, клиентов, диалоги и оплаты; доступ к ней не выдаётся клиентам Mini App.
- Заявка не равна подтверждённому бронированию. Дату, места, трансфер и детали подтверждает менеджер.
- Допущение: трансферы и подбор отелей используют тот же общий сценарий заявки, но показывают набор полей, подходящий типу услуги.
- Открытое решение: точный набор обязательных полей для трансфера и подбора отеля.
- Открытое решение: хранение черновика заявки и избранного между сессиями.
- Открытое решение: часовой пояс личных напоминаний и правила их переноса при изменении экскурсии.

## Brand Commitments

- Название ThaiForTravel и существующий логотип сохраняются.
- Визуальная связь с сайтом [thaifortravel.ru](https://thaifortravel.ru/) обязательна.
- Характер бренда: туристический, солнечный, доверительный, комфортный.
- Фактические обещания: помощь на русском языке, работа в Таиланде, коммуникация через Telegram.
- Привязанные пользователем цвета: тёплый жёлто-оранжевый, морской синий или бирюзовый, светлый фон и тёмный текст.
- Главные CTA используют формулировки "Оставить заявку", "Забронировать" или "Уточнить наличие", но не "Купить".

## Evidence on Hand

- Публичный сайт: [thaifortravel.ru](https://thaifortravel.ru/).
- В репозитории есть аудит сайта и скриншоты от 28 июня 2026 года: `reports/2026-06-28-thaifortravel-audit/`.
- Пользователь подтвердил для использования в интерфейсе: 200+ экскурсий, 1000+ отзывов и статус лицензированной компании TAT.
- Публичный сайт также сообщает о 5000+ проданных турах.
- Перед выпуском нужно получить официальный материал или ссылку, подтверждающую лицензию TAT, и актуализировать числовые показатели.
- Реальные каталожные данные, финальный bot username и тексты политики обработки данных пока не предоставлены. Их нельзя придумывать в production-интерфейсе.

## Product Principles

- Помощь вместо давления: интерфейс помогает выбрать и связаться, а не имитирует мгновенную покупку.
- Один понятный следующий шаг на каждом экране.
- Telegram остается главным каналом доверия и продолжения диалога.
- Короткий путь важнее полноты каталога на одном экране.
- Реальные фотографии, цены и условия важнее декоративных эффектов.

## Accessibility & Inclusion

- Все интерактивные элементы имеют доступное имя и touch target не меньше 44 x 44 px.
- Текст и контролы должны проходить WCAG AA.
- Цвет не используется как единственный носитель состояния.
- Формы используют постоянные подписи над полями, понятные ошибки и корректный порядок фокуса.
- Анимации минимальны и учитывают `prefers-reduced-motion`.
- Интерфейс должен работать с увеличенным системным шрифтом и длинным русским текстом.
