Маркетплейс для геймерів зсередини: що ми зрозуміли, будуючи 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.