INITIALIZATION
Initialization
After configuring, the Xsolla SDK for Windows needs to be initialized and connected to Xsolla services.
- C#
- C++
var storeClient = XsollaStoreClient.Builder.Create()
.SetConfiguration(configuration)
.SetOnRestore((item, error) => {
if (error != null)
{
// handle error
return;
}
// handle delayed purchased item
})
.AddProducts(productIds)
.AddProduct("product1")
.AddProduct("product2")
.AddProduct("product3")
.AddProduct("product4")
.Build();
storeClient.Initialize((products, error) =>
{
if (error != null)
{
// handle error
return;
}
// products contains all requested products
});
auto products = std::vector<std::string>{
"product1",
"product2",
"product3",
};
auto client = new CXsollaStoreClient(configuration, products, [](std::shared_ptr<CXsollaStoreClientPurchasedProduct> product, std::shared_ptr<CXsollaStoreClientError> error) {
std::cout << "C++ Restore successful for product: " << product->GetSku() << "\n";
});
client->Initialize([client](std::vector<std::shared_ptr<CXsollaStoreClientProduct>> products, std::shared_ptr<CXsollaStoreClientError> error) {
if (error == nullptr) {
std::cout << "C++ Initialization successful.\n";
} else {
std::cout << "C++ Initialization failed with error code: " << error->GetMessage() << "\n";
}
});
The SDK loads only Virtual Items from your Xsolla Catalog — Virtual Currency, Bundles, and other catalog types are not returned.