В сделке три стороны: покупатель, продавец и площадка. Деньги не уходят продавцу, пока покупатель не подтвердил получение.
Коротко
- Оплата удерживается внутри системы до подтверждения заказа
- Новый тип товара и его фильтры администратор заводит без переписывания каталога
- Споры, чаты и балансы сидят в одной финансовой логике
Задача
Playnox собирали с нуля. Основатель пришёл с идеей маркетплейса игровых аккаунтов, валюты, предметов, скинов, ключей, подписок, услуг по прокачке и других цифровых товаров. Из идеи нужно было сделать торговую площадку со своей экономикой.
В обычном магазине платит покупатель, и на этом транзакция заканчивается. Здесь в каждой сделке покупатель, продавец и сама платформа. Нужно связать каталог, оплату, внутренний баланс, комиссию, удержание средств, вывод, чаты, споры и контроль администратора. Покупка — цепочка состояний от оплаты до расчёта с продавцом.
На рынке уже есть Playerok, GGsel, Starvell и другие площадки. Одна из гипотез Playnox — более понятные условия комиссии для продавцов при сохранении контроля над сделкой. Проектировать пришлось и интерфейс, и экономику.
Готового ТЗ и продуктовой модели не было. Начали с Design First: сначала правила бизнеса, потом код.


Решение
Разобрали привычные сценарии игровой торговли: каталоги конкурентов, покупку и продажу, балансы, споры, комиссии. Знакомые аудитории действия оставили там, где они уже работают. Изобретать «новую кнопку Купить» смысла не было.
Три контура: покупатель, продавец, администратор. Покупатель ищет, платит, пишет продавцу и подтверждает заказ. Продавец ведёт товары, заказы, баланс и вывод. Администратор держит экономику площадки и спорные случаи.

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

Баланс продавца — отдельная финансовая модель. Деньги могут быть в активной сделке, ждать завершения заказа или быть свободными к выводу. Ещё не заработанное не смешивается с тем, что уже можно вывести.
Гибкий каталог
Аккаунт, валюта, скин и услуга прокачки описываются разными полями. Жёстко зашитый каталог быстро стал бы потолком для бизнеса.

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

Комиссии устроены так же гибко. Владелец задаёт условия по категориям, проверяет экономику направления и делает предложение продавцам привлекательнее там, где нужно набрать предложение.
Состояния сделки
После дизайна проект ушёл в разработку. Сложность — заставить десятки состояний сделки не противоречить друг другу.

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

Каталог на фронте собирается из настроек администратора. Интерфейс не знает заранее все будущие категории: характеристики и фильтры приходят из структуры, которую завели в панели.
Чаты привязаны к заказу. Договорённости не уходят в сторонний мессенджер. Если открылся спор, переписка уже лежит в контексте для администрации.

Интерфейс сделали в светлой и тёмной теме. Игровая подача даёт Playnox свой характер, торговые сценарии оставили знакомыми для человека, который уже покупал на маркетплейсах.
Стек
- Nest.js
- Node.js
- REST
- Typescript
- Разработка бэкенда
Результат
Идея стала архитектурой маркетплейса со своей финансовой и операционной логикой.
В одной системе каталог, предложения, заказы, безопасная сделка, комиссии, балансы, вывод, чаты, споры и администрирование. Проектировали механизм, по которому внутри площадки двигаются товары, деньги и ответственность сторон.
Гибкие категории позволяют расти без постоянной перестройки ядра. Сегодня это аккаунты и валюта. Завтра новый тип цифрового товара добавляется настройкой.
Безопасная сделка и управляемые комиссии — основа модели. Playnox может конкурировать условиями для продавцов и при этом держать риск покупателя под контролем.
Проект в активной разработке: согласованная логика превращается в веб-сервис, интерактивная версия уже проводит основные сценарии. Клиент пришёл с идеей площадки. В разработку ушла система с правилами торговли, экономикой сделки и запасом на рост.
Как это выглядит

