Заказы, возвраты и доставка
Когда игрок покупает товар, создаётся заказ. Заказ проходит через статусы от создания до выдачи предметов.
Жизненный цикл заказа
| Статус | Значение |
|---|---|
PENDING | Создан, ожидает оплаты |
PAID | Оплачен, ожидает выдачи |
DELIVERING | Выдаётся (в процессе RCON) |
DELIVERED | Полностью выдан ✅ |
PARTIALLY_DELIVERED | Часть предметов выдана, часть — нет |
CANCELLED | Отменён (игроком или системой) |
REFUNDED | Возврат средств |
FAILED | Ошибка выдачи |
Состав заказа
Каждый заказ содержит один или несколько товаров. По каждому товару видно:
- Название товара и выбранный вариант (если есть)
- Количество и цену
- Статус выдачи: ожидает / доставлен / ошибка
- Количество попыток выдачи и время последней
Типы заказов
Тип (kind) | Описание |
|---|---|
| storefront | Покупка товара с витрины |
| topup | Пополнение баланса магазина |
Возврат (refund)
Владелец может вернуть деньги за заказ:
- Админка → Заказы → выбрать заказ → «Возврат»
- Указать причину
- Средства возвращаются на баланс магазина игрока
Ограничения:
- Только для заказов в статусе
DELIVEREDилиPARTIALLY_DELIVERED - Возврат невозможен если товар уже использован (нет технической возможности отозвать предмет)
Redeliver (повторная выдача)
Если выдача не удалась (статус FAILED), можно запросить повторную:
- Админка → Заказы → заказ → «Повторить выдачу»
- Система повторно отправляет RCON-команды
- Счётчик попыток увеличивается
OrderDetailDrawer
В админке заказ открывается в боковой панели (drawer) с вкладками:
- Товары — список OrderItem с ценами и статусами
- Выдача — payload, попытки, ошибки
- Аудит — кто и когда менял заказ
Следующие шаги
- Игроки и кошелёк — управление игроками
- Серверы и RCON — как работает доставка