Authentication configuration for integration with MMPs

Authentication options

When you create a Web Shop, you can set up different authentication options. For the integration with Mobile Measurement Partners (MMP) and analytics attribution to work correctly, follow the guidelines described in the table below.

Authentication optionActions to configure analytics attribution

User ID authentication.

Make sure that CUID format used in the Web Shop matches the one configured to be sent to MMP from your mobile application. If they don’t, contact your Customer Success Manager or email to [email protected] to implement the User validation in Web Shop webhook — in response, you need to specify the CUID in the user.appPlayerId parameter. Alternatively, you can set up authentication via a deep link.

Deep link authentication.

No special configurations needed.

Authentication via Xsolla Login, including authentication via Xsolla Login with linked user ID.

Notice
Keep in mind that for these authentication options, the User validation in Web Shop webhook isn’t supported.
Note
We recommend using Xsolla storage in your Login project.

Set up authentication by custom ID. To do this:

  1. Connect an OAuth 2.0 client:
    1. In your project in Publisher Account, go to the Players > Login section.
    2. In the pane of a Login option, click Configure.
    3. In the Security block, click OAuth 2.0.
    4. Click Add OAuth 2.0 client.
    5. In the modal window, specify:
      • Client name.
      • Select authentication type — Server (server-to-server connection).
      • Specify the token lifetime in seconds (optional). The default lifetime is 1 hour (3600 seconds).
      • Click Connect.
    6. In the dialog window, copy the Client ID and Secret key. You will need these values when creating the user JWT.
  2. Get a user JWT by calling the Generate JWT API method. Use the client ID and secret key obtained at the previous step.
  3. Use the generated JWT to call an API method and pass the CUID in the server_custom_id parameter:
  1. Connect an OAuth 2.0 client:
    1. In your project in the account, go to the Other tools > Login section.
    2. In the pane of a Login option, click Configure.
    3. In the Security block, click OAuth 2.0.
    4. Click Add OAuth 2.0 client.
    5. In the modal window, specify:
      • Client name.
      • Select authentication type — Server (server-to-server connection).
      • Specify the token lifetime in seconds (optional). The default lifetime is 1 hour (3600 seconds).
      • Click Connect.
    6. In the dialog window, copy the Client ID and Secret key. You will need these values when creating the user JWT.
  2. Get a user JWT by calling the Generate JWT API method. Use the client ID and secret key obtained at the previous step.
  3. Use the generated JWT to call an API method and pass the CUID in the server_custom_id parameter:
Note
Refer to the OAuth 2.0 protocol section for detailed information about configuring this type of authentication.

ID types

In the integration process, you might use several ID types. The most common ones are described in the table below. Keep in mind that not all of them can be used for integration with MMPs.

IDDescriptionIs suitable for successful integration with MMP
Mobile application player ID (customer user ID, CUID).User ID generated and set by the application owner at the time of user registration.Yes, when it equals the CUID passed to MMP from the mobile application.
Server custom ID (server_custom_id).User ID from the game passed in the user JWT. Used when authentication via Xsolla Login is configured for your Web Shop.Yes, when it equals the CUID passed to MMP from the mobile application.
Universally Unique Identifier (UUID) exposed as the sub claim in user JWT.Unique ID assigned to each user on the Xsolla Login server side. Used when authentication via Xsolla Login is configured for your Web Shop.No.
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.
Last updated: September 30, 2026

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!
We couldn't send your feedback
Try again later or contact us at [email protected].