К содержимому
Все кейсы
  • Объявления
  • Авто и недвижимость
  • Mini App

AVILON.
Автомобили.
Аренда жилья.

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

2раздела каталога
2мессенджера
2 600+моделей в справочнике

От подачи до публикацииодин понятный путь

Каталог AVILON на компьютере: демонстрационные автомобили и квартиры
Главный экран AVILON на телефоне с поиском и разделами каталога
Интерфейс приложения. Объявления, цены и продавцы вымышлены
Проект
AVILON
Задача
Площадка объявлений
Наша работа
Интерфейс, backend, модерация, платежи
Формат
Web / Mini App

Найти машину.
Снять квартиру.
Разместить объявление.

У автомобилей и квартир разные характеристики, условия и документы. При этом посетителю нужен привычный каталог, а продавцу понятный путь к публикации.

Собрали оба направления в одной площадке. За интерфейсом работают справочники, проверка документов, статусы объявлений, платные сценарии и уведомления. Приложение рассчитано на браузер и запуск из мессенджера.

Два каталога

Автомобили и аренда квартир. У каждого раздела свои параметры поиска и поля объявления.

Подача объявления

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

Модерация

Проверка документов в отдельном кабинете. Решение модератора определяет следующий статус объявления.

Связь с продавцом

Избранное, сообщения, доступ к контактам и уведомления о событиях в Telegram и MAX.

Предложения перед глазами.
Детали в карточке.

Поиск начинается с категории и фильтров. Дальше человек открывает объявление, смотрит фотографии и условия, сохраняет его или переходит к связи с владельцем.

Скриншоты сняты с копии интерфейса. Объявления, продавцы, цены и условия демонстрационные

Каталог AVILON с подборкой продвигаемых предложений и обычными объявлениями на вымышленных данных

Автомобиль или квартира в одном приложении

Карточки показывают фотографию, цену, местоположение и тип продавца. Продвигаемые предложения вынесены в отдельную подборку, обычные объявления собраны ниже.

Один интерфейс для браузера и Mini App. Для входа из Telegram и MAX сервер проверяет подписанные данные запуска, а уведомления отправляет в выбранный мессенджер.

У каждого объявления
есть путь к каталогу

Форма собирает данные по шагам. Документы попадают в закрытую проверку, а решение модератора меняет статус. Платные сценарии дополнительно учитывают подтверждённую оплату.

  1. 01

    Выбрать категорию

    Автомобиль или квартира, собственник или перекупщик

  2. 02

    Добавить детали

    Характеристики, цена, контакты и фотографии

  3. 03

    Передать документы

    Набор зависит от категории и статуса продавца

  4. 04

    Пройти модерацию

    Одобрение, возврат на исправление или отказ

Документы для проверки
остаются за пределами каталога

Посетитель видит фотографии и описание предложения. Проверочные документы доступны модератору, а VIN автомобиля исключён из публичного ответа API.

Для файлов проверки предусмотрены шифрование, ограничения форматов и размера, а также удаление после решения или по сроку хранения. Публичные фотографии хранятся отдельно.

Каталог снаружи.
Связанные процессы внутри.

Основная сложность была в связях между этапами: кто подаёт объявление, какие данные открыты, как подтверждается оплата и какое событие нужно отправить пользователю.

Два раздела с разными правилами

Как решили

Сделали общую модель объявления и отдельные наборы характеристик для автомобилей и аренды. Марки, модели и города вынесли в справочники. Выбор марки ограничивает список моделей, а фильтры учитывают параметры выбранной категории.

Разделить публичные и закрытые данные

Как решили

Фотографии для каталога хранятся отдельно от документов для проверки. VIN отсутствует в публичном ответе API и доступен в защищённой схеме модератора. VIN и проверочные файлы шифруются при хранении. Документы удаляются после решения модерации или истечения срока хранения.

Связать заказ и подтверждение оплаты

Как решили

Реализовали интеграцию с ЮKassa для платных сценариев. Повторный запрос учитывает ключ идемпотентности. При уведомлении об оплате сервер повторно запрашивает состояние платежа у провайдера и применяет результат после подтверждения успешной оплаты.

Довести событие до пользователя

Как решили

Уведомления об оплате, модерации и сроках публикации сохраняются в базе как задания. Фоновый обработчик отправляет их в Telegram или MAX и повторяет неудачные попытки. Отдельные задачи следят за окончанием продвижения и публикации, очищают временные документы.

ReactTypeScriptFastAPIPostgreSQLSQLAlchemyTelegram / MAXЮKassaDocker

Два направления.
Одна площадка.

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

2

раздела объявлений

Продажа автомобилей и аренда квартир

2

мессенджера

Telegram и MAX: вход и уведомления

160+

марок в справочнике

169 марок в исходных данных проекта

2 600+

моделей в справочнике

2 678 моделей для автомобильного каталога

230+

городов в справочнике

236 уникальных названий городов

4

шага подачи

Категория, параметры, фото и документы

Состав справочников и возможности проверены по исходному коду на . Марки, модели и города посчитаны в данных проекта. Эти числа показывают охват справочников, а не количество активных объявлений или пользователей.

Пользователь ищет предложение или подаёт своё. Команда площадки получает отдельный процесс проверки, управление статусами и уведомлениями.

Следующий продукт

Нужна площадка
со своими правилами?

Продумаем каталог, кабинеты, проверку и оплату

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