Выдаём подписку
Создаём клиента в MVP-NL-Reality, ставим IP limit = 3 и отдаём персональную subscription-ссылку.
Пользовательский домен уже отделён от админки. Это значит, что сюда можно спокойно наращивать продажи, Mini App и личный кабинет, не ломая панель и подписки.
Пока MVP работает просто и надёжно: персональная подписка, import в Happ Plus, лимит по IP и отдельная панель управления на другом домене.
На первом этапе мы не усложняем архитектуру: сначала стабильный MVP, потом кабинет, платежи и Telegram-авторизация поверх него.
Создаём клиента в MVP-NL-Reality, ставим IP limit = 3 и отдаём персональную subscription-ссылку.
Пользователь открывает Happ Plus по deep link или вставляет ссылку вручную в любой Xray-совместимый клиент.
Следующий слой поверх этой страницы: авторизация через Telegram, оплата и автоматическое создание клиента через 3x-ui API.
Этот экран уже можно использовать как основу под тарифы, оплату и вход в кабинет. Пока текст и цена условные, но структура уже рабочая.
Сервер, 3x-ui, рабочий Reality inbound, HTTPS-домены, WARP и подтверждённые API-ручки для создания клиентов.
Мы уже решили идти через API. Значит, browser будет общаться только с нашим backend, а backend — с 3x-ui.
Telegram ID станет основным идентификатором пользователя, а не случайный UUID без контекста.
После оплаты backend активирует тариф, срок и лимит, а затем создаёт клиента через 3x-ui API.
В кабинете пользователь увидит статус, срок, subscription URL и кнопку подключения в Happ Plus.
Следующим шагом приложение получит `/app`, интеграцию с Telegram и серверный модуль, который создаёт и обновляет клиентов через 3x-ui API.