Configurer l’authentification utilisateur
L’authentification permet aux utilisateurs d’acheter des biens dans le magasin en ligne et de consulter les offres uniques du catalogue.
Principales fonctionnalités du magasin en ligne avec authentification :
- Plusieurs méthodes d’autorisation dans le magasin en ligne.
- Configuration des vitrines personnalisées et des codes promo pour les utilisateurs autorisés.
- Conformité aux lois et réglementations régionales relatives à la protection et au traitement des données personnelles.
- Limite de débit et protection contre les attaques DDoS.
Vous pouvez choisir l’une des méthodes d’authentification suivantes :
- Authentification par ID utilisateur :
- Simplifie l’intégration du magasin en ligne au jeu ;
- Le widget d’authentification ne nécessite pas d’inscription ni de saisie de mot de passe. Pour se connecter, l’utilisateur saisit son ID de jeu ou utilise le même compte de réseau social que celui employé pour la connexion au jeu.
- Authentification par ID utilisateur et lien profond :
- Les liens profonds peuvent être utilisés comme méthode d'authentification supplémentaire lors de la connexion par ID utilisateur.
- Le widget d'authentification par ID utilisateur et lien profond ne nécessite ni enregistrement ni saisie de mot de passe. L'utilisateur doit simplement entrer son ID utilisateur dans le jeu ou se connecter via le jeu à l'aide d'un lien profond.
- Authentification par lien profond :
- Lorsqu'un lien profond est utilisé comme méthode de connexion principale, il permet d'enregistrer les informations de paiement, ce qui n'est pas possible avec l'authentification par ID utilisateur.
- Authentification via Xsolla Login :
- Fournit un large éventail de méthodes d'autorisation : réseaux sociaux, codes ou liens à usage unique, nom d'utilisateur et mot de passe ;
- Vous permet de personnaliser le widget Xsolla Login ;
- Vous pouvez imposer des restrictions d'âge à l'autorisation.
- Authentification via Xsolla Login par ID utilisateur lié :
- Vous permet de combiner la sécurité de Xsolla Login avec l’avantage d’utiliser un ID utilisateur provenant du jeu. Le widget Xsolla Login fonctionne indépendamment du client du jeu : l’intégration avec le jeu est gérée via des webhooks. L’ID utilisateur lié est utilisé pour octroyer rapidement les achats à l’utilisateur dans le jeu et offrir des promotions personnalisées.
- Ne nécessite aucune modification côté client du jeu et convient particulièrement aux situations où il faut s’assurer que seul le propriétaire du compte accède au Web Shop, par exemple pour empêcher l’utilisation non autorisée des points de fidélité.
Flux utilisateur
- L'utilisateur accède à Web Shop avec l'authentification par ID utilisateur configurée.
- L'utilisateur s'authentifie dans Web Shop de l'une des manières suivantes :
- L'utilisateur saisit son ID dans le bloc de Fast Login et clique sur le bouton de connexion.
- L'utilisateur clique sur le bouton d'achat pour l'objet sélectionné ou sur le bouton de connexion dans la barre supérieure :
- Une fenêtre modale pour entrer l'ID utilisateur ou se connecter via un réseau social s'ouvre ;
- L'utilisateur saisit son ID et clique sur Continue ou clique sur l'icône des réseaux sociaux pour choisir un réseau social et termine l'authentification sur la page du réseau social.

