Purchase management

Learn about advanced setups from our how-tos.

How to set up payments via Steam

Notice
Use this how-to when working only with the Game Commerce asset.
Xsolla can act as a payment gateway when players pay for in-game purchases via Steam. In this case, you don’t need to integrate the Steam SDK or take into account the nuances of paying via Steam when setting up an in-game store.

To set up payments via Steam:

  1. Sign an additional agreement with Xsolla.

Note
Xsolla takes a reduced Revenue share when making payments via Steam. Check the details with your Account Manager.
  1. Set up the gateway for Steam in your Publisher Account.
  2. Set up native authentication via Steam.
  3. Open the Unity project.
  4. Click Window > Xsolla > Edit Settings in the main menu.
  5. In the Inspector panel, select Steam Gateway in the Payments field.

After changing the Unity project settings, the x-steam-userid header will be added to the payment token request.

Was this article helpful?
Thank you!
Is there anything we can improve? Message
We’re sorry to hear that
Please explain why this article wasn’t helpful to you. Message
Thank you for your feedback!
We’ll review your message and use it to help us improve your experience.
Hide

How to work with coupons

Notice

Use this how-to when working only with the following assets:

  • Game Commerce
  • Cross-Buy

Cross-Buy asset will be deprecated in April 2022. You can continue to use it, but it will not be updated and supplemented with new features. It is recommended to switch to the Game Commerce asset. It contains all the classes and methods needed to work with Xsolla products.

To get new users to your application and increase sales, you can implement coupon promotions. When redeeming a coupon, the user may receive one of the following rewards:
  • virtual currency package
  • game key
  • virtual item

For details on the features and limitations of coupon promotions, see the In-Game Store guide.

To work with coupon promotions:

  1. Complete the settings in Publisher Account following to the instructions for setting up promotional campaigns with coupons.
  2. Implement in-game logic using the following SDK methods:

    • GetCouponRewards — gets a list of items that can be credited to the user when the coupon is redeemed. The Get coupon rewards API call is used alongside the SDK method.
    • RedeemCouponCode — redeems the coupon code and rewards the user. The Redeem coupon code API call is used alongside the SDK method.
Note
If it is undesirable for your application to implement an interface and additional logic for working with coupons, contact your Account Manager to set up a campaign with coupons. In this case, the input and activation of the coupon are carried out not in the interface of the cart, but when paying for the purchase in Pay Station.
Was this article helpful?
Thank you!
Is there anything we can improve? Message
We’re sorry to hear that
Please explain why this article wasn’t helpful to you. Message
Thank you for your feedback!
We’ll review your message and use it to help us improve your experience.
Hide

How to work with promo codes

Notice
Use this how-to when working only with the Game Commerce asset.
To get new users to your application and increase sales, you can implement a campaign with promo codes. When redeeming a promo code, the user may receive one or more of the following rewards:
  • discount that applies to the user’s cart
  • bonus items:
    • virtual currency package
    • game key
    • virtual item including a bundle or nonrenewing subscription

For details on the features and limitations of campaigns with promo codes, see the In-Game Store guide.

To work with promo codes:

  1. Complete the settings in Publisher Account by following the instructions for setting up a campaign with promo codes.
  2. Implement in-game logic using the following SDK methods:

    • GetPromocodeReward — gets promo code rewards. Allows users to choose one of many items as a bonus. The Get promo code reward API call is used alongside the SDK method.
    • RedeemPromocode — redeems promo code. After redeeming a promo code, the user gets free items and/or the price of the cart is decreased. The Redeem promo code API call is used alongside the SDK method.
Note
If it is undesirable for your application to implement an interface and additional logic for working with promo codes, contact your Account Manager to set up a campaign with promo codes. In this case, the input and activation of the promotional code will be carried out not in the interface of the cart, but when paying for the purchase in Pay Station.
Was this article helpful?
Thank you!
Is there anything we can improve? Message
We’re sorry to hear that
Please explain why this article wasn’t helpful to you. Message
Thank you for your feedback!
We’ll review your message and use it to help us improve your experience.
Hide

How to work with bundles

Notice
Use this how-to when working only with the Game Commerce asset.
To get new users to your application and increase sales, you can sell sets of items as bundles for less than the cost of their content.

A bundle may include:

  • virtual currency (including the platform-dependent currency)
  • package of virtual currency
  • game keys for preselected DRMs
  • virtual items including nonrenewing subscriptions
  • bundles

For details on the features and limitations of bundles, see the In-Game Store guide.

To work with bundles:

  1. Complete the settings in Publisher Account by following the instructions for setting up a bundle.
  2. Implement in-game logic using the following SDK methods:

    • GetBundles — gets a list of bundles for building a catalog. The Get list of bundles API call is used alongside the SDK method.
    • GetBundle — gets a bundle for the specified SKU. The Get specified bundle API call is used alongside the SDK method.
Note
For bundles that contain items sold for real currency, the total cost of these items is passed in the total_content_price parameter. You can use this value to display the benefits of buying a bundle in your application.
Was this article helpful?
Thank you!
Is there anything we can improve? Message
We’re sorry to hear that
Please explain why this article wasn’t helpful to you. Message
Thank you for your feedback!
We’ll review your message and use it to help us improve your experience.
Hide

How to use in-game store site with SDKs

Notice

Use this how-to when working only with the following assets:

  • Game Commerce
  • Cross-Buy

Cross-Buy asset will be deprecated in April 2022. You can continue to use it, but it will not be updated and supplemented with new features. It is recommended to switch to the Game Commerce asset. It contains all the classes and methods needed to work with Xsolla products.

Implement the sale of virtual items and virtual currency outside the game via the in-game store site. The purchased items and currency will be available in the player’s inventory.

To integrate your store site with the SDK:

  1. Create a store site.
  2. Specify the site address of the in-game store in the application code.
  3. Implement the logic for your application to work with the store site.

Create a store site

You can create a store site with Site Builder by following the instructions for connecting a store on the site.

Notice
By default, when creating a site, a new Login project is created in Publisher Account. When setting up Site Builder, use the same Login project as when you set up the SDK.

If you want to connect a store site that was created using a different solution, follow the instructions for creating a store.

Recommendations for the logic for your application to work with the store site

Follow these recommendations when developing your application:

  1. Synchronize the fields of user registration and authorization in your application and in the Login widget on the store site:
    • If a user email and password are used for registration and authorization, set the username equal to the email in the application.

Note
The widget uses the user’s email and password by default for authorization and registration.
    • If you use a username, user email and password for registration and authorization, contact your Account Manager to change the Login widget fields.
  1. When navigating to the store site from the application client, implement pass-through user authorization. To do this, the user token must be passed in the URL parameters. An example of authorization is shown in the demo scene for the Cross-Buy asset.
Was this article helpful?
Thank you!
Is there anything we can improve? Message
We’re sorry to hear that
Please explain why this article wasn’t helpful to you. Message
Thank you for your feedback!
We’ll review your message and use it to help us improve your experience.
Hide
Last updated: October 10, 2023

Found a typo or other text error? Select the text and press Ctrl+Enter.

Report a problem
We always review our content. Your feedback helps us improve it.
Provide an email so we can follow up
Thank you for your feedback!