e-GTO.ru: платформа онлайн-записи на техосмотр с нуля
Двусторонний рынок с нуля: 3 904 пункта техосмотра на одной карте, онлайн-запись с подтверждением телефона, кабинеты владельцев и админка платформы, кошельки и комиссия. 57 дней от первой строки кода до работающего сервиса.
Результат в цифрах
Стек проекта
Исходная ситуация
Автовладелец ищет «техосмотр рядом» и попадает на десятки разрозненных сайтов отдельных пунктов: звонит, уточняет цену и свободное время. Часть сайтов не обновлялась годами — телефон не отвечает, адрес устарел.
Пункт техосмотра — небольшой локальный бизнес. Клиентов он получает сарафанным радио и платной рекламой, но размещение в агрегаторах стоит денег вперёд и не гарантирует обращений. Плюс постоянная проблема — заявки, по которым человек не пришёл.
Что сделали
Собрали платформу, которая сводит обе стороны в одном месте: каталог из 3 904 пунктов на карте с фильтрами по городу и категориям транспорта, онлайн-запись по реальным свободным слотам, подтверждение телефона кодом.
Для владельцев пунктов сделали личный кабинет на 21 экран — обращения, кошелёк, счета, реклама, статистика, отзывы, интеграции с CRM. Для платформы — админку на 23 экрана: модерация карточек, тарифы по регионам, финансы, аналитика, рассылки, журнал действий.
Платформа работает как двусторонний рынок с деньгами внутри: комиссия 20 % списывается с кошелька владельца только за подтверждённое обращение, контакты на карточке видны при оплаченном периоде, для сетей предусмотрены счета с закрывающими документами.
Заявки автоматически уходят владельцу в Bitrix24 или на его сервер по API — с шестью попытками повтора при сбоях и журналом доставки. Каждая заявка подтверждена кодом: мусорных обращений пункт не получает.
Автовладелец ищет техосмотр звонками, пункт ТО покупает рекламу без гарантии результата. e-GTO.ru свёл обе стороны в одном сервисе: 3 904 пункта на карте, запись за пару минут, оплата за подтверждённое обращение. Разбираем, как двусторонний рынок с биллингом и двумя кабинетами собрали с нуля за 57 дней.
Что это за продукт
e-GTO.ru — федеральная платформа онлайн-записи на технический осмотр автомобилей. Это не сайт-визитка и не лендинг: внутри три роли с разными интерфейсами, собственный биллинг, приём платежей, интеграции с внешними сервисами и юридически значимый документооборот.
Работает как два рынка в одном окне. С одной стороны — люди, которым нужно пройти техосмотр. С другой — пункты ТО, которым нужны клиенты. До появления сервиса обе стороны искали друг друга вслепую.
Проблема с двух сторон
Автовладелец
Человек ищет «техосмотр рядом» и попадает на десятки разрозненных сайтов отдельных пунктов: звонит, уточняет цену и свободное время. Часть сайтов не обновлялась годами — телефон не отвечает, адрес устарел. Сравнить пункты между собой негде.
Владелец пункта ТО
Пункт техосмотра — небольшой локальный бизнес. Клиентов он получает сарафанным радио и платной рекламой. Размещение в агрегаторах стоит денег вперёд и не даёт гарантии обращений. Отдельная боль — «мусорные» заявки: человек оставил номер и не пришёл, а пункт потратил на него время.

Как работает сервис
Сценарий автовладельца
- Находит. Из поиска («техосмотр в Твери») попадает сразу на страницу конкретного пункта или на карту страны.
- Выбирает. Двигает карту — список обновляется под видимой областью. Фильтрует по городу и категории транспорта.
- Смотрит карточку. Адрес, режим работы, категории, фотографии, отзывы и ответы владельца, рейтинг.
- Записывается. Выбирает дату и время из реальных свободных слотов: шаг 30 минут, запись доступна на 60 дней вперёд.
- Подтверждает телефон. Вводит имя и номер, получает код. Это отсекает случайные заявки.
- Получает подтверждение. Заявка мгновенно уходит владельцу пункта.

