Know Xsolla



Publisher account

Publisher account

Partner network

You can generate and save your API key here: Publisher AccountCompany SettingsAPI Key.

Each project has its own key – called either a secret key or a project key – that’s part of your digital signature, which is necessary for secure payments. To generate your digital signature we concatenate the request's JSON body with your project's secret key and apply SHA-1 hashing to the resulting string. 

The API key is the same for all projects in your account and is used for API calls you make to the Xsolla server. Your API key should only be held on your own server, never inside your game binaries or frontends.

Your project ID is the number above the selected project name in Publisher Account and can also be found here

The merchant ID and publisher ID are simply 2 different terms for the same thing.

Yes, via the payment system provider (PSP) list: Game (Project) Pay Station Payment Methods Status On / Off, for each individual method. However, we do not recommend to limit the payment options for players.

Gateways let you receive payouts directly from payment systems available within Pay Station. Under this model, the interface won’t change, and Xsolla simply serves as a Technical Service Provider, taking a reduced revenue share. That means you’ll receive full-scale Xsolla solutions, with these exceptions:

  • You assume responsibility for managing tax-related issues
  • You sign separate agreements with each payment system
  • You retain direct money flow from payment systems
  • You remain in charge of managing payment system fees, chargebacks, refunds, payout commissions, and operating costs

To display a gateway in Pay Station, configure it in Publisher Account and sign the agreement. Find more information here.

Our system supports flexible coverage configurations, in order to simultaneously give gamers access to all available payment methods and let developers choose a balanced payout percentage. You can define the percentage of the commission to cover. If the total commission percentage exceeds the maximum rate you’ve chosen, the difference is passed on to the user. In that case, the user can choose their payment method, and you won’t pay high fees.

You can assign different access levels based on team members’ role, from among these:

Owner can view and edit everything in Publisher Account

Developer can

  • set up projects
  • create, edit, enable, and launch campaigns
  • create coupons
  • view financial data, including reports, analytics, and dashboard metrics

Junior developer can

  • set up projects
  • create, edit, enable, and launch campaigns
  • create coupons

Accounting can 

  • view all financial information
  • manage finance reports

Support engineer can

  • access support tickets
  • search, view, and cancel transactions
  • export reports

Junior support engineer can

  • access support tickets
  • search and view transactions

Connect Pre-orders in Game Keys. Create new Game Key packages, and follow the wizard to finish the setup process.

Game Keys → Select the package you would like to edit → Keys & Distributives → Turn on Imported Game Key Delivery→ Upload keys in either TXT or CSV, using a line break as the separator.

Yes, you can simply go through the Game Key Package setup and select Imported Game Key Delivery but elect to not upload anything. Be sure to upload keys prior to release!

You can also set up placeholder keys or enable Distribution of Keys Is Performed by Partner.

  • Financial information: Click transaction ID in Transaction Registry report or export CSV or XLS files in Transaction Registry report.
  • Operation: Click transaction ID in Transaction Search report or export CSV or XLS files in Transaction Search report.

In the Payouts report.

If it's the first project, click the Let’s Start button on the welcome page, then:

  • Create project
  • Connect products
  • Sign Licensing Agreement
  • Pass Tax interview

If it's not the first project, Click the green ( + ) button in the left sidebar.

The Xsolla ID is your ID for every transaction in Xsolla. The Invoice ID is the optional ID for each transaction in your game. For testing, you can use any numeric value.

These errors mean that a valid user ID is required. Please check that you’re using a user ID from your database and that you’re returning a 200 response code to the user_validation webhook.

The UI token for this user has expired. Default expiration time is 24 hours.Please fetch a new token for each new user payment session initiated.

This means that you need to sign the agreement with us in order to receive your payouts. Please contact your account manager or for assistance.

The user ID is a way of identifying a user in your game. You can store user IDs in a database. If an invalid user ID is used, you should throw an exception. Here is an example of how to handle user validation.

Check that you’ve installed and included all required files and that the relative paths are valid. You’ll find more setup information on our Github page.

You need to activate a module for your project. Or for Simple Checkout, you could be missing the purchase parameter.

Make sure you’ve included all required files and that your webhook server is set up to handle the types of webhook requests you’ll receive.

Yes, almost anyone on your team (owners, developers, accounting, and support engineers) can do it from Publisher Account. If needed, our support team can manually trigger a re-send for payment webhooks, and we can also re-send others by request.

Game Key Package DRM Info → Select only the DRM-free Key option. Then upload your Steam keys in Keys and Distributives. Then upload the launcher you’ll be using as the distributive in Distributive Upload

When a customer purchases a title, they’ll receive a link to download the launcher and both a DRM-free game key and a Steam key. The customer can redeem the DRM-free key in the launcher for this early access version of the game. Once a title’s been released, the customer can them redeem their Steam key for the Steam version of the game. Remember you’ll need to request a custom email telling customers the key is usable on Steam. 

No, this sentence is a bit wrong. When game developer setup DRM Free key, he can additionally setup a steam key. In this case player will receive Steam key as a gift. The typical use case looks like:

  1. Game developer initiate a preorders or early access for his game
  2. User buy game on developers website.
  3. User receive both DRM Free and Steam keys
  4. User redeem DRM Free key in launcher and use this version of a game During CBT or early access
  5. Once games officially released user can redeem his Steam key to have access to steam version.

This use case implemented by our partner Game Labs.

We currently offer PHP SDK, Unity SDK, and Unreal SDK. You can build your own SDK using any language / platform, as long as it has HTTPS request functionality. You’ll find more help here.

Set up the CSV file with 2 keys on the same line. It could look like: XXXXXXXSTEAMKEY1XXXXX, XXXXXXBOGOSTEAMKEY1XXXXXXX 

Your customer will receive both keys once they buy.



Schedule a product tour or speak to our sales team directly.
Email us at:
Thank you!
Oops! Something went wrong while submitting the form.