Créer une interface de catalogue

Trois moyens s’offrent à vous pour créer une interface de catalogue :

Au moyen de votre propre interface

Lorsque vous créez un répertoire dans votre propre interface, vous pouvez utiliser :

  • Votre propre stockage de données et n’importe quelle option d’autorisation. Dans ce cas, implémentez l’interface du catalogue de votre côté.
  • Votre propre autorisation et la méthode serveur Lire les plans. Implémentez l’interface du catalogue de votre côté après avoir obtenu la liste des plans.
  • Xsolla Login et les appels API côté client.
Note
Vous pouvez également utiliser les bibliothèques du SDK pour implémenter un catalogue dans votre propre interface. Ces bibliothèques prêtes à l’emploi simplifient l’intégration des produits Xsolla dans votre projet en offrant des structures de données et des méthodes prêtes à l’emploi pour utiliser l’API Xsolla.

Xsolla Login et les appels API côté client

Pour implémenter un catalogue :
  1. Obtenez la liste des plans d’abonnement à l’aide des méthodes client :
  2. Implémentez l’affichage de la liste des plans reçus dans l’interface.

Méthode côté client pour obtenir les plans d'abonnement par produit

Côté client de votre application, utilisez une requête HTTP GET pour implémenter l’obtention de la liste des plans : https://subscriptions.xsolla.com​/api/user/v1/projects/{project_id}/products/{​​productId}/plans.

La requête doit contenir un en-tête Authorization: Bearer <client_user_jwt>, où <client_user_jwt> est le JSON Web Token (JWT) de l’utilisateur, un jeton unique encodé conformément à la norme Base64. Pour obtenir le jeton :

Spécifiez comme paramètres de chemin :
  • projectId — ID de projet. Ce paramètre se trouve dans le Compte éditeur à côté du nom du projet.
  • productID— ID de produit par abonnement. Pour l’obtenir, contactez votre responsable de la réussite client ou envoyez un e-mail à csm@xsolla.com.

Spécifiez comme paramètres de requête :
ParamètreTypeDescription
plan_id
array of integersID du plan.
plan_external_id
array of stringsIdentifiant externe du plan. S’obtient dans le Compte éditeur sous la section Subscriptions > Subscription plans > votre plan ou via l’appel API Lire les plans.
limit
integerLimite du nombre d’éléments sur la page. 15 éléments sont affichés par défaut.
offset
integerNuméro de l’élément à partir duquel la liste est générée. Par défaut, le décompte commence à 0.
locale
stringLangue de l’interface désignée par deux lettres minuscules. Accepte des valeurs selon la norme ISO 639-1. Si ce paramètre n’est pas passé, la langue est déterminée par l’adresse IP de l’utilisateur.
Valeurs possibles :
  • ar — Arabe
  • bg — Bulgare
  • cn — Chinois (Simplifié)
  • cs — Tchèque
  • de — Allemand
  • en — Anglais
  • es — Espagnol
  • fr — Français
  • he — Hébreu
  • it — Italien
  • ja — Japonais
  • ko — Coréen
  • pl — Polonais
  • pt — Portugais
  • ro — Roumain
  • ru — Russe
  • th — Thaïlandais
  • tr — Turc
  • tw — Chinois (Traditionnel)
  • vi — Vietnamien