Сценарий владельца пункта
Регистрируется по номеру телефона с подтверждением кодом, находит свой пункт в каталоге и подтверждает права на карточку через модерацию — это защита от захвата чужой точки. Первое пополнение счёта автоматически включает приём обращений: комиссия списывается только за подтверждённые заявки. Дальше — работа с обращениями, кошелёк, счета для юрлиц, платное размещение контактов, статистика, ответы на отзывы и подключение CRM.
60 дней
запись открыта вперёд от текущей даты
30 минут
шаг свободных слотов в графике пункта
11
категорий транспорта в фильтрах каталога
2
кабинета: владельца пункта и администратора платформы
Бизнес-модель
Владелец пункта не платит за размещение карточки — только за результат. Это снимает главное возражение малого бизнеса: «заплатил вперёд и не получил клиентов».
- Комиссия с обращений — 20 % от стоимости услуги. Списание с кошелька в момент, когда владелец получил подтверждённое обращение.
- Платное размещение контактов — от 1 000 ₽/мес в регионах, 3 000 ₽/мес в Москве и Санкт-Петербурге. Год — по цене десяти месяцев, с автопродлением.
- Счета для юрлиц — безналичная оплата с закрывающими документами для сетей пунктов.
Экономика платформы сходится на подписках и комиссии, а не на рекламных бюджетах: трафик дают карточки пунктов, которые индексируются поисковыми системами.
1 500 – 5 000 ₽
расходы на инфраструктуру в месяц: серверы, база, хранилище, почта
660 000 ₽
выручка в месяц при 300 владельцах и 1 500 подтверждённых обращениях
≈ 21 месяц
возврат вложений в разработку при такой выручке
Как строили: два этапа вместо одного
Проект не делался «одним заходом». Первый месяц ушёл на проверку спроса, второй — на промышленную пересборку.
Этап 1. Быстрый запуск (28 июля — 27 августа)
Первая версия — компактный сайт на чистом PHP: карта, каталог, карточки, форма записи, письма владельцам. Данные хранились в Excel-файле, базы данных не было. Такой подход дал ответы на главные вопросы: какие города нужны, как владельцы реагируют на модель, какая конверсия из просмотра в заявку.
Результат этапа: работающий сайт, первые обращения, понимание реальных требований бизнеса.
Этап 2. Промышленная пересборка (28 августа — 23 сентября)
К концу августа стало ясно: на Excel-файле платформа не выдержит роста. Данные правились вручную, каждый владелец требовал ручной работы, монетизации не было вовсе.
Перед разработкой провели аудит кода — построчно разобрали первую версию и зафиксировали слабые места (в том числе фальшивые данные: рейтинги и отзывы генерировались случайными числами). Написали техническое задание на 1 121 строку требований, утвердили шесть архитектурных решений и разбили работу на десять спринтов.
Дальше — 26 календарных дней плотной работы. Спринты шли параллельно: пока бэкенд делал биллинг, фронтенд собирал кабинет; пока инфраструктура настраивала деплой, QA проверял готовые модули.
Хронология проекта
Что изменилось после пересборки
| Параметр | Первая версия | Промышленная платформа |
|---|---|---|
| Хранение данных | Excel-файл, правки вручную | PostgreSQL + PostGIS: 49 таблиц, 81 миграция |
| Технологии | Чистый PHP | Laravel 12, Nuxt 3, TypeScript, Docker |
| Автотесты | 0 | 2 519 тестов, 0 ошибок статического анализа |
| Монетизация | Отсутствовала | Кошельки, комиссия 20 %, счета, подписки |
| Управление | Через программиста | Админка на 23 экрана: модерация, тарифы, аналитика |
| Данные о пунктах | Рейтинги генерировались случайными числами | Реальные отзывы, ответы владельцев, жалобы |
| Документы | Не было | Политика по 152-ФЗ, оферта, журнал согласий с версиями |
Что именно сделано
Публичная часть
Девять публичных экранов: главная с картой и списком, страницы пунктов, форма записи, партнёрский лендинг, раздел «Владельцам», обратная связь, документы.
- Каталог с картой, фильтрами, поиском и бесконечной прокруткой списка.
- Серверная отрисовка страниц пунктов ТО — их видят поисковые системы, время ответа 0,28 секунды.
- Онлайн-запись со свободными слотами по реальному графику работы пункта.
- Подтверждение телефона через виджет верификации — во всех формах: заявка, отзыв, обращение, смена номера.
- Юридический блок: политика обработки данных по 152-ФЗ, оферта, условия, реквизиты оператора.