- Le système vérifie l'existence d'un utilisateur avec cet ID ou ce compte social dans le jeu. S'il existe, l'utilisateur est autorisé dans Web Shop. Sinon, un message d'erreur s'affiche.
Comment configurer
- Côté application, implémentez la gestion du webhook de validation utilisateur.
Lors de la réception d’un webhook, l’application doit effectuer les opérations suivantes :
- Rechercher l’utilisateur à l’aide de son ID passé dans le webhook.
- En fonction du résultat, envoyer l’un des codes d’état suivants :
- Un code HTTP 200 avec une réponse du webhook, si l’utilisateur est trouvé ;
- Un code HTTP 404, si l’ID utilisateur n’est pas trouvé.
- Envoyer les attributs utilisateur à des fins de personnalisation.
Ouvrez le projet dans le Compte éditeur et accédez à la section Storefronts > Websites.
Dans le volet du site correspondant, cliquez sur Open Site Builder.
Ouvrez le projet dans le compte pour les jeux mobiles, puis accédez à la section Web Shop.
Appuyez sur le volet du site requis.
- Si votre site comporte plusieurs pages, sélectionnez celle qui vous intéresse :
- Appuyez sur le titre de la page actuelle en haut du constructeur.
- Sélectionnez la page souhaitée dans la liste déroulante.
- Accédez au bloc Login settings.
- Sélectionnez l’option ID utilisateur.
- Dans la liste déroulante, sélectionnez New Login.
- Entrez l’URL pour recevoir les webhooks. Cette URL peut être différente de celle spécifiée dans Project settings > Webhooks.
- Entrez l’URL pour recevoir les webhooks. Cette URL peut être différente de celle spécifiée dans Settings > Webhooks.
https://. Utiliser http:// provoquera une erreur.- Configurez l’autorisation via les réseaux sociaux déjà connectés à votre application (facultatif) :
- Ouvrez votre projet dans le Compte éditeur et accédez à la section Login.
- Cliquez sur Configure dans la barre du site.
- Accédez au bloc Authentication et sélectionnez Social login.
- Configurez l’autorisation via les réseaux sociaux déjà connectés à votre application (facultatif) :
- Ouvrez votre projet dans le compte pour les jeux mobiles et accédez à la section Other tools > Login.
- Appuyez sur Configure dans la barre du site.
- Accédez au bloc Authentication et sélectionnez Social login.
- Pour configurer un réseau social, accédez à la carte de réseau social, cliquez sur l'icône ⚙ à droite du nom, puis sélectionnez Connect.
Un lien profond est une URL spéciale qui redirige l’utilisateur non seulement vers la page d’accueil d’une application ou d’un site Web, mais directement vers une section, une page ou une action précise.
Les liens profonds peuvent être utilisés comme méthode d’authentification supplémentaire lors de la connexion par ID utilisateur. Si le jeu est déjà installé sur l’appareil mobile de l’utilisateur, il sera automatiquement redirigé vers le jeu via un lien profond pour obtenir un jeton d’autorisation.
Flux utilisateur
Dans l'application mobile
- Un utilisateur non autorisé du Web Shop clique sur le bouton de connexion ou sur le bouton d'achat. Une fenêtre modale permettant de saisir l'ID utilisateur ou de se connecter via le jeu mobile s'affiche.
- L'utilisateur clique sur le bouton Log in via Mobile Game.
- L'utilisateur est redirigé vers le jeu, puis automatiquement vers le Web Shop en tant qu'utilisateur autorisé.
Dans la version de bureau
- Un utilisateur non autorisé du Web Shop clique sur le bouton de connexion ou sur le bouton d'achat. Une fenêtre modale permettant de saisir l'ID utilisateur ou de se connecter à la version mobile du jeu à l'aide d'un code QR s'affiche.
- L'utilisateur scanne le code QR à l'aide de son appareil mobile.
- Le Web Shop s'ouvre sur l'appareil mobile de l'utilisateur.
- L'utilisateur est automatiquement redirigé vers le jeu, puis automatiquement vers le Web Shop en tant qu'utilisateur autorisé.
Flux d'interaction des services
%%{init: {'themeVariables': { 'noteBkgColor': 'transparent', 'noteBorderColor': 'transparent' }}}%%
sequenceDiagram
participant U as Utilisateur
participant WS as Web Shop
participant B as Navigateur
participant MOS as OS mobile
participant G as Jeu
participant LA as Login API
U->>WS: Appuie sur le bouton pour se connecter via le jeu mobile
activate WS
WS->>B: Redirige l’utilisateur via un lien profond
activate B
B->>MOS: Effectue un appel système pour ouvrir un jeu mobile
activate MOS
MOS->>G: Ouvre le jeu mobile
activate G
G->>LA: Génère un jeton d’autorisation
activate LA
LA-->>G: Renvoie un jeton d’autorisation
deactivate LA
G->>MOS: Effectue un appel système pour ouvrir le navigateur avec le jeton dans l’URL
deactivate G
MOS-->>B: Ouvre le navigateur avec le jeton dans l’URL
deactivate MOS
B-->>WS: Ouvre la page du Web Shop pour les utilisateurs autorisés
deactivate B
WS-->>U: Affiche le nom d’utilisateur dans l’en-tête
deactivate WS
Comment configurer
Côté jeu
- Dans les paramètres de l’application mobile de votre jeu, enregistrez un schéma d’URL pour ouvrir le jeu via un lien profond :
- dans les applications Android — dans le fichier
AndroidManifest.xml; - dans les applications iOS — dans le fichier
Info.plist.
- dans les applications Android — dans le fichier
- Après l'enregistrement du schéma, lorsque l'utilisateur s'authentifie dans le Web Shop via le jeu, le jeu s'ouvrira à l'adresse spécifiée.
- Exemple de lien d'ouverture du jeu via un schéma d'URL enregistré :
scheme— identifiant unique du jeu, utilisé dans un schéma d'URL personnalisé pour lancer l'application et accéder à l'action souhaitée.authorize— exemple de nom d'action à exécuter après l'ouverture du jeu. Utilisez le nom d'action correspondant à votre système d'exploitation.operationPayload=<VALUE>— paramètre contenant les informations nécessaires pour générer le jeton lors de l'authentification. La valeur est encodée en Base64 et générée par Xsolla.
scheme://authorize?operationPayload=<VALUE>, où :Assurez-vous que le paramètre operationPayload est traité correctement. Transmettez-le tel quel, ne le déchiffrez pas, ne le modifiez pas et ne le générez pas manuellement.
Si le paramètre est manquant ou modifié, la requête renvoie un code d’erreur 400.
- Exemples :
- xml
1<key>CFBundleURLTypes</key>
2 <array>
3 <dict>
4 <key>CFBundleTypeRole</key>
5 <string>Editor</string>
6 <key>CFBundleURLSchemes</key>
7 <array>
8 <string>scheme</string>
9 </array>
10 </dict>
11 </array>

