Pre-built native SDKs for integrating in-game payments into your Windows app via Xsolla Pay Station.
See exactly how payments work before writing a single line of code. The SDK Explorer lets you walk through authentication, catalog loading, purchasing, and finalization — all in an interactive environment.
- SDK Explorer — interactive demo
- SDK Documentation — full integration guide
Xsolla Mobile SDK for Windows provides native C# and C++ libraries for in-game purchases via Xsolla Pay Station. Both SDKs share the same backend infrastructure and offer equivalent functionality.
Key features:
- 1000+ payment methods across 200+ geographies
- 130+ currencies including local and alternative payment methods
- Built-in anti-fraud protection
- 25+ languages supported out of the box
- Player authentication (Xsolla Login widget, social login, custom tokens)
- Product catalog and virtual items
| SDK | Platforms | Distribution |
|---|---|---|
| C# SDK | .NET 6, 7, 8, 9 + .NET Standard 2.1 | com.xsolla.sdk-csharp-{version}.zip |
| C++ SDK | Windows x64 (MSVC) | com.xsolla.sdk-cpp-{version}.zip (coming soon) |
Download the latest release ZIP from GitHub Releases.
- .NET 6.0 or later (or .NET Standard 2.1 compatible runtime)
- Download
com.xsolla.sdk-csharp-{version}.zipfrom Releases - Extract the ZIP — DLLs are organized by framework under
lib/ - Reference the
XsollaCSharpSDK.dllmatching your target framework
using Xsolla.SDK.Common;
using Xsolla.SDK.Store;
var settings = XsollaClientSettings.Builder.Create()
.SetProjectId(YOUR_PROJECT_ID)
.SetLoginId("YOUR_LOGIN_ID")
.Build();
var configuration = XsollaClientConfiguration.Builder.Create()
.SetSettings(settings)
.SetSandbox(true)
.Build();
var storeClient = XsollaStoreClient.Builder.Create()
.SetConfiguration(configuration)
.AddProducts(new[] { "booster_max_1", "key_1", "premium_3" })
.SetOnRestore(OnPurchase)
.Build();storeClient.Initialize((products, error) =>
{
if (error != null)
{
Console.WriteLine($"Init failed: {error.message}");
return;
}
foreach (var product in products)
Console.WriteLine($"{product.sku}: {product.formattedPrice}");
});storeClient.PurchaseProduct("key_1", (purchasedProduct, error) =>
{
if (error != null)
{
Console.WriteLine($"Purchase failed: {error.message}");
return;
}
// Validate the purchase
storeClient.ValidatePurchase(purchasedProduct.ToReceipt(), (success, err) =>
{
if (success)
{
// Award the item, then consume
storeClient.ConsumeProduct(
purchasedProduct.sku,
purchasedProduct.quantity,
purchasedProduct.transactionId,
consumeError => { /* handle */ });
}
});
});Coming soon.
Apache License 2.0 — Copyright 2026 Xsolla Inc.
