qwane

продукт под ключ

Разработка SaaS-платформы под ключ

Полноценный SaaS от идеи до прода — мультитенантность, подписки, роли, white-label. Не прототип, а то, что выдерживает реальных платящих клиентов.

SaaS отличается от обычного веб-приложения не интерфейсом, а тем, что одна система обслуживает много независимых компаний. Каждая платит, каждая уверена, что её данные не увидит сосед, и каждая хочет что-то настроить под себя. Отсюда следуют три блока, которых в обычном приложении нет вообще: изоляция данных между клиентами, биллинг с тарифами и подписками, и роли, которых теперь не одна плоскость, а две — внутри платформы и внутри компании-клиента.

Главное практическое следствие: ни один из этих трёх блоков нельзя добавить потом дёшево. Изоляцию, привинченную к готовому приложению, невозможно проверить — она либо в основании, либо её нет, потому что достаточно одного забытого фильтра в одном запросе. В партнёрской платформе, которую я собрал соло, это решено сквозным слоем: идентификатор компании подмешивается в каждый запрос к базе на уровне ниже прикладного кода, и «забыть» его нельзя физически. Такое решение принимается на первой неделе проекта, а не на восьмом месяце.

Биллинг — второе место, где ошибаются. Подключить приём карт несложно; сложно всё, что вокруг: что происходит при переходе на другой тариф в середине оплаченного периода, как считается возврат, что видит клиент, у которого не прошло списание, и остаётся ли у него доступ к своим данным после отключения. Эти правила — коммерческие решения, а не технические, и их надо принять до разработки. Я задаю их списком на старте, потому что переделка денежного контура после запуска обходится дороже всего остального вместе взятого.

Третье — роли в двух плоскостях. Есть ваши сотрудники: поддержка, которая должна зайти в аккаунт клиента и при этом не увидеть лишнего, и администраторы платформы. И есть роли внутри компании-клиента: владелец аккаунта, который платит и приглашает коллег, и обычные пользователи. Плюс white-label, если клиенты показывают продукт своим клиентам: свой домен, логотип и цвета. Собирается всё это по частям — первая рабочая версия с одним тарифом и ручным подключением клиентов выходит за 2 недели, а самообслуживание и автоматический биллинг добавляются, когда станет ясно, за что именно платят.

Что здесь ломается

Что стоит заложить сразу, а что можно отложить без последствий

МеханикаЕсли заложить в основаниеЕсли привинчивать к готовому
Изоляция данныхИдентификатор компании подмешивается ниже прикладного кодаРевизия каждого запроса в системе и вечный риск пропустить один
Роли клиентаВладелец аккаунта, сотрудники, приглашения — с первого дняПеределка каждого экрана: везде подразумевался один пользователь
Доступ поддержкиВход в аккаунт от имени клиента с записью в журналОбщий пароль или прямые правки в базе
БиллингТариф, период, пересчёт и возврат — правилами в кодеРучные списания и сверка платежей в таблице
Лимиты по тарифуСчётчики на тех же данных, что и сама работаОтдельный подсчёт, который расходится с реальностью
White-labelОтложимо: домен и тема добавляются поверхОтложимо
Публичный APIОтложимо: делается, когда его попросит первый клиентОтложимо

Что входит

Для кого

основателям и компаниям, которые уже видят спрос и делают продукт для многих клиентов сразу: отраслевым сервисам, инструментам для профессионалов, внутренним системам, которые решили продавать наружу.

Когда не ко мне: если гипотеза ещё не проверена, SaaS-архитектура — это преждевременные расходы: изоляция, биллинг и две плоскости ролей стоят денег и не приближают ответ на вопрос, купят ли вообще. В такой ситуации честнее собрать MVP под одного клиента или взять no-code и вернуться к платформе, когда клиентов станет несколько.

Кейс по теме: Партнёрская PRM-платформа с AI-подбором и копайлотом

Частые вопросы

Один человек потянет SaaS-платформу?
Партнёрская B2B-платформа с мультитенантностью, биллингом, многоуровневой партнёрской структурой и обменом с amoCRM и Битрикс24 собрана мной соло, от скелета до прода, и работает. Кейс на сайте — обезличенный, по договорённости с заказчиком. Ограничение у соло-формата другое и его стоит знать заранее: я беру один проект за раз, поэтому вопрос не в сложности, а в том, свободен ли слот.
Сколько занимает запуск?
Первая рабочая версия — недели, а не кварталы, но «рабочая версия» и «полный продукт» это разные вещи. За 2 недели выходит ядро: регистрация, изоляция данных, один сквозной сценарий и ручное подключение клиентов. Самообслуживание, автоматический биллинг и white-label добавляются дальше по одному куску. Точные цена и срок фиксируются на старте, до начала работы.
Как принимать деньги из России и из-за рубежа?
Это два разных контура, и совмещать их в одном юрлице обычно не получается. Под РФ — эквайринг российского банка, чеки по 54-ФЗ, счета и закрывающие документы для юрлиц. Под зарубежных клиентов — Stripe или аналог и другое юрлицо. Система умеет работать с обоими, но выбор схемы — вопрос к вашему бухгалтеру и юристу, и его лучше решить до разработки.
Чей код и доступы после релиза?
Ваши. Репозиторий, сервер, домены и все ключи оформляются на вашу компанию с самого начала — я работаю внутри ваших доступов, а не передаю их в конце. Технического замка нет: платформу можно в любой момент отдать другому подрядчику или своей команде.

Строишь что-то такое?

Расскажи, что строишь — отвечу в течение дня.

Обсудить проект

Разбор по теме

Все разборы