- xml
1<intent-filter>
2 <action android:name="android.intent.action.VIEW" />
3 <category android:name="android.intent.category.DEFAULT" />
4 <category android:name="android.intent.category.BROWSABLE" />
5 <data android:scheme="scheme" android:host="authorize" />
6</intent-filter>
- Implémentez la génération d’un jeton d’autorisation au format JWT en utilisant l’ID utilisateur dans le jeu.
| Paramètre | Type | Description |
|---|---|---|
loginId | string | ID de la méthode d’autorisation du Compte éditeur. Obligatoire. |
settings.projectId | integer | L’ID du projet se trouve dans le Compte éditeur, à côté du nom de votre projet ou dans la barre d’adresse du navigateur. L’URL présente le format suivant : https://publisher.xsolla.com/<merchantId>/projects/<projectId>. Obligatoire. |
settings.merchantId | integer | L’ID du commerçant se trouve dans le Compte éditeur, dans la section Paramètres d’entreprise > Entreprise ou dans la barre d’adresse du navigateur sur n’importe quelle page du Compte éditeur. L’URL se présente au format suivant : https://publisher.xsolla.com/<merchantId>/. Obligatoire. |
user.id | string | ID utilisateur dans le jeu. Obligatoire. |
user.country | string | Code pays à deux lettres majuscules selon ISO 3166-1 alpha-2. Consultez la documentation pour obtenir des informations détaillées sur les pays pris en charge par Xsolla et le processus de détermination du pays. Exemple : US |
operationPayload | string | Paramètre contenant les informations nécessaires pour générer le jeton lors de l’authentification. La valeur est encodée en Base64 et fournie par Xsolla. Obligatoire. |
| Paramètre | Type | Description |
|---|---|---|
loginId | string | ID de la méthode d’autorisation du compte pour les jeux mobiles.Obligatoire. |
settings.projectId | integer | L’ID du projet se trouve dans le compte pour les jeux mobiles, à côté du nom de votre projet ou dans la barre d’adresse du navigateur. L’URL présente le format suivant : https://xsolla.com/for/mobile-games/account/<merchantId>/projects/<projectId>. Obligatoire. |
settings.merchantId | integer | L’ID du commerçant se trouve dans le compte pour les jeux mobiles, dans la section Compagny setting > Company ou dans la barre d’adresse du navigateur sur n’importe quelle page de votre compte. L’URL se présente au format suivant : https://xsolla.com/for/mobile-games/account/<merchantId>/. Obligatoire. |
user.id | string | ID utilisateur dans le jeu. Obligatoire. |
user.country | string | Code pays à deux lettres majuscules selon ISO 3166-1 alpha-2. Consultez la documentation pour obtenir des informations détaillées sur les pays pris en charge par Xsolla et le processus de détermination du pays. Exemple : US |
operationPayload | string | Paramètre contenant les informations nécessaires pour générer le jeton lors de l’authentification. La valeur est encodée en Base64 et fournie par Xsolla. Obligatoire. |
- Exemple d'appel à la méthode API de génération de jeton utilisateur à l'aide de curl :
- curl
1curl -X 'POST' \
2'https://sb-user-id-service.xsolla.com/api/v1/user-id/token' \
3-H 'accept: /' \
4-H 'Content-Type: application/json' \
5-d '{
6 "loginId": "000001aa-001a-0ab0-00001-01a01a01a01a",
7 "settings": {
8 "projectId": 123456,
9 "merchantId": 123456
10 },
11 "user": {
12 "id": "123",
13 "country": "US"
14 }
15 "operationPayload": "kosarb2NyrtIWaegJAH1f6P7XrBYPXYDya5coc_ZzcfiS_5o4QTUAL-CcGRC_Kv4CAtg"
16}'
- Vous obtiendrez une réponse de type
{token="JWT_TOKEN"}.Ajoutez une fenêtre contextuelle avec une notification d’autorisation réussie (facultatif).
Implémentez l’ouverture du Web Shop dans le navigateur à l’aide du jeton utilisateur obtenu.
- Exemple de création d'une URL pour ouvrir le Web Shop dans le navigateur d'un utilisateur autorisé :
https://example.com/?token={token}, si vous utilisez un domaine personnalisé ;https://example.xsolla.site/?token={token}, si vous utilisez un domaine Xsolla.
- Où
{token} est le jeton d'autorisation utilisateur.Dans Site Builder
- Ouvrez le projet dans le Compte éditeur et accédez à la section Storefronts > Websites.
- Ouvrez le projet dans le compte pour les jeux mobiles, puis accédez à la section Web Shop.
- Cliquez sur Configure sur la carte du site de votre Web Shop avec authentification par ID utilisateur.
- Accédez à Login Settings et sélectionnez la section User ID.
- Activez l’option Deeplink authorization.
- Dans le champ Deeplink URL, entrez le lien pour l’authentification utilisateur.
- Si vous utilisez le bloc Fast Login sur votre site :
- Accédez au bloc Fast Login ;
- Dans la section Layout, activez l’option QR code.
- Pour vérifier l’authentification, cliquez sur Preview.
- Pour publier le site Web, cliquez sur Publish.
Un lien profond est une URL spéciale qui redirige l’utilisateur non seulement vers la page d’accueil d’une application ou d’un site Web, mais directement vers une section, une page ou une action précise.
Les liens profonds permettent à l’utilisateur de s’authentifier dans le Web Shop via le jeu en un seul clic, contournant ainsi le processus d’authentification par ID utilisateur ou via Xsolla Login.
Si le jeu est déjà installé sur l’appareil mobile de l’utilisateur, il sera automatiquement redirigé vers le jeu via un lien profond pour obtenir un jeton d’autorisation.
Lorsqu’un lien profond est utilisé comme méthode d’authentification principale, il permet d’enregistrer les informations de paiement, ce qui n’est pas possible avec l’authentification par ID utilisateur et lien profond. Dans ce cas, il sert uniquement à rendre l’authentification plus rapide, sans ajouter de nouvelles fonctionnalités.
Flux utilisateur
Dans l'application mobile
- Un utilisateur non autorisé du Web Shop clique sur le bouton de connexion ou sur le bouton d'achat. Une fenêtre modale permettant de se connecter via le jeu mobile s'affiche.
- L'utilisateur clique sur le bouton Log in via Mobile Game.
- L'utilisateur est redirigé vers le jeu, puis automatiquement vers le Web Shop en tant qu'utilisateur autorisé.
Dans la version de bureau
- Un utilisateur non autorisé du Web Shop clique sur le bouton de connexion ou sur le bouton d'achat. Une fenêtre modale permettant de se connecter à la version mobile du jeu à l'aide d'un code QR s'affiche.
- L'utilisateur scanne le code QR à l'aide de son appareil mobile.
- Le Web Shop s'ouvre sur l'appareil mobile de l'utilisateur.
- L'utilisateur est automatiquement redirigé vers le jeu, puis automatiquement vers le Web Shop en tant qu'utilisateur autorisé.
Flux d'interaction des services
%%{init: {'themeVariables': { 'noteBkgColor': 'transparent', 'noteBorderColor': 'transparent' }}}%%
sequenceDiagram
participant U as Utilisateur
participant WS as Web Shop
participant B as Navigateur
participant MOS as OS mobile
participant G as Jeu
participant LA as Login API
U->>WS: Appuie sur le bouton pour se connecter via le jeu mobile
activate WS
WS->>B: Redirige l’utilisateur via un lien profond
activate B
B->>MOS: Effectue un appel système pour ouvrir un jeu mobile
activate MOS
MOS->>G: Ouvre le jeu mobile
activate G
G->>LA: Génère un jeton d’autorisation
activate LA
LA-->>G: Renvoie un jeton d’autorisation
deactivate LA
G->>MOS: Effectue un appel système pour ouvrir le navigateur avec le jeton dans l’URL
deactivate G
MOS-->>B: Ouvre le navigateur avec le jeton dans l’URL
deactivate MOS
B-->>WS: Ouvre la page du Web Shop pour les utilisateurs autorisés
deactivate B
WS-->>U: Affiche le nom d’utilisateur dans l’en-tête
deactivate WS
Comment configurer
Côté jeu
- Dans les paramètres de l’application mobile de votre jeu, enregistrez un schéma d’URL pour ouvrir le jeu via un lien profond :
- dans les applications Android — dans le fichier
AndroidManifest.xml; - dans les applications iOS — dans le fichier
Info.plist.
- dans les applications Android — dans le fichier
- Après l'enregistrement du schéma, lorsque l'utilisateur s'authentifie dans le Web Shop via le jeu, le jeu s'ouvrira à l'adresse spécifiée.
- Exemple de lien d'ouverture du jeu via un schéma d'URL enregistré :
scheme— identifiant unique du jeu, utilisé dans un schéma d'URL personnalisé pour lancer l'application et accéder à l'action souhaitée.authorize— exemple de nom d'action à exécuter après l'ouverture du jeu. Utilisez le nom d'action correspondant à votre système d'exploitation.operationPayload=<VALUE>— paramètre contenant les informations nécessaires pour générer le jeton lors de l'authentification. La valeur est encodée en Base64 et générée par Xsolla.
scheme://authorize?operationPayload=<VALUE>, où :Assurez-vous que le paramètre operationPayload est traité correctement. Transmettez-le tel quel, ne le déchiffrez pas, ne le modifiez pas et ne le générez pas manuellement.
Si le paramètre est manquant ou modifié, la requête renvoie un code d’erreur 400.
- Exemples :
- xml
1<key>CFBundleURLTypes</key>
2 <array>
3 <dict>
4 <key>CFBundleTypeRole</key>
5 <string>Editor</string>
6 <key>CFBundleURLSchemes</key>
7 <array>
8 <string>scheme</string>
9 </array>
10 </dict>
11 </array>

