← Назад ко всем проектам

Личный проект

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

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

Технологии

WordpressPHPE-commerceMarketplaceProjectFrontendStartupNodeJS

Услуги

  • Сооснование и fullstack-разработка
  • Скраперы на Node.js для PlayStation Store и Xbox Store
  • Витрина на WooCommerce с кастомными расширениями на PHP
  • Конвейер дифференциальной синхронизации цен и система оповещений
  • Интеграция платёжного шлюза и цифровой доставки

Результаты

  • Игровой маркетплейс с тысячами актуальных SKU по PS и Xbox
  • Автоматическая ежедневная синхронизация цен — ноль ручных обновлений
  • Система оповещений об изменении цен для поиска возможностей для акций
  • Интеграции платёжных шлюзов СНГ с доставкой цифровых ключей

Задача

Геймеры из СНГ, покупающие игры для PlayStation и Xbox, сталкивались с фрагментированным рынком: цены в официальных магазинах значительно различались по регионам, продавцы подарочных карт были разбросаны по форумам, и не было единого места, чтобы сравнить и купить. Стал сооснователем CactusPlay, чтобы закрыть этот пробел, — маркетплейса игр и внутриигровых предметов с реальными данными о ценах из официальных источников.

Ключевая техническая задача: PlayStation Store и Xbox Store не предоставляют публичных API. Чтобы удерживать тысячи SKU с точными ценами почти в реальном времени, пришлось строить слой скрапинга и синхронизации с нуля.

Исследование

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

Рассмотренные варианты

  1. Ручной ввод цен администраторами — отклонено. Не масштабируется; цены меняются ежедневно, во время распродаж — иногда ежечасно.
  2. Сторонний API агрегации цен — для PlayStation/Xbox в СНГ на тот момент такого не существовало.
  3. Кастомные скраперы на 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-минутный звонок