Личный кабинет клиента — это закрытый сайт, где каждый клиент входит под своим логином и видит свои проекты, файлы, счета и сообщения. В конструкторе приложений с ИИ вы описываете клиентов, что им нужно видеть и что вы загружаете. Он создаёт аккаунты с ролями, закрытое хранилище файлов с временными ссылками и админку для вашей команды.
- Сначала продумайте данные: клиенты, пользователи, проекты, файлы, сообщения и счета, причём каждая запись привязана ровно к одному клиенту.
- Каждая страница и каждый файл должны проверять, кто вошёл в систему. Проверьте это: попробуйте открыть страницу одного клиента, войдя под другим.
- Закрытые файлы отдаются только по ссылкам для скачивания, которые истекают за несколько минут, и только после того, как кабинет убедится, что файл принадлежит этому клиенту.
- Для уведомлений на почту и сброса паролей нужен ваш собственный SMTP-аккаунт, для онлайн-оплаты — ключи вашего платёжного сервиса. И то и другое добавляется в разделе «Интеграции».
- Разместите кабинет по адресу вроде lk.vasha-firma.ru — на платном плане для этого хватит одной DNS-записи.
Что делает личный кабинет клиента и что ему не нужно
Личный кабинет заменяет почтовые переписки, в которых теряется работа: «какая версия финальная?», «вы получили мои банковские выписки?», «счёт 1042 оплачен?». Каждый клиент входит и находит одно аккуратное место со статусом своего проекта, файлами, которые вы ему отправили, файлами, которые он прислал вам, сообщениями по каждому проекту и своими счетами.
Он полезен везде, где работа повторяется и связана с документами. Бухгалтер на аутсорсе собирает документы для годовой отчётности у сорока клиентов. Дизайн-агентство показывает черновики и собирает согласования. Консультант хранит отчёты и протоколы встреч по каждому проекту. Фотограф отдаёт готовые галереи.
Чего не нужно первой версии: онлайн-чата (достаточно переписки внутри каждого проекта), нативного мобильного приложения (веб-кабинет работает в любом браузере на телефоне), сложных матриц прав доступа или единого входа (SSO) через корпоративную систему учётных записей. Начните с самого маленького кабинета, которым клиенты действительно будут пользоваться, и дополняйте его, когда они начнут.
Готовый сервис по подписке или кабинет, созданный ИИ
Альтернатива созданию своего кабинета — подписка на готовый сервис клиентских порталов. Оба варианта разумны, просто они подходят разным компаниям.
| Критерий | Готовый сервис по подписке | Кабинет, созданный ИИ (WisyLink) |
|---|---|---|
| Настройка | Регистрация и настройка шаблонов | Описываете в чате и дорабатываете следующими сообщениями |
| Соответствие вашим процессам | Вы подстраиваетесь под его поля и шаги | Строится вокруг ваших записей, статусов и формулировок |
| Брендинг и домен | По-разному; свой домен часто только на дорогих тарифах | Ваш дизайн; свой домен на любом плане |
| Модель оплаты | Обычно за пользователя или за клиента | Фиксированный план ($7, $20 или $100 в месяц), а не оплата за каждого клиента |
| Ограничения | Фиксированный набор функций, часто с электронной подписью и интеграциями с учётными системами | Только то, что вы попросите, в пределах лимитов плана на хранилище, базу данных и трафик; нет полнотекстового поиска |
| Кто вносит изменения | Поставщик по своему плану развития | Вы, через чат |
Выбирайте сервис по подписке, если нужны встроенная электронная подпись, готовые интеграции с учётными системами или формальные сертификаты соответствия. Создавайте свой кабинет, если ваш процесс нестандартный, оплата за каждого клиента бьёт по бюджету по мере роста или вы хотите, чтобы кабинет выглядел и говорил как ваша компания.
Продумайте данные: клиенты, проекты, файлы, сообщения, статусы
Десять минут планирования здесь сэкономят несколько пересборок. Запишите, какие записи хранит кабинет и к какому клиенту относится каждая:
| Запись | Основные поля | К чему относится |
|---|---|---|
| Клиент | Название компании, контактное лицо, активен или в архиве | Ваша компания |
| Пользователь | Имя, email, роль (администратор, сотрудник или клиент) | Один клиент или ваша команда |
| Проект | Название, статус, срок | Один клиент |
| Файл | Название, кто загрузил, дата, направление (клиенту или от клиента) | Один проект и его клиент |
| Сообщение | Автор, текст, дата, прочитано или нет | Один проект и его клиент |
| Счёт | Номер, сумма, валюта, срок оплаты, статус, PDF | Один клиент, при желании и один проект |
Два правила упрощают всё остальное. Во-первых, каждая запись хранит клиента, к которому относится: именно это одно поле позволяет кабинету правильно фильтровать данные. Во-вторых, пользователи принадлежат клиентам, а не наоборот, потому что у компании-клиента часто два-три человека, которым нужен доступ.
Делайте статусы короткими и формулируйте их с точки зрения клиента: «Не начат», «В работе», «Ждём вас», «Сдан». Клиент, который видит «Ждём вас», точно знает, что делать.
Пошаговое создание с шаблоном промпта
- Запишите свои записи, роли и статусы по таблице выше.
- Откройте чат в WisyLink. Для прототипа хватит бесплатного плана Community; для реальных клиентов нужен платный план, потому что бесплатные ссылки удаляются через 30 дней плюс неделю.
- Вставьте промпт ниже, адаптировав его под свою компанию.
- Ответьте на вопрос Wisy, если он его задаст, и дождитесь окончания сборки. Итоговая заметка подскажет, как войти администратором и какие интеграции ждут ключей.
- Создайте двух тестовых клиентов, у каждого по одному тестовому пользователю, и добавьте каждому проект и файл.
- Добавьте данные SMTP и, если принимаете оплату, ключи платёжного сервиса в разделе «Интеграции».
- Пройдите чек-лист безопасности ниже в этом гайде.
- Подключите домен, а затем пригласите сначала одного лояльного клиента и только потом всех остальных.
Создайте закрытый личный кабинет клиента для [название компании] — [тип компании]. Без открытой регистрации: аккаунты создают только администраторы.
Роли: администратор (я), сотрудник (моя команда) и клиент. У каждой компании-клиента может быть несколько пользователей. Пользователи клиента никогда не должны видеть ничего, кроме проектов, файлов, сообщений и счетов своей компании.
У проектов есть название, статус (Не начат, В работе, Ждём вас, Сдан) и срок. В каждом проекте обе стороны могут загружать закрытые файлы до 25 МБ и писать сообщения.
Счета: номер, сумма, срок оплаты, статус и прикреплённый PDF, а для неоплаченных счетов — кнопка «Оплатить» через [платёжный сервис]. Отмечайте счёт оплаченным, только когда платёжный сервис это подтвердит.
Отправляйте клиентам письмо, когда мы загружаем файл или пишем сообщение, и мне — когда это делает клиент. Новые пользователи получают письмо-приглашение, чтобы задать пароль. Используйте наши цвета [цвета] и спокойный деловой стиль.
На бесплатном плане Wisy ограничивает каждую сборку первой рабочей частью, так что сначала ждите вход, проекты и файлы. Сообщения и счета попросите следующими сообщениями. Каждое изменение — новая сборка, а неудачная сборка оставляет в работе предыдущую версию. Подробнее о том, как устроены такие инструменты, — в статье что такое конструктор приложений с ИИ.
Вход, роли и правило «каждый клиент видит только свои данные»
Кабинет ведёт собственные аккаунты. Пароли хранятся в виде хешей, сессии живут в HttpOnly-cookie, повторные неудачные попытки входа ограничиваются, а роли проверяются на страницах и маршрутах самого кабинета. Входа, предоставляемого платформой, нет, как нет и SSO или SAML. Если клиенты хотят входить через Google, кабинет может это предложить с помощью OAuth-ключей, которые вы создаёте в своём аккаунте Google и вставляете в разделе «Интеграции».
Большинству компаний хватает трёх ролей:
- Администратор
- Вы. Создаёт клиентов и пользователей, видит всё, управляет счетами.
- Сотрудник
- Ваша команда. Загружает файлы и отвечает на сообщения; если это важно, попросите ограничить сотрудников закреплёнными за ними клиентами.
- Клиент
- Видит и загружает файлы только в проектах своей компании.
Сделайте вход только по приглашениям. Если зарегистрироваться может кто угодно, посторонние смогут создавать аккаунты, даже если ничего не увидят. Когда настроен SMTP, письмо-приглашение позволяет каждому новому пользователю задать свой пароль; без него вы задаёте временный пароль и сообщаете его по телефону.
Безопасен ли личный кабинет, созданный ИИ?
Со стороны платформы всё надёжно: каждый сайт работает на собственных вычислительных ресурсах, неподписанные запросы отклоняются до запуска кода, у агента сборки нет постоянного доступа к вашему аккаунту или ключам, а ключи в «Интеграциях» шифруются и больше никогда не показываются. Проверить нужно ваши собственные правила доступа. Нарушение контроля доступа стоит на первом месте в OWASP Top 10:2025, и, по данным OWASP, та или иная его форма нашлась в каждом протестированном приложении. Типичный пример — открыть чужую запись, поменяв ID в адресной строке. Решение — каждая страница находит клиента вошедшего пользователя и фильтрует данные по нему, а не доверяет ID из URL. Проверьте: войдите как клиент А, скопируйте адрес проекта, войдите как клиент Б и вставьте его. Должна открыться страница «не найдено».
Закрытый обмен файлами по временным ссылкам
Обмен файлами — обычно та самая причина, по которой компаниям нужен кабинет, поэтому стоит точно знать, как он работает. Файлы попадают прямо в закрытое хранилище сайта, а кабинет записывает, к какому клиенту и проекту относится каждый из них. Когда кто-то нажимает «Скачать», кабинет проверяет, может ли вошедший пользователь видеть этот файл, и только тогда создаёт подписанную ссылку, которая истекает через несколько минут. Если клиент перешлёт такую ссылку, вскоре она перестанет работать; сам файл никогда не лежит по публичному адресу.
Могут ли клиенты загружать файлы для меня?
Да. Клиенты могут загружать файлы в свои проекты, а вы — в их проекты. Каждый файл может весить до 25 МБ; подходят PDF, изображения, офисные документы и zip-архивы. Каждая загрузка расходует хранилище и трафик вашего плана, как и каждое скачивание закрытого файла. Сколько вы уже используете, видно в панели «Ресурсы» вашего аккаунта.
Три практические привычки держат хранилище под контролем:
- Попросите действие «в архив» или «удалить» для старых проектов, чтобы завершённая работа не занимала хранилище.
- Для очень больших материалов, например видеомастеров или крупных архивов изображений, используйте сервис передачи файлов и публикуйте ссылку в проекте.
- Попросите показывать у загрузок автора и дату — тогда вопрос «какая версия финальная?» решится сам.
Уведомления о новых файлах и сообщениях на почту (SMTP)
Кабинет отправляет письма через ваш собственный SMTP-аккаунт — настройки исходящей почты от вашего почтового провайдера. Вы вставляете сервер, порт, имя пользователя, пароль и адрес отправителя в разделе «Интеграции». Пока вы этого не сделали, кабинет работает, но ничего не отправляет, а значит, приглашения и сброс пароля тоже ни до кого не дойдут. Настройте SMTP до того, как приглашать клиентов.
Полезные уведомления:
- Клиенту: вы загрузили файл, написали сообщение или выставили счёт.
- Вам: клиент загрузил файл или ответил.
- Новым пользователям: приглашение задать пароль и коды для сброса пароля.
Никогда не вставляйте в письмо ссылку для скачивания. Подписанные ссылки истекают через несколько минут, а письмо могут прочитать через несколько часов. Вместо этого ведите на страницу проекта, где клиент войдёт и скачает файл. Если писем на каждое событие слишком много, попросите вместо них сводку для себя: задачи по расписанию могут запускаться каждые 30–60 минут и присылать одно письмо обо всём, что загрузили клиенты.
Счета и оплата через ваш платёжный сервис
Многие компании выставляют счета в своей учётной программе и просто прикрепляют PDF к записи счёта в кабинете, а статус обновляют вручную. Для первой версии это нормально. Если вы хотите, чтобы клиенты платили прямо в кабинете, конструктор может добавить кнопку «Оплатить», которая работает через ваш собственный аккаунт у платёжного сервиса.
Этот сценарий построен безопасно: кабинет сначала записывает попытку оплаты, затем отправляет клиента на страницу оплаты платёжного сервиса и отмечает счёт оплаченным только тогда, когда это подтверждает подписанное уведомление от сервиса, — а не потому, что клиент попал на страницу «спасибо». Ключи платёжного сервиса вы добавляете в разделе «Интеграции»; там же появляются инструкции по настройке, а до этого платежи остаются неактивными. Сначала используйте тестовый режим, оплатите один счёт от начала до конца и только потом переключитесь на рабочие ключи.
Две оговорки. WisyLink никогда не держит ваш платёжный аккаунт, поэтому действуют комиссии и условия самого платёжного сервиса. И не каждый сервис работает в каждой стране — Stripe, например, не обслуживает компании из России; любой платёжный сервис с API можно подключить тем же способом. Для ежемесячного абонентского обслуживания кабинет может хранить статус подписки каждого клиента и показывать его на главной странице кабинета.
Чек-лист безопасности перед приглашением клиентов
Пройдите этот список один раз перед запуском и снова после любого изменения, которое затрагивает аккаунты, роли или файлы:
- Изоляция: с двумя тестовыми клиентами попробуйте открыть каждый адрес проекта, файла и счёта одного, войдя под другим.
- Страницы администратора: зайдите в админку под клиентом — доступ должен быть запрещён.
- Закрытая регистрация: в приватном окне браузера убедитесь, что создать аккаунт без приглашения нельзя.
- Временные ссылки: скопируйте ссылку для скачивания, подождите 15 минут и откройте её снова — она не должна сработать.
- Пароль администратора: замените стартовый пароль из заметки сборки на длинный и уникальный.
- Почта: отправьте сброс пароля тестовому пользователю и проверьте, что письмо пришло, — загляните и в спам.
- Платежи: проведите тестовую оплату и убедитесь, что счёт становится оплаченным только после подтверждения от платёжного сервиса.
- Запас ресурсов: проверьте в панели «Ресурсы», есть ли запас по хранилищу, базе данных и трафику.
- Уборка: удалите тестовых клиентов, файлы и счета.
- Ключи: убедитесь, что ни один ключ или пароль никогда не вставлялся в чат: им место только в «Интеграциях».
Два честных ограничения, которые стоит взвесить. WisyLink не публикует ни сведений о том, где хранятся данные, ни сертификатов соответствия, поэтому, если договор с клиентом их требует, уточните это заранее; если вы обрабатываете персональные данные граждан России, отдельно учтите требования 152-ФЗ к месту их хранения. И по условиям WisyLink тестировать то, что создаёт ИИ, должны вы, — именно для этого и нужен этот чек-лист.
Наконец, дайте кабинету собственный адрес. Одной DNS-записью можно подключить поддомен вроде lk.vasha-firma.ru, а основной сайт и почта останутся там, где были; шаги описаны в статье о подключении своего домена. Свой домен подключается на любом плане; сравните планы в разделе с ценами.
Создайте личный кабинет клиента на этой неделе
Запишите свои записи и роли, адаптируйте промпт выше и отправьте его. Войдите администратором, создайте двух тестовых клиентов и попробуйте сломать изоляцию до того, как войдёт первый настоящий клиент. Если вы ещё решаете, делать кабинет самому или поручить фрилансеру, сравнение ИИ-конструктора и найма разработчика поможет с этим выбором.
Первую версию можно создать и протестировать бесплатно: начните на плане Community, карта не нужна. Подробнее о том, как каждый сайт изолируется и развёртывается, — в разделе о том, как устроен WisyLink.
ЧАВО