- xml
1<intent-filter>
2 <action android:name="android.intent.action.VIEW" />
3 <category android:name="android.intent.category.DEFAULT" />
4 <category android:name="android.intent.category.BROWSABLE" />
5 <data android:scheme="scheme" android:host="authorize" />
6</intent-filter>
- Implémentez la génération d’un jeton d’autorisation au format JWT en utilisant l’ID utilisateur dans le jeu.
| Paramètre | Type | Description |
|---|---|---|
loginId | string | ID de la méthode d’autorisation du Compte éditeur. Obligatoire. |
settings.projectId | integer | L’ID du projet se trouve dans le Compte éditeur, à côté du nom de votre projet ou dans la barre d’adresse du navigateur. L’URL présente le format suivant : https://publisher.xsolla.com/<merchantId>/projects/<projectId>. Obligatoire. |
settings.merchantId | integer | L’ID du commerçant se trouve dans le Compte éditeur, dans la section Paramètres d’entreprise > Entreprise ou dans la barre d’adresse du navigateur sur n’importe quelle page du Compte éditeur. L’URL se présente au format suivant : https://publisher.xsolla.com/<merchantId>/. Obligatoire. |
user.id | string | ID utilisateur dans le jeu. Obligatoire. |
user.country | string | Code pays à deux lettres majuscules selon ISO 3166-1 alpha-2. Consultez la documentation pour obtenir des informations détaillées sur les pays pris en charge par Xsolla et le processus de détermination du pays. Exemple : US |
operationPayload | string | Paramètre contenant les informations nécessaires pour générer le jeton lors de l’authentification. La valeur est encodée en Base64 et fournie par Xsolla. Obligatoire. |
| Paramètre | Type | Description |
|---|---|---|
loginId | string | ID de la méthode d’autorisation du compte pour les jeux mobiles.Obligatoire. |
settings.projectId | integer | L’ID du projet se trouve dans le compte pour les jeux mobiles, à côté du nom de votre projet ou dans la barre d’adresse du navigateur. L’URL présente le format suivant : https://xsolla.com/for/mobile-games/account/<merchantId>/projects/<projectId>. Obligatoire. |
settings.merchantId | integer | L’ID du commerçant se trouve dans le compte pour les jeux mobiles, dans la section Compagny setting > Company ou dans la barre d’adresse du navigateur sur n’importe quelle page de votre compte. L’URL se présente au format suivant : https://xsolla.com/for/mobile-games/account/<merchantId>/. Obligatoire. |
user.id | string | ID utilisateur dans le jeu. Obligatoire. |
user.country | string | Code pays à deux lettres majuscules selon ISO 3166-1 alpha-2. Consultez la documentation pour obtenir des informations détaillées sur les pays pris en charge par Xsolla et le processus de détermination du pays. Exemple : US |
operationPayload | string | Paramètre contenant les informations nécessaires pour générer le jeton lors de l’authentification. La valeur est encodée en Base64 et fournie par Xsolla. Obligatoire. |
Avant de générer un jeton d’autorisation pour la première fois, contactez votre gestionnaire de projet ou envoyez un e-mail à [email protected] pour activer la configuration du jeton. Cette étape est nécessaire pour garantir le bon fonctionnement de l’authentification sécurisée des utilisateurs.
- Exemple d'appel à la méthode API de génération de jeton utilisateur à l'aide de curl :
- curl
1curl -X 'POST' \
2'https://sb-user-id-service.xsolla.com/api/v1/user-id/token' \
3-H 'Accept: /' \
4-H 'Content-Type: application/json' \
5-d '{
6 "loginId": "string",
7 "settings": {
8 "projectId": 0,
9 "merchantId": 0
10 },
11 "user": {
12 "id": "string",
13 "country": "string",
14 "name": "string",
15 "picture": "string"
16 },
17 "operationPayload": "eyJ4c29sbGF1aWQiOiIzNzE5Nzc5NjU1MDE2Nzc2MzcifQ%3D%3D"
18}'
- Vous obtiendrez une réponse de type
{token="JWT_TOKEN"}.Ajoutez une fenêtre contextuelle avec une notification d’autorisation réussie (facultatif).
Implémentez l’ouverture du Web Shop dans le navigateur à l’aide du jeton utilisateur obtenu.
- Exemple de création d'une URL pour ouvrir le Web Shop dans le navigateur d'un utilisateur autorisé :
https://example.com/?token={token}, si vous utilisez un domaine personnalisé ;https://example.xsolla.site/?token={token}, si vous utilisez un domaine Xsolla.
- Où
{token} est le jeton d'autorisation utilisateur.Dans Site Builder
- Ouvrez le projet dans le Compte éditeur et accédez à la section Storefronts > Websites.
- Cliquez sur Configurer sur la carte de votre site Web Shop.
- Ouvrez le projet dans le compte pour les jeux mobiles, puis accédez à la section Web Shop.
- Dans la carte de votre site, appuyez sur l’icône ⋮ puis sélectionnez Configure.
- Accédez à Login Settings et sélectionnez la section Deep link.
- Dans le champ Deeplink URL, entrez le lien pour l’authentification utilisateur.
- Si vous utilisez le bloc Fast Login sur votre site :
- Accédez au bloc Fast Login ;
- Dans la section Block Settings, ajustez le style d’affichage du bouton de connexion par code QR.
- Pour vérifier l’authentification, cliquez sur Preview.
- Pour publier le site Web, cliquez sur Publish.
Flux utilisateur
- L’utilisateur accède à Web Shop avec l’authentification Xsolla Login configurée.
- L’utilisateur clique sur le bouton d’achat de l’objet sélectionné, sur le bouton de connexion de la barre supérieure ou sur le bouton de connexion du bloc de Fast Login.
- Une fenêtre modale s’affiche avec les méthodes d’autorisation configurées dans Xsolla Login.
- L'utilisateur s'authentifie et saisit des données supplémentaires si nécessaire.
- Le système vérifie l'existence de l'utilisateur. S'il existe, l'utilisateur est autorisé dans Web Shop. Sinon, un message d'erreur s'affiche.
Comment configurer
- Dans le constructeur de votre site, accédez au bloc Login settings.
- Sélectionnez l'option d'autorisation Xsolla Login.
- Dans la liste déroulante, sélectionnez New Login.
Il en résulte qu’un projet de connexion avec authentification utilisateur par adresse e-mail et mot de passe sera créé. Pour le projet de connexion créé, l’URL du magasin en ligne sera spécifiée comme callback URL vers laquelle l’utilisateur sera redirigé dans les cas suivants :
- après une authentification réussie ;
- après une confirmation par e-mail réussie ;
- après une réinitialisation du mot de passe réussie ;
- en cas d’échec d’authentification.
Lorsque vous modifiez le domaine du magasin en ligne, la callback URL dans les paramètres du projet de connexion change automatiquement.
- Accédez aux paramètres du projet de connexion depuis la fenêtre modale ou cliquez sur Set up authentication method dans le bloc Xsolla Login.
Pour l’authentification dans le magasin en ligne, configurez les mêmes réseaux sociaux que pour l’authentification dans votre application. Si les réseaux sociaux ne sont pas configurés, l’authentification utilisateur par adresse e-mail et mot de passe sera disponible.
Lorsque vous configurez l’authentification dans le magasin en ligne via les réseaux sociaux, utilisez le même ID d’application et le même secret d’application que pour l’authentification dans votre application.

