Track order status
Notice
The SDK allows you to track order status on the client side of your application. However, we recommend setting up a Payment webhook handler to receive order information in the back end of your application. This allows you to implement additional validation of completed purchases.
After a user makes a purchase, your application can perform the following actions:
- show the order status in the application UI
- credit a user’s balance after a successful payment
- grant the purchased items after a successful payment
To implement the logic of these actions, track the order status using the CheckPendingOrder SDK method. Pass the following parameters to the method:
AuthToken— user authorization tokenOrderId— order ID received from the purchase via the shopping cart, one-click purchase, or purchase for virtual currencySuccessCallback— callback in case the order moves to thedonestatusErrorCallback— callback in case Xsolla server returns an error
This method encapsulates several methods for tracking the order status. Tracking is performed according to the following algorithm:
- A web socket connection is established.
- If the order status hasn’t changed to
doneorcancelwithin 5 minutes, the web socket connection is re-established. If the order status is changed todoneorcancel, tracking stops.
Note
If a web socket connection fails, the order status is tracked using short-polling. Once every 3 seconds, a simple HTTP order status request is sent. Tracking stops if:
- order status changed to
doneorcancel - the order status does not change to
doneorcancelwithin 10 minutes
CheckOrder SDK method.Was this article helpful?
Thank you for your feedback!
We’ll review your message and use it to help us improve your experience.Useful links
Last updated:
October 31, 2025
Found a typo or other text error? Select the text and press Ctrl+Enter.