Xsolla::Core
Classes
| Name | |
|---|---|
| class | BrowserCloseInfo |
| class | Error |
| interface | IInAppBrowser |
| interface | IInAppBrowserNavigationInterceptor |
| class | ImageLoader |
| class | LocaleUtil |
| class | MediaListItem |
| class | OrderContent |
| class | OrderData |
| class | OrderId |
| class | OrderItem |
| class | OrderStatus |
| class | ParseUtils |
| class | PayStationUI |
| class | PlatformSpecificAppearance |
| class | Price |
| class | PurchaseParams Purchase parameters. |
| class | RedirectPolicy |
| class | ShippingData |
| class | StoreItem |
| class | StoreItemAttribute |
| class | StoreItemGroup |
| class | StoreItemLimits |
| class | StoreItemPromotion |
| class | UserInfo |
| class | VirtualPrice |
| class | WebGlAppearance |
| class | XsollaWebBrowser |
Types
| Name | |
|---|---|
| enum class | AndroidActivityType { WebView, CustomTab, TrustedWebActivity} |
| enum class | DeviceType { Android, iOS} |
| enum class | SocialProvider
{ None, Facebook, GitHub, Google, Twitch, Twitter, Steam, Xbox, Discord, Vk, Naver, Kakao, Baidu, Battlenet, ChinaTelecom, Instagram, LinkedIn, Odnoklassniki, PayPal, Pinterest, QQ, Reddit, Vimeo, WeChat, Weibo, Yahoo, Amazon, Mailru, Microsoft, Msn, Yandex, YouTube, Apple} Social providers list for Login Social Auth . See full list in Login API documentation . |
| enum class | VirtualItemType { None, Consumable, NonConsumable, NonRenewingSubscription, VirtualCurrency} |
| enum class | ErrorGroup { CommonErrors, TokenErrors, LoginErrors, RegistrationErrors, ResetPasswordErrors, ItemsListErrors, ConsumeItemErrors, BuyItemErrors, CartErrors, BuyCartErrors, OrderStatusErrors, CouponErrors} |
| enum class | ErrorType { Undefined, UnknownError, NetworkError, InvalidToken, AuthorizationHeaderNotSent, MethodIsNotAllowed, NotSupportedOnCurrentPlatform, InvalidData, ProductDoesNotExist, PayStationServiceException, UserNotFound, CartNotFound, OrderNotFound, InvalidCoupon, PasswordResetNotAllowedForProject, RegistrationNotAllowedException, TokenVerificationException, UsernameIsTaken, EmailIsTaken, UserIsNotActivated, CaptchaRequiredException, InvalidProjectSettings, InvalidLoginOrPassword, InvalidAuthorizationCode, ExceededAuthorizationCodeAttempts, MultipleLoginUrlsException, SubmittedLoginUrlNotFoundException, IncorrectFriendState, TimeLimitReached} |
Types Documentation
enum AndroidActivityType
| Enumerator | Value | Description |
|---|---|---|
| WebView | A web-view based solution will be used for displaying the content. Pros: • seamless UX experience (no additional activity is opened over the app) • allows for screen orientation locking (n/a right now) • doesn’t have a standard toolbar at the top (e.g. CustomTabs variant) Cons:• might not support natively security oriented features like Google Wallet, etc. | |
| CustomTab | A Chrome Custom Tabs based solution will be used for displaying the content. Pros: • integrates natively with Google Wallet and other on-device payment services (auto-fill, etc) Cons: • opens in an overlay activity over the app • relies on Chrome and its versions when it comes to extra features support • doesn’t allow for screen orientation locking | |
| TrustedWebActivity | A Trusted Web Activity based solution is used for displaying the content. Pros: • integrates natively with Google Wallet and other on-device payment services (auto-fill, etc) • doesn’t hava a standard toolbar at the top (e.g. CustomTabs variant), when run in trusted mode• allows for screen orientation locking, when run in trusted mode• supports for a smooth transition into the content (uses a customized background and a fade-out effect for this purpose) Cons: • some features require the trusted mode to be active for them to work (see here
) |
enum DeviceType
| Enumerator | Value | Description |
|---|---|---|
| Android | ||
| iOS |
enum SocialProvider
| Enumerator | Value | Description |
|---|---|---|
| None | ||
| GitHub | ||
| Twitch | ||
| Steam | ||
| Xbox | ||
| Discord | ||
| Vk | ||
| Naver | ||
| Kakao | ||
| Baidu | ||
| Battlenet | ||
| ChinaTelecom | ||
| Odnoklassniki | ||
| PayPal | ||
| Vimeo | ||
| Yahoo | ||
| Amazon | ||
| Mailru | ||
| Microsoft | ||
| Msn | ||
| Yandex | ||
| YouTube | ||
| Apple |
Social providers list for Login Social Auth . See full list in Login API documentation .
enum VirtualItemType
| Enumerator | Value | Description |
|---|---|---|
| None | ||
| Consumable | ||
| NonConsumable | ||
| NonRenewingSubscription | ||
| VirtualCurrency |
enum ErrorGroup
| Enumerator | Value | Description |
|---|---|---|
| CommonErrors | ||
| TokenErrors | ||
| LoginErrors | ||
| RegistrationErrors | ||
| ResetPasswordErrors | ||
| ItemsListErrors | ||
| ConsumeItemErrors | ||
| BuyItemErrors | ||
| CartErrors | ||
| BuyCartErrors | ||
| OrderStatusErrors | ||
| CouponErrors |
enum ErrorType
| Enumerator | Value | Description |
|---|---|---|
| Undefined | Represents an undefined or uninitialized error state. Possible Causes: • The error type has not been set or is default-initialized. • The error was not mapped correctly from an unexpected API response. Recommended Actions: Inspect the raw error response payload, ensure SDK components are initialized, and check if the error is unhandled in mapping logic. | |
| UnknownError | Represents an error of unknown origin or type. Possible Causes: • A generic, unhandled exception occurred. • The backend returned an error code that has no specific mapping in the SDK. Recommended Actions: Check the error logs for additional context, report the issue to support if it persists, or handle it as a fallback generic error. | |
| NetworkError | Indicates a failure during network communication. Possible Causes: • No internet connection or DNS resolution failure. • Network timeout or connection dropped by the server. Recommended Actions: Verify the user’s internet connection, implement a retry mechanism with exponential backoff, or check service status. | |
| InvalidToken | The user authentication token is invalid, expired, or malformed. Possible Causes: • Token lifetime expired or user logged out. • The token was incorrectly formatted or modified. Recommended Actions: Force user re-authentication to obtain a fresh token, or check that the token is passed correctly in request headers. | |
| AuthorizationHeaderNotSent | The HTTP request is missing the required authorization header. Possible Causes: • The SDK attempted to call a secured API endpoint without attaching the authorization token. Recommended Actions: Ensure the user is logged in before calling this endpoint, or verify the request interceptor attaches the Authorization header. | |
| MethodIsNotAllowed | The requested HTTP method is not allowed by the endpoint. Possible Causes: • The SDK sent a POST request to a GET-only endpoint. • The backend API has been updated or restricted. Recommended Actions: Check the API documentation to verify the allowed HTTP methods, and inspect custom API calls or SDK version compatibility. | |
| NotSupportedOnCurrentPlatform | The requested operation or SDK feature is not supported on the current target platform. Possible Causes: • Platform-specific APIs (such as certain payment options, login methods, or browser components) are invoked on an unsupported build target (e.g. WebGL vs. Mobile). Recommended Actions: Check platform support flags before executing the method, or provide an alternative implementation for the current platform. | |
| InvalidData | The request payload contains invalid, incomplete, or malformed data. Possible Causes: • Required fields are missing or data formats (e.g., email structure) are incorrect. • Field validation failed on either the client or server side. Recommended Actions: Validate client-side input parameters before sending the request, and inspect server-side validation error messages. | |
| ProductDoesNotExist | The requested product or item was not found in the catalog. Possible Causes: • Incorrect product SKU or ID provided. • The product has been deleted or deactivated in the Publisher Account. • The store catalog is not published. Recommended Actions: Double-check the SKU/ID matches the catalog in the Xsolla Publisher Account, and ensure the catalog is published and active. | |
| PayStationServiceException | An error occurred within the Pay Station payment service. Possible Causes: • Pay Station backend issues or invalid payment configuration. • Failed transaction initialization. Recommended Actions: Check the Xsolla service status, verify payment settings (such as project ID and payment methods) in the Publisher Account. | |
| UserNotFound | The specified user account could not be found. Possible Causes: • Incorrect username, email, or user ID provided during search, login, or inventory operations. Recommended Actions: Prompt the user to check their login credentials, or verify the user ID exists in the Xsolla Publisher Account database. | |
| CartNotFound | The specified shopping cart does not exist or has expired. Possible Causes: • The cart ID is invalid. • The cart has been deleted or expired due to inactivity. Recommended Actions: Create a new cart or verify the active cart ID before performing cart operations. | |
| OrderNotFound | The specified order does not exist or cannot be found. Possible Causes: • The order ID is invalid. • The order has been archived or expired. Recommended Actions: Check the order ID, verify the order status via Xsolla Publisher Account, or wait for the order creation webhook to complete. | |
| InvalidCoupon | The coupon code entered by the user is invalid, expired, or already used. Possible Causes: • Typo in the coupon code or coupon campaign expired. • Usage limit reached or coupon doesn’t apply to items in the cart. Recommended Actions: Prompt the user to verify the coupon code, check campaign dates, and ensure cart items meet coupon criteria. | |
| PasswordResetNotAllowedForProject | Password reset is not permitted or configured for the current project. Possible Causes: • Password reset functionality is disabled or misconfigured in the Xsolla Login project settings. Recommended Actions: Enable and configure password reset options in the Xsolla Publisher Account under Login settings. | |
| RegistrationNotAllowedException | User registration is not allowed for the project or is temporarily disabled. Possible Causes: • Registration settings are disabled in the Login project. • Restrictions prevent new signups. Recommended Actions: Enable user registration in the Login section of the Xsolla Publisher Account, or check registration filters. | |
| TokenVerificationException | Token verification failed on the server. Possible Causes: • Invalid signature or token tampering. • Mismatched encryption/decryption keys between the server and identity provider. Recommended Actions: Check Login project settings, verify public keys or client secret configured in the Xsolla Publisher Account. | |
| UsernameIsTaken | The chosen username is already registered. Possible Causes: • Another user has already registered with the exact username. Recommended Actions: Prompt the user to choose a different, unique username, or suggest variations of their input. | |
| EmailIsTaken | The chosen email address is already registered. Possible Causes: • A user account already exists with the provided email address. Recommended Actions: Prompt the user to log in instead, reset their password, or use a different email address. | |
| UserIsNotActivated | The user account is registered but not yet activated or verified. Possible Causes: • The user has not clicked the activation link sent to their email. Recommended Actions: Instruct the user to check their email for the activation link, or provide a button to resend the activation email. | |
| CaptchaRequiredException | A CAPTCHA verification is required to complete the operation. Possible Causes: • Too many failed login or registration attempts. • Security thresholds triggered on the backend. Recommended Actions: Implement and display a CAPTCHA widget in the user interface, and pass the CAPTCHA response token with the next request. | |
| InvalidProjectSettings | The SDK project configuration settings are invalid or missing. Possible Causes: • Missing Project ID, Login ID, or Merchant ID in XsollaSettings. • Mismatched credentials. Recommended Actions: Check and configure Xsolla project settings in the Unity Editor (Window > Xsolla > Edit Settings). | |
| InvalidLoginOrPassword | The login credentials (username/email or password) are incorrect. Possible Causes: • User typed the wrong password. • The username or email does not match any registered account. Recommended Actions: Notify the user of invalid credentials, and prompt them to retry or recover their password. | |
| InvalidAuthorizationCode | The authorization code is invalid or has expired. Possible Causes: • The OAuth2/OIDC authorization code has already been exchanged or modified. • The authorization code has timed out. Recommended Actions: Re-initiate the OAuth2 authorization flow to obtain a new authorization code. | |
| ExceededAuthorizationCodeAttempts | The maximum number of attempts to use or request authorization codes has been exceeded. Possible Causes: • Too many consecutive failed attempts to exchange authorization codes. • Requesting authentication too frequently within a short period. Recommended Actions: Rate-limit requests, inform the user to wait before attempting again, or implement a cooldown timer. | |
| MultipleLoginUrlsException | Multiple login URLs are configured or resolved, leading to ambiguity. Possible Causes: • Conflicting redirect or callback URL configurations in the Login project settings. Recommended Actions: Check and clean up the callback/redirect URLs in the Xsolla Publisher Account under Login settings. | |
| SubmittedLoginUrlNotFoundException | The submitted login or redirect URL was not found in the allowed configurations. Possible Causes: • The URL passed by the client is not registered in the whitelist of redirect URLs in the Publisher Account. Recommended Actions: Add the requested redirect/callback URL to the allowed list in the Login project settings on the Xsolla Publisher Account. | |
| IncorrectFriendState | The social/friend operation cannot be performed due to the current relationship status. Possible Causes: • Attempting to accept a request when no pending request exists. • Attempting to block a user who is already blocked. Recommended Actions: Refresh the user’s friend list and state before performing friendship actions, and validate state transitions. | |
| TimeLimitReached | The operation timed out or reached its maximum allowed time. Possible Causes: • Network latency was too high. • A long-running process (like checking order status) did not complete in time. Recommended Actions: Retry the operation, increase timeout duration if appropriate, or check the status asynchronously later. |
Was this article helpful?
Thank you for your feedback!
We’ll review your message and use it to help us improve your experience.Found a typo or other text error? Select the text and press Ctrl+Enter.