Два каталога
Автомобили и аренда квартир. У каждого раздела свои параметры поиска и поля объявления.
Разработали площадку для продажи автомобилей и аренды квартир. Соединили каталог, подачу объявлений, модерацию, оплату и уведомления в одном приложении.
От подачи до публикацииодин понятный путь


О проекте
У автомобилей и квартир разные характеристики, условия и документы. При этом посетителю нужен привычный каталог, а продавцу понятный путь к публикации.
Собрали оба направления в одной площадке. За интерфейсом работают справочники, проверка документов, статусы объявлений, платные сценарии и уведомления. Приложение рассчитано на браузер и запуск из мессенджера.
Автомобили и аренда квартир. У каждого раздела свои параметры поиска и поля объявления.
Категория, характеристики, фотографии и документы. Пользователь проходит форму по шагам.
Проверка документов в отдельном кабинете. Решение модератора определяет следующий статус объявления.
Избранное, сообщения, доступ к контактам и уведомления о событиях в Telegram и MAX.
Интерфейс
Поиск начинается с категории и фильтров. Дальше человек открывает объявление, смотрит фотографии и условия, сохраняет его или переходит к связи с владельцем.
Скриншоты сняты с копии интерфейса. Объявления, продавцы, цены и условия демонстрационные

Карточки показывают фотографию, цену, местоположение и тип продавца. Продвигаемые предложения вынесены в отдельную подборку, обычные объявления собраны ниже.
Для автомобиля важны год, пробег, коробка и привод. Для квартиры: площадь, комнаты, этаж, залог и условия проживания. Структура карточки остаётся знакомой.
Один интерфейс для браузера и Mini App. Для входа из Telegram и MAX сервер проверяет подписанные данные запуска, а уведомления отправляет в выбранный мессенджер.
Публикация
Форма собирает данные по шагам. Документы попадают в закрытую проверку, а решение модератора меняет статус. Платные сценарии дополнительно учитывают подтверждённую оплату.
Автомобиль или квартира, собственник или перекупщик
Характеристики, цена, контакты и фотографии
Набор зависит от категории и статуса продавца
Одобрение, возврат на исправление или отказ
Посетитель видит фотографии и описание предложения. Проверочные документы доступны модератору, а VIN автомобиля исключён из публичного ответа API.
Для файлов проверки предусмотрены шифрование, ограничения форматов и размера, а также удаление после решения или по сроку хранения. Публичные фотографии хранятся отдельно.
Разработка
Основная сложность была в связях между этапами: кто подаёт объявление, какие данные открыты, как подтверждается оплата и какое событие нужно отправить пользователю.
Сделали общую модель объявления и отдельные наборы характеристик для автомобилей и аренды. Марки, модели и города вынесли в справочники. Выбор марки ограничивает список моделей, а фильтры учитывают параметры выбранной категории.
Фотографии для каталога хранятся отдельно от документов для проверки. VIN отсутствует в публичном ответе API и доступен в защищённой схеме модератора. VIN и проверочные файлы шифруются при хранении. Документы удаляются после решения модерации или истечения срока хранения.
Реализовали интеграцию с ЮKassa для платных сценариев. Повторный запрос учитывает ключ идемпотентности. При уведомлении об оплате сервер повторно запрашивает состояние платежа у провайдера и применяет результат после подтверждения успешной оплаты.
Уведомления об оплате, модерации и сроках публикации сохраняются в базе как задания. Фоновый обработчик отправляет их в Telegram или MAX и повторяет неудачные попытки. Отдельные задачи следят за окончанием продвижения и публикации, очищают временные документы.
Результат
Разработали каталог и кабинеты, связали подачу с модерацией, добавили платные сценарии и уведомления. Для автомобильного поиска подготовлены справочники марок и моделей, для выбора местоположения используется справочник городов.
Продажа автомобилей и аренда квартир
Telegram и MAX: вход и уведомления
169 марок в исходных данных проекта
2 678 моделей для автомобильного каталога
236 уникальных названий городов
Категория, параметры, фото и документы
Состав справочников и возможности проверены по исходному коду на . Марки, модели и города посчитаны в данных проекта. Эти числа показывают охват справочников, а не количество активных объявлений или пользователей.
Пользователь ищет предложение или подаёт своё. Команда площадки получает отдельный процесс проверки, управление статусами и уведомлениями.
Следующий продукт
Продумаем каталог, кабинеты, проверку и оплату