Личный проект
CactusPlay — маркетплейс игр и внутриигровых предметов

Технологии
Ссылки
Услуги
- →Сооснование и fullstack-разработка
- →Скраперы на Node.js для PlayStation Store и Xbox Store
- →Витрина на WooCommerce с кастомными расширениями на PHP
- →Конвейер дифференциальной синхронизации цен и система оповещений
- →Интеграция платёжного шлюза и цифровой доставки
Результаты
- ✓Игровой маркетплейс с тысячами актуальных SKU по PS и Xbox
- ✓Автоматическая ежедневная синхронизация цен — ноль ручных обновлений
- ✓Система оповещений об изменении цен для поиска возможностей для акций
- ✓Интеграции платёжных шлюзов СНГ с доставкой цифровых ключей
Задача
Геймеры из СНГ, покупающие игры для PlayStation и Xbox, сталкивались с фрагментированным рынком: цены в официальных магазинах значительно различались по регионам, продавцы подарочных карт были разбросаны по форумам, и не было единого места, чтобы сравнить и купить. Стал сооснователем CactusPlay, чтобы закрыть этот пробел, — маркетплейса игр и внутриигровых предметов с реальными данными о ценах из официальных источников.
Ключевая техническая задача: PlayStation Store и Xbox Store не предоставляют публичных API. Чтобы удерживать тысячи SKU с точными ценами почти в реальном времени, пришлось строить слой скрапинга и синхронизации с нуля.
Исследование
Первичное исследование описало весь путь покупателя: найти игру, сравнить цену по регионам, купить самый дешёвый легальный ключ, активировать. Боль была на шагах сравнения и покупки. Продавцы существовали, но были разрознены; у покупателей не было сигналов доверия. Маркетплейс с согласованными данными о ценах, проверенными продавцами и удобным оформлением заказа мог захватить эту середину воронки.
Рассмотренные варианты
- Ручной ввод цен администраторами — отклонено. Не масштабируется; цены меняются ежедневно, во время распродаж — иногда ежечасно.
- Сторонний API агрегации цен — для PlayStation/Xbox в СНГ на тот момент такого не существовало.
- Кастомные скраперы на Node.js + витрина на WordPress/WooCommerce — выбрано. Скраперы дают реальное владение данными; WooCommerce даёт проверенный в бою коммерческий слой без создания оформления заказа с нуля.
Решение
Скраперы на Node.js, работающие по cron-расписанию, обращаются к эндпоинтам PlayStation Store и Xbox Store, разбирают ответ и отправляют обновления цен и наличия в WooCommerce через его REST API. WordPress + WooCommerce отвечают за витрину, корзину и интеграции платёжных шлюзов. Кастомные расширения на PHP обрабатывают сценарии подключения продавцов, которые WooCommerce не поддерживал из коробки.
Реализация
Построены скраперы для обеих витрин на основе обратной разработки — с управлением сессиями, переключением регионов и обходом анти-бот мер. Настроена система дифференциальных обновлений: обновления в WooCommerce запускают только изменившиеся цены, что удерживает нагрузку на API низкой. Система оповещений об изменении цен уведомляет администраторов, когда товар опускается ниже порога, позволяя принимать решения о таймингах акций.
Интегрированы платёжные шлюзы, поддерживающие способы оплаты СНГ. Кастомные расширения WooCommerce на PHP отвечали за цифровую доставку (коды ключей) и логику выплат продавцам. Развёрнуто на VPS с автоматическим деплоем через Git-хуки.
Результат
Тысячи игровых SKU синхронизировались ежедневно без единого ручного вмешательства в цены. Платформа обрабатывала реальные транзакции с момента запуска. Инфраструктура скрапинга надёжно работала весь период активной эксплуатации, пережив несколько редизайнов фронтенда PlayStation и Xbox Store за счёт точечных обновлений селекторов.
Открыт для работы по контракту
Я доступен для работы по контракту. Если у вас есть интересная идея проекта — запишитесь на звонок через Calendly.
Записаться на 30-минутный звонок