Отслеживание статуса заказа
Внимание
SDK позволяет отслеживать статус заказа на клиентской части вашего приложения. Однако мы рекомендуем настроить обработчик вебхука Успешный платеж и получать информацию о заказе на серверной части вашего приложения. Это позволит реализовать дополнительную валидацию совершенных покупок.
После совершения покупки в вашем приложении могут выполняться следующие действия:
- отображение статуса заказа в интерфейсе приложения;
- пополнение баланса виртуальной валюты пользователя в результате успешной оплаты;
- начисление купленных предметов пользователю в результате успешной оплаты.
Чтобы реализовать логику этих действий, отслеживайте статус заказа с помощью метода SDK OrderTracker.checkPendingOrder . Передайте в метод следующие параметры:
accessToken— авторизационный токен пользователя;orderId— ID заказа, полученный в результате покупки через корзину, покупки в один клик или покупки за виртуальную валюту;onSuccess— функция, которая вызывается в случае перехода заказа в статусdone;onError— функция, которая вызывается в случае, если сервер Xsolla возвращает ошибку.
Этот метод инкапсулирует в себя несколько методов отслеживания статуса заказа. Отслеживание выполняется по следующему алгоритму:
- Устанавливается веб-сокет-соединение.
- Если в течение 5 минут статус заказа не сменился на
doneилиcancel, веб-сокет-соединение пересоздается. Если статус заказа изменен наdoneилиcancel, отслеживание прекращается.
Примечание
Если не удалось установить веб-сокет-соединение, статус заказа отслеживается с помощью short-polling. Раз в 3 секунды отправляется простой HTTP-запрос статуса заказа. Отслеживание прекращается если:
- статус заказа изменился на
doneилиcancel; - в течение 10 минут статус заказа не сменился на
doneилиcancel.
XsollaOrders.checkOrder.Была ли статья полезна?
Спасибо за обратную связь!
Ваши мысли и идеи помогут нам улучшить ваш пользовательский опыт.Полезные ссылки
Последнее обновление: 28 октября 2025Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.