Маркетплейс для геймеров изнутри: что мы поняли, собирая GoRanked

Буст рейтинга, аккаунты и скины CS2 в одном месте, семь языков, шесть способов оплаты и чат, который отвечает ночью. Рассказываем, из каких решений складывается маркетплейс игровых услуг и где в нём настоящая сложность.

Команда YAVKA

· 4 мин чтения

GoRanked — наш собственный продукт. Мы развиваем его с октября 2025 года и проверяем на нём всё, что потом предлагаем клиентам: приём платежей в разных странах, обновления в реальном времени, поддержку с AI и сайт, который не проседает на пиках трафика. Снаружи маркетплейс аккаунтов и буста GoRanked похож на обычный магазин: каталог, карточка, корзина. Внутри это три разных бизнеса под одной крышей, и почти каждое архитектурное решение растёт именно из этой разницы.

Три витрины — три разных товара

Буст — это услуга, растянутая во времени. Цена зависит от стартового и желаемого рейтинга, сервера и опций, выполнение занимает несколько дней, и всё это время клиент хочет видеть прогресс.

Аккаунт — уникальный товар. Одно объявление — одна продажа, и принадлежит оно не нам, а конкретному продавцу. Значит, нужны резерв на время оплаты, передача данных для входа и разбор спора, если что-то пошло не так.

Скины CS2 — это тысячи позиций с ценой, float и качеством. Здесь всё решают фильтры, поэтому поиск вынесен в Meilisearch и не нагружает основную базу.

Общими у трёх витрин остаются кабинет клиента, оплата и поддержка. Жизненные циклы заказов мы сознательно не смешивали: попытка описать буст и аккаунт одной моделью «товар» ломается на первом же возврате.

Каталог аккаунтов Dota 2 на GoRanked: у каждого лота видны продавец, число его продаж и доля положительных отзывов.
Каталог аккаунтов Dota 2 на GoRanked: у каждого лота видны продавец, число его продаж и доля положительных отзывов.

Калькулятор вместо переписки

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

Калькулятор буста MMR: ранги, сервер, опции с наценками и итоговая цена со скидкой. Под кнопкой — подсказка, что заказ уйдёт на аукцион исполнителей.
Калькулятор буста MMR: ранги, сервер, опции с наценками и итоговая цена со скидкой. Под кнопкой — подсказка, что заказ уйдёт на аукцион исполнителей.

Семь языков — это не кнопка «перевести»

У каждой языковой версии свои адреса и разметка hreflang, а у английской есть ещё региональные варианты для США и Канады. Переводить приходится не только интерфейс, но и игровой словарь: «Герой» в русской версии, «Архонт» в украинской и Archon в английской — один и тот же ранг, и путать их нельзя ни в фильтрах, ни в заказе.

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

Шесть способов оплаты и одна сверка

Stripe, Whitepay, криптовалюта, Monobank, перевод по IBAN и оплата скинами. У каждого провайдера свои вебхуки, статусы и задержки, поэтому внутри они сведены к одной модели платежа. Возвраты проводятся автоматически, а комиссии сверяются каждый день — иначе расхождение в пару процентов замечаешь только в конце квартала.

Поддержка, которая не спит

Чат на сайте работает круглосуточно. Операторы отвечают из отдельного приложения Chat Desk на компьютере или телефоне, рядом с перепиской видят заказы клиента, а модель подсказывает ответ по базе знаний. Если клиент пишет на другом языке, переписку и черновик ответа можно перевести прямо в окне чата. Решает всегда человек: AI предлагает черновик, оператор отправляет. Об изменениях в заказе и балансе клиент узнаёт из Web Push, даже если вкладка закрыта.

Продавцы и исполнители — тоже пользователи

Маркетплейс живёт, пока на нём хотят работать. Бустеры и продавцы подают заявку через одну форму-мастер, проходят проверку и получают свой кабинет. Рейтинг продавца, число его продаж и доля положительных отзывов показаны прямо в каталоге — покупателю это объясняет больше, чем любой баннер «гарантия».

Путь одного заказа на GoRanked: от калькулятора до отзыва — пять систем, которые должны договориться между собой.
Путь одного заказа на GoRanked: от калькулятора до отзыва — пять систем, которые должны договориться между собой.

Что мы сделали бы так же

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

Стек, цифры и скриншоты админки — в кейсе GoRanked. А как всё это выглядит для игрока, проще всего посмотреть на самом goranked.gg.