Отслеживание статуса заказа
Внимание
SDK позволяет отслеживать статус заказа на клиентской части вашего приложения. Однако мы рекомендуем настроить обработчик вебхука Успешный платеж и получать информацию о заказе на серверной части вашего приложения. Это позволит реализовать дополнительную валидацию совершенных покупок.
- отображение статуса заказа в интерфейсе приложения;
- пополнение баланса виртуальной валюты пользователя в результате успешной оплаты;
- начисление купленных предметов пользователю в результате успешной оплаты.
Логика отслеживания заказа включена в следующие методы SDK:
Cart.Purchase
— используется для покупки корзины;Cart.PurchaseFreeCart
— используется для приобретения бесплатных товаров через корзину;Catalog.Purchase
— используется для покупки товара в один клик;Catalog.PurchaseForVirtualCurrency
— используется для покупки товара за виртуальную валюту;Catalog.PurchaseFreeItem
— используется для приобретения бесплатного товара в один клик.
Справочная документация SDK
Узнайте больше о методах SDK и их параметрах.
Для обработки успешной покупки вам достаточно передать в параметре onSuccess
функцию, которая вызывается в случае перехода заказа в статус done
.
Методы покупки инкапсулируют в себе несколько методов отслеживания статуса заказа. Механизм отличается в зависимости от платформы, для которой собирается приложение:
- Для WebGL-сборок отслеживание осуществляется на основе
postMessage
событий виджета платежного интерфейса. Если от виджета платежного интерфейса приходит сообщение об изменении статуса заказа изменен наdone
илиcancel
, отслеживание прекращается.
- Для сборок для других платформ отслеживание осуществляется с помощью простых HTTP-запросов (short-polling) и запросов по протоколу WebSocket. Отслеживание выполняется по следующему алгоритму:
- Устанавливается веб-сокет-соединение.
- Если в течение 5 минут статус заказа не сменился на
done
илиcancel
, веб-сокет-соединение закрывается. Если статус заказа изменен наdone
илиcancel
, отслеживание прекращается. - Отслеживание статуса заказа продолжается с помощью short-polling. Раз в 3 секунды отправляется простой HTTP-запрос статуса заказа. Отслеживание прекращается если:
- статус заказа изменился на
done
илиcancel
; - в течение 10 минут статус заказа не сменился на
done
илиcancel
.
- статус заказа изменился на
Примечание
Если не удалось установить веб-сокет-соединение, статус заказа отслеживается с помощью short-polling.
onSuccess
методов покупки.Была ли статья полезна?
Спасибо за обратную связь!
Ваши мысли и идеи помогут нам улучшить ваш пользовательский опыт.Полезные ссылки
Последнее обновление:
22 января 2024
Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.