Si une langue qui ne figure pas dans la liste de Xsolla est spécifiée, l’anglais est utilisé.
country
stringPays de l’utilisateur désigné par deux lettres selon la norme ISO 3166-1 alpha-2. Ce paramètre influe sur le choix de la langue et de la devise. Si ce paramètre n’est pas passé, le pays est déterminé par l’adresse IP de l’utilisateur.
Copy
Full screen
Small screen
    curl -X 'GET' \
    'https://subscriptions.xsolla.com​/api/user/v1/projects/{project_id}/products/{​​productId}/plans?country=RU  ' \
      -H 'accept: application/json' \
      -H 'Authorization: Bearer client_user_jwt'
    
    Copy
    Full screen
    Small screen
    {
      "items": [
        {
          "plan_id": 54321,
          "plan_external_id": "PlanExternalId",
          "plan_group_id": "TestGroupId",
          "plan_type": "all",
          "plan_name": "Localized plan name",
          "plan_description": "Localized plan description",
          "plan_start_date": "2021-04-11T13:51:02+03:00",
          "plan_end_date": "2031-04-11T13:51:02+03:00",
          "trial_period": 7,
          "period": {
            "value": 1,
            "unit": "month"
          },
          "charge": {
            "amount": 4.99,
            "setup_fee": 0.99,
            "currency": "USD"
          },
          "promotion": {
            "promotion_charge_amount": 3.99,
            "promotion_remaining_charges": 3
          }
        }
      ],
      "has_more": false
    }
    

    Méthode côté client pour obtenir la liste des plans

    Côté client de votre application, utilisez une requête HTTP GET pour implémenter l’obtention de la liste des plans : https://subscriptions.xsolla.com​/api/user/v1/projects/{project_id}/plans.

    La requête doit contenir un en-tête Authorization: Bearer <client_user_jwt>, où <client_user_jwt> est le JSON Web Token (JWT) de l’utilisateur, un jeton unique encodé conformément à la norme Base64. Pour obtenir le jeton :

    Spécifiez projectId, l’ID de projet, comme paramètre de chemin. Ce paramètre se trouve dans le Compte éditeur à côté du nom du projet.

    Spécifiez comme paramètres de requête :

    ParamètreTypeDescription
    plan_id
    array of integersID du plan.
    plan_external_id
    array of stringsIdentifiant externe du plan. S’obtient dans le Compte éditeur sous la section Subscriptions > Subscription plans > votre plan ou via l’appel API Lire les plans.
    limit
    integerLimite du nombre d’éléments sur la page. 15 éléments sont affichés par défaut.
    offset
    integerNuméro de l’élément à partir duquel la liste est générée. Par défaut, le décompte commence à 0.
    locale
    stringLangue de l’interface désignée par deux lettres minuscules. Accepte des valeurs selon la norme ISO 639-1. Si ce paramètre n’est pas passé, la langue est déterminée par l’adresse IP de l’utilisateur.
    Valeurs possibles :
    • ar — Arabe
    • bg — Bulgare
    • cn — Chinois (Simplifié)
    • cs — Tchèque
    • de — Allemand
    • en — Anglais
    • es — Espagnol
    • fr — Français
    • he — Hébreu
    • it — Italien
    • ja — Japonais
    • ko — Coréen
    • pl — Polonais
    • pt — Portugais
    • ro — Roumain
    • ru — Russe
    • th — Thaïlandais
    • tr — Turc
    • tw — Chinois (Traditionnel)
    • vi — Vietnamien
    Si une langue qui ne figure pas dans la liste de Xsolla est spécifiée, l’anglais est utilisé.
    country
    stringPays de l’utilisateur désigné par deux lettres selon la norme ISO 3166-1 alpha-2. Ce paramètre influe sur le choix de la langue et de la devise. Si ce paramètre n’est pas passé, le pays est déterminé par l’adresse IP de l’utilisateur.
    Copy
    Full screen
    Small screen
      curl -X 'GET' \
      'https://subscriptions.xsolla.com​/api/user/v1/projects/{project_id}/plans?country=RU  ' \
        -H 'accept: application/json' \
        -H 'Authorization: Bearer client_user_jwt'
        
      
      Copy
      Full screen
      Small screen
      {
        "items": [
          {
            "plan_id": 54321,
            "plan_external_id": "PlanExternalId",
            "plan_group_id": "TestGroupId",
            "plan_type": "all",
            "plan_name": "Localized plan name",
            "plan_description": "Localized plan description",
            "plan_start_date": "2021-04-11T13:51:02+03:00",
            "plan_end_date": "2031-04-11T13:51:02+03:00",
            "trial_period": 7,
            "period": {
              "value": 1,
              "unit": "month"
            },
            "charge": {
              "amount": 4.99,
              "setup_fee": 0.99,
              "currency": "USD"
            },
            "promotion": {
              "promotion_charge_amount": 3.99,
              "promotion_remaining_charges": 3
            }
          }
        ],
        "has_more": false
      }
      

      Au moyen de Xsolla Pay Station

      1. Implémentez l’obtention du jeton via l’appel API côté serveur Créer un jeton. Passez les paramètres suivants dans la requête :
        • user.id — ID de l’utilisateur dans votre système d’autorisation ;
        • user.email — adresse e-mail de l’utilisateur. Doit être valide selon le protocole RFC 822 ;
        • settings.project_id — ID du projet. Ce paramètre se trouve dans le Compte éditeur à côté du nom du projet.
      2. Implémentez l’option d’ouverture de l’interface de paiement :
      Copy
      Full screen
      Small screen
      {
          "user": {
              "name": {
                  "value": "j.smith@email.com"
              },
              "id": {
                  "value": "123a345b678c091d"
              }
          },
          "settings": {
              "project_id": 177226
          }
      }
      

      Exemple d’affichage du catalogue des abonnements dans Xsolla Pay Station :

      Au moyen de Xsolla Site Builder

      Xsolla Site Builder vous permet de créer et de configurer votre site pour la vente d’abonnements. Pour ce faire, créez un site en utilisant le modèle Web Shop. Pour plus d’informations sur la configuration des rôles, consultez les instructions pour le magasin en ligne avec authentification utilisateur.

      Votre progression
      Merci pour votre commentaire !
      Dernière mise à jour: 22 Janvier 2024

      Faute de frappe ou autre erreur dans le texte ? Sélectionnez le texte concerné et appuyez sur Ctrl+Entée.

      Signaler un problème
      Nous améliorons continuellement notre contenu grâce à vos commentaires.
      Indiquez votre adresse e-mail pour un suivi
      Merci pour votre commentaire !