- Connectez le stockage des données utilisateur.
Selon la méthode de stockage des données utilisateur, différentes fonctionnalités du produit sont à votre disposition (voir Comparaison des options de stockage des données utilisateur).
Stockage Xsolla
Si vous souhaitez que le produit Login traite toute la logique d’authentification, connectez le stockage Xsolla. Vous aurez à votre disposition des paramètres plus flexibles.
Lorsque vous créez un projet de connexion, le stockage Xsolla est connecté par défaut, aucune étape supplémentaire n’est requise pour le configurer. Si vous avez modifié le type de stockage par défaut et que vous devez reconnecter le stockage Xsolla, procédez comme suit :
- Accédez au bloc User database et sélectionnez la section Storage.
- Sélectionnez Xsolla storage et cliquez sur Save changes.
Stockage PlayFab
Si vous souhaitez utiliser les fonctionnalités PlayFab pour interagir avec les utilisateurs, connectez le stockage PlayFab. Ce stockage enregistre les données utilisateur suivantes :
- nom d’utilisateur ;
- adresse e-mail utilisateur ;
- mot de passe utilisateur ;
- champs d’un formulaire d’inscription étendu, si le formulaire est configuré.
Le stockage PlayFab vous donne accès aux fonctionnalités suivantes :
- inscription utilisateur ;
- authentification par adresse e-mail ou nom d’utilisateur et mot de passe ;
- authentification via Twitch ;
- réinitialisation du mot de passe utilisateur ;
- blocage des utilisateurs.
Pour connecter le stockage :
- Accédez au bloc User database et sélectionnez la section Storage.
- Sélectionnez PlayFab.
- Dans le champ Title ID, entrez la même valeur que celle dans votre compte PlayFab.
- Cliquez sur Save changes.
Stockage Firebase
Si vous souhaitez utiliser les fonctionnalités Firebase pour interagir avec les utilisateurs, connectez le stockage Firebase. Ce stockage enregistre les données utilisateur suivantes :
- nom d’utilisateur ;
- adresse e-mail utilisateur ;
- mot de passe utilisateur ;
- champs du formulaire d’inscription étendu, si le formulaire est configuré.
- Accédez au bloc User database et sélectionnez la section Storage.
- Sélectionnez Firebase.
- Dans le champ API key, entrez la même valeur que celle dans votre compte Firebase.
- Cliquez sur Save changes.
Stockage personnalisé
Si vous utilisez votre propre système d’autorisation et que vous stockez les données utilisateur côté application, connectez votre propre stockage.
Le stockage personnalisé vous donne accès aux fonctionnalités suivantes :
- inscription utilisateur ;
- authentification par adresse e-mail ou nom d’utilisateur et mot de passe ;
- authentification sans mot de passe par numéro de téléphone ;
- authentification via les réseaux sociaux ;
- réinitialisation du mot de passe utilisateur.
- Connectez le stockage personnalisé.
- Configurez le traitement des requêtes depuis le serveur de connexion Xsolla.
Connecter un stockage personnalisé
- Accédez au bloc User database et sélectionnez la section Storage.
- Sélectionnez Custom storage.
- Entrez les URL vers lesquelles envoyer les requêtes API :
- Cliquez sur Save changes.
- Pour les URL que vous avez définies, implémentez un appel API qui renverra ce qui suit :
- Un code HTTP 200 ou 204 en cas de requête réussie. Si nécessaire, un JSON contenant des données utilisateur supplémentaires peut être placé dans le corps de la réponse. Les données passées sont écrites dans un JWT (le paramètre
partner_data) ; - Autres codes HTTP d'état en cas de requête infructueuse.
- Un code HTTP 200 ou 204 en cas de requête réussie. Si nécessaire, un JSON contenant des données utilisateur supplémentaires peut être placé dans le corps de la réponse. Les données passées sont écrites dans un JWT (le paramètre
- Pour faire correspondre les champs JSON aux propriétés du profil utilisateur dans Xsolla et configurer la liaison des comptes par ID utilisateur sur votre serveur, suivez ces instructions.
- Pour que l'authentification sans mot de passe par numéro de téléphone fonctionne correctement, votre réponse API doit contenir le paramètre
account_idcorrespondant à l'ID utilisateur fourni par le client.
Configurer le traitement des requêtes depuis le serveur Xsolla Login
Les requêtes du serveur Xsolla Login sont envoyées aux URL que vous avez spécifiées dans le Compte éditeur, avec l’en-tête Authorization: Bearer <JWT>. Le JWT est signé avec la clé secrète de votre projet.
- Validez le JWT reçu.
- Si la validation est réussie, décodez le JWT et assurez-vous qu’il inclut les revendications du tableau ci-dessous. Trouvez et utilisez une bibliothèque pour le décodage.
| Revendication | Type | Description |
|---|---|---|
| exp | Unix Timestamp | Date et heure d’expiration du JWT. La durée de vie du JWT est de 7 minutes. |
| iat | Unix Timestamp | Date et heure d’émission du JWT. |
| iss | string | Service ayant signé le JWT : https://login.xsolla.com. |
| request_type | string | Constante : gateway_request. |
| xsolla_login_project_id | string (UUID) | ID de votre projet de connexion dans le Compte éditeur. |
| social_access_token | string (UUID) | Jeton d’accès du réseau social par lequel l’utilisateur a été authentifié. Pour permettre la transmission de cette requête, contactez votre responsable de la réussite client ou envoyez un e-mail à [email protected]. |
- json
1{
2 "exp": 1573635020,
3 "iat": 1573634600,
4 "iss": "https://login.xsolla.com",
5 "request_type": "gateway_request",
6 "xsolla_login_project_id": "00000000-0000-0000-0000-000000000000"
7}
Flux utilisateur
- L’utilisateur accède pour la première fois au Web Shop après avoir configuré l’authentification par ID utilisateur lié.
- L’utilisateur clique sur le bouton d’achat de l’objet sélectionné, sur le bouton de connexion de la barre supérieure ou sur le bouton de connexion du bloc Fast Login.
- Une fenêtre modale s’affiche avec les méthodes d’autorisation configurées dans Xsolla Login.
- L’utilisateur procède à l’autorisation et saisit des données supplémentaires si nécessaire.

- Après une autorisation réussie via Xsolla Login, la fenêtre modale permettant de lier l’ID utilisateur depuis le jeu s’affiche.

- Le système vérifie l’existence de l’utilisateur. Si l’utilisateur avec l’ID spécifié existe dans le jeu, il est autorisé dans le Web Shop. Sinon, un message d’erreur s’affiche.
Comment configurer
Côté application, implémentez la gestion du webhook de validation utilisateur.
Lors de la réception d’un webhook, l’application doit effectuer les opérations suivantes :
- Rechercher l’utilisateur à l’aide de son ID passé dans le webhook.
- En fonction du résultat, envoyer l’un des codes d’état suivants :
- Un code HTTP 200 avec une réponse du webhook, si l’utilisateur est trouvé ;
- Un code HTTP 404, si l’ID utilisateur n’est pas trouvé.
- Envoyer les attributs utilisateur à des fins de personnalisation.
- Ouvrez le projet dans le Compte éditeur et accédez à la section Storefronts > Websites.
- Dans le volet du site correspondant, cliquez sur Open Site Builder.
- Ouvrez le projet dans le compte pour les jeux mobiles, puis accédez à la section Web Shop.
- Appuyez sur le volet du site requis.
- Si votre site comporte plusieurs pages, sélectionnez celle qui vous intéresse :
- Appuyez sur le titre de la page actuelle en haut du constructeur.
- Sélectionnez la page souhaitée dans la liste déroulante.
- Accédez au bloc Login settings.
- Sélectionnez l’option Login with linked user ID.
- Dans la liste déroulante, sélectionnez New Login ou l’un des projets créés.
- Entrez l’URL pour la réception des webhooks.
https://. Utiliser http:// provoquera une erreur.Vous pouvez configurer n’importe quelle méthode d’autorisation, mais pour simplifier l’expérience utilisateur lors de la phase d’authentification initiale, nous recommandons d’utiliser la connexion via les réseaux sociaux :
a. Ouvrez le projet dans le Compte éditeur et accédez à la section Players > Login. b. Cliquez sur Configure dans le volet du projet de Login souhaité.
c. Accédez au bloc Authentication et sélectionnez Social login.
d. Pour configurer un réseau social, accédez à la carte de réseau social, cliquez sur l’icône ⚙ à droite du nom, puis sélectionnez Connect.
Vous pouvez configurer n’importe quelle méthode d’autorisation, mais pour simplifier l’expérience utilisateur lors de la phase d’authentification initiale, nous recommandons d’utiliser la connexion via les réseaux sociaux : a. Ouvrez le projet dans le compte pour les jeux mobiles, puis accédez à la section Other tools > Login.
b. Cliquez sur Configure dans le volet du projet de Login souhaité.
c. Accédez au bloc Authentication et sélectionnez Social login.
d. Pour configurer un réseau social, accédez à la carte de réseau social, cliquez sur l’icône ⚙ à droite du nom, puis sélectionnez Connect.
Configuration du bloc de Fast Login
Le bloc Fast Login permet de mettre en avant l’étape d’autorisation et de simplifier le parcours d’achat de l’utilisateur.

Pour utiliser le bloc Fast Login, sélectionnez d’abord une méthode d’autorisation dans la section Login Settings. L’apparence et le comportement du bloc dépendent de la méthode d’authentification choisie.
Si l’authentification par ID utilisateur est configurée pour le site, le bloc de Fast Login affiche un champ pour saisir l’ID et un bouton de connexion.
Fonctionnalités :
- Authentification utilisateur sans transition supplémentaire vers la fenêtre modale.
- Configuration du contenu du bloc. Les sections suivantes sont disponibles et configurables :
- Title ;
- Description ;
- Instructions on how to find the user ID ;
- Custom background.
Étendez les fonctionnalités du bloc en ajoutant du texte, un bouton ou une image à l’aide de code JS.
Pour la méthode d’authentification par ID utilisateur dans la section Login settings, vous devez également spécifier l’URL de réception du webhook. Sinon, le site ne pourra pas être publié, car l’authentification utilisateur sera indisponible.
L’authentification utilisateur lors de l’aperçu du site est possible sans ajouter d’URL de webhook.
Le bloc Fast Login est automatiquement ajouté aux sites créés à l’aide du modèle Web Shop.
Si votre site ne comprend pas ce bloc, vous pouvez l’ajouter manuellement dans le Site Builder.
Pour ajouter un bloc de Fast Login :
- Ouvrez le projet dans le Compte éditeur et accédez à la section Storefronts > Websites.
- Dans la section Sites, sélectionnez votre site et cliquez sur Open Site Builder.
- Ouvrez le projet dans le compte pour les jeux mobiles, puis accédez à la section Web Shop.
- Appuyez sur la carte de votre site.
- Cliquez sur Add block.
- Choisissez le bloc Fast Login.
Poursuivre la lecture
Liens utiles
Flux d’intégrationFaute de frappe ou autre erreur dans le texte ? Sélectionnez le texte concerné et appuyez sur Ctrl+Entrée.