Кабинет владельца пункта — 21 экран
Привязка карточки через модерацию, обращения со статусами и историей, кошелёк с пополнением картой и счетами для юрлиц, платное размещение контактов с автопродлением, статистика просмотров, отзывы с ответами и жалобами, интеграции с CRM, настройки и поддержка.
Админка платформы — 23 экрана
Дашборд, аналитика заработка с прогнозом, модерация карточек с построчным сравнением «было / стало», разбор претензий между владельцами, сетка тарифов по 89 регионам и 11 категориям с версионированием, финансы, пользователи и права доступа, журнал действий администраторов, рассылки и обращения.


Ключевые решения и почему именно так
Laravel и Nuxt вместо «продолжить на PHP»
В первой версии около 3 800 пунктов лежали в Excel-файле. Добавить новый пункт, посчитать комиссию, принять платёж — всё это требовало программиста. Промышленный фреймворк с настоящей базой данных и административным интерфейсом позволил заказчику управлять продуктом самому.
PostgreSQL с расширением PostGIS
Пункты ТО — это точки на карте. Обычная база ищет «все пункты в радиусе 5 км» медленно. PostGIS делает это мгновенно за счёт пространственных индексов: когда пользователь двигает карту, список пересчитывается на лету.
Карточки рендерятся на сервере
Страницы пунктов — главный источник бесплатного трафика из поиска. Поисковые системы плохо читают сайты, которые собираются в браузере, поэтому карточки отдаются готовым HTML: 0,28 секунды на ответ, страницы попадают в индекс.
Подтверждение телефона обязательно
Главная боль владельца пункта — мусорные заявки. Если заявку можно отправить с любого номера без проверки, пункт получает «левые» обращения и перестаёт доверять платформе. Поэтому подтверждение кодом встроено во все формы.
Комиссия, а не подписка
Модель «плати за размещение» не работает с малым бизнесом: владелец не готов платить вперёд за непонятный результат. Комиссия за подтверждённое обращение снимает риск для него и одновременно мотивирует платформу приводить качественный трафик — нет обращений, нет заработка.
Инженерная часть — то, что обычно не видно
- Архитектура. Код разделён на слои: бизнес-логика не зависит от базы данных и фреймворка. Архитектурный тест автоматически запрещает слою бизнес-правил обращаться к инфраструктуре.
- Деньги в копейках. Все суммы — целые числа, ошибки округления исключены.
- 2 519 автотестов. 1 209 на бэкенде и 1 310 на фронтенде, плюс строгая проверка типов без единой ошибки.
- Полный цикл тестирования. Девять уровней проверки, 68 найденных и устранённых дефектов до выпуска.
- Документация. 62 документа: архитектура, эксплуатация, восстановление после сбоя, описание API, регламенты.
- Интеграции. Восемь внешних сервисов: карты, проверка адресов и телефонов, платежи, SMS-подтверждение, почта, CRM.
- Безопасное обновление. Каждая версия собирается в отдельный образ, старая остаётся точкой отката; выкат идёт без остановки сервиса.
Как устроена система
Код разложен по слоям: бизнес-логика не знает, какая под ней база и фреймворк. Деньги, пороги биллинга и политики доступа проверяются тестами отдельно от всего приложения, а архитектурный тест не даёт слою бизнес-правил обратиться к инфраструктуре напрямую.
196 412
строк кода — приложение, тесты и конфигурация
219
методов API и 49 таблиц базы данных
2 519
автотестов: 1 209 на бэкенде, 1 310 на фронтенде
1 047
изменений за проект, сведённых в 134 набора правок
62
документа: архитектура, эксплуатация, восстановление, API
10
сервисов в Docker: приложение, база, кэш, очередь, почта, хранилище
Результаты
Заказчик получил действующий бизнес-инструмент, а не «сайт»: платформа принимает деньги, продаёт размещение, сама собирает клиентов из поиска и управляется из браузера без программиста.
- 3 904 пункта техосмотра в каталоге по 89 регионам.
- 53 экрана интерфейса: админка, кабинет владельца, публичная часть.
- 219 методов API и 49 таблиц базы данных.
- 0,28 секунды на отдачу страницы пункта.
- 2 519 автотестов и ноль ошибок статического анализа.
- 26 дней на промышленную версию при нормативной трудоёмкости 4 720 человеко-часов.
Трудоёмкость и сроки
Объём работ — 4 720 человеко-часов, или 674 человеко-дня. Команда из шести человек при обычном графике 10:00–18:00 закрывала бы такой объём 5,2 месяца. Работа шла параллельными потоками поверх готового технического задания, поэтому промышленная версия вышла за 26 календарных дней.
4 720
человеко-часов трудоёмкости проекта
674
человеко-дня — 31,5 человеко-месяца работ
12,4 – 14,2 млн ₽
стоимость такого сервиса по рыночным нормам: команда из шести человек
8 – 18 млн ₽
разброс оценки в зависимости от формата команды: агентство, студия или фриланс-команда
Честно о точках роста
Проект не «идеален и готов» — у него есть понятный резерв развития, и заказчик знает о нём:
- SMS-рассылки. Канал у провайдера открыт не полностью: подтверждение идёт через виджет, для массовых уведомлений нужно расширение прав.
- Мобильное приложение. Сейчас это мобильная версия сайта; приложение — следующий шаг для удержания.
- Уникальность описаний. Часть карточек унаследована из старой базы с типовыми описаниями — рост уникальности даст дополнительный трафик.
- Другие CRM. Поддержаны Bitrix24 и универсальный API; amoCRM и 1С — в бэклоге.
Что забрали в другие проекты
- Сначала проверить спрос, потом строить промышленно. Месяц на простом стеке дал ответы, которые не получить из брифа: какие города нужны, как реагируют владельцы, какая конверсия.
- ТЗ и архитектурные решения до кода. 1 121 строка требований и шесть зафиксированных решений убрали этап «переделываем, потому что не подумали».
- Параллельные потоки вместо последовательных. Именно они дали 26 дней там, где по нормам нужно 5,2 месяца.
- Платить за результат, а не за размещение. Для малого бизнеса это единственная работающая модель входа.
Частые вопросы
Сколько стоит разработка такого сервиса?
По рыночным нормам — 4 720 человеко-часов, или 12,4–14,2 млн ₽ при команде из шести человек. Агентство «под ключ» оценило бы такой объём в 16–18 млн ₽, фриланс-команда — в 8–9,5 млн ₽. Сервис такого класса отличается от «сайта за 300 тысяч» наличием биллинга, двух кабинетов, подтверждения телефона и 2 519 автотестов.
Сколько времени занимает разработка маркетплейса?
Нормативный срок для команды из шести человек — около 5,2 месяца. В этом проекте промышленная версия заняла 26 календарных дней: работа шла параллельными потоками, поверх готового технического задания и зафиксированной архитектуры.
Зачем маркетплейсу подтверждение телефона?
Это защита от мусорных заявок — главной боли владельцев пунктов. Если заявку можно отправить с любого номера, пункт получает «левые» обращения и перестаёт доверять платформе. Подтверждение кодом встроено во все формы: заявку, отзыв, обращение, смену номера.
Почему карточки пунктов рендерятся на сервере?
Страницы пунктов — основной источник бесплатного трафика из поиска. Поисковые системы плохо читают сайты, которые собираются в браузере, поэтому карточки отдаются готовым HTML: время ответа 0,28 секунды, страницы индексируются, а платформа не покупает трафик.
Проект сделан в рамках услуг «Создание сайтов под ключ» и «Программирование и доработка сайтов». Если у вас похожая задача — двусторонний рынок, личный кабинет или биллинг — напишите нам, посчитаем объём.
Услуги этого кейса
Создание сайтов под ключ
Условия на странице
Программирование и доработка сайтов
от 2 000 ₽
SEO-продвижение на фреймворке
от 40 000 ₽
Другие кейсы
Интеграция с Mindbox: единый профиль клиента вместо трёх баз
У ритейлера жили три несвязанные базы клиентов: сайт, 1С и офлайн. Мы провели очистку данных, написали собственный PHP SDK для…
Лендинг Kingster: презентация линейки снеков для партнёров
Производителю снеков нужна была витрина продукта для переговоров с дистрибьюторами: быстро, ярко, с интерактивной подачей линейки вкусов. Собрали промо-лендинг от…
Перенос «Мечты Гурмана» с самописной CMS на 1С-Битрикс
Магазин деликатесов работал на самописной CMS, которая не тянула развитие. Перенесли каталог целиком — товары, цены, остатки, бейджи и бренды…
Хотите такой же результат?
Начнем с аудита точек роста — покажем, где у вашего сайта утекает трафик.
Получить аудит точек роста →