• France
état des services
démonstrations
assistance
FAQContacter le support
Video tutorials
Rechercher
Catégories
Tags
France
France
Espagne
Europe (Anglais)
Inde
Accueil
Cas d'usage
Créer un paiement
Créer un paiement en plusieurs fois
Proposer un paiement complémentaire
Créer un paiement par alias (token)
Créer un lien de paiement
Créer un abonnement
Gérer vos abonnements
Gérer vos transactions (rembourser,...)
Analyser vos journaux
Docs API
Formulaire embarqué
API REST
Formulaire en redirection
SDK Mobile
Échange de fichiers
Mandats SEPA par API REST
Exemples de code
Moyens de paiement
Modules de paiement
Marketplace
Guides
Back Office Marchand
Back Office Expert
Guides fonctionnels

S’authentifier

L'authentification se fait en mode OAuth2. Vous devez avoir un compte technique d'accès au Back Office Marchand.

  1. Connectez-vous au Back Office Marchand avec vos propres identifiants d'accès.
  2. En haut et à droite de l'écran, faites apparaître le menu déroulant sous votre nom, et cliquez sur Paramètres.
  3. Cliquez sur l'onglet Clé API, pour récupérer vos clés pour les environnements de test et de production.
  4. Pour générer un jeton d'authentification, effectuez une requête POST à l'adresse suivante :

    https://account.lyra.com/auth/realms/marketplace/protocol/openid-connect/token

    Il s’agit de la même adresse pour les deux environnements.

  5. Utilisez les paramètres suivants au format application/x-www-form-urlencoded :
    • grant_type: client_credentials
    • client_id: <CLIENT_ID>
    • client_secret: <CLIENT_SECRET>
  6. Vous pouvez maintenant créer une requête qui récupérera les informations de votre marketplace de test. Pour cela :
    • Copiez le jeton d'authentification (access_token) dans le header Authorization: Bearer {access_token}
    • Envoyez votre requête à l'adresse de l'environnement

      https://secure.lyra.om/marketplace-test/v1/marketplaces/{marketplace_uuid}

      Exemple :

      https://secure.lyra.com/marketplace-test/v1/marketplaces/57595c55-b096-41d8-9287-b98640de3f25

     Le jeton d'authentification a une durée de vie de 5 minutes, et notez que le refresh token n'est pas utilisé dans le cadre de la marketplace.

    Vous devez mettre en place une méthode allant récupérer un nouveau jeton au maximum toutes les 300 secondes (cf. exemple en PHP ci-dessous)

    Une requête soumise avec un jeton d'authentification expiré sera rejetée avec un code HTTP 307.

    Exemple d'obtention du jeton d'authentification en PHP

    <?php
    require 'vendor/autoload.php';
    use GuzzleHttp\Client;
    $MARKETPLACE_UUID = "57595c55-b096-41d8-9287-b98640de3f25";
    $USERNAME = 'ksparkles';
    $CLIENT_ID = $USERNAME."_".$MARKETPLACE_UUID;
    $CLIENT_SECRET = "e0d999f6-01d8-4ef9-8f9b-0fc5fa08f1a5";
    $AUTH_URL = "https://account.lyra.com/auth/realms/marketplace/protocol/openid-connect/";
    $API_URL = "https://secure.lyra.com/marketplace-test/v1/";
    session_start();
    function getAccessToken() {
        global $AUTH_URL, $CLIENT_ID, $CLIENT_SECRET;
        $expire_next = $_SESSION['expires_next'];
        if (!$_SESSION['token'] || !$expire_next || time() >= $expire_next - 2) {
            $client = new Client(["base_uri" => $AUTH_URL]);
            $response = $client->request('POST', 'token',
                ['form_params' => [
                    'grant_type' => 'client_credentials',
                    'client_id' => $CLIENT_ID,
                    'client_secret' => $CLIENT_SECRET
                ]]
            );
            $body = $response->getBody();
            $data = json_decode($body->getContents());
            $_SESSION['token'] = $data->access_token;
            $_SESSION['expires_next']= time() + $data->expires_in;
        }
        return $_SESSION['token'];
    }
    function getMarketplaceDetails() {
        global $API_URL, $MARKETPLACE_UUID;
        $token = getAccessToken();
        $client = new Client(["base_uri" => $API_URL]);
        $response = $client->request('GET', "marketplaces/$MARKETPLACE_UUID",
            ['headers' => ['Authorization' => "Bearer $token"]]
        );
        $body = $response->getBody();
        return $body->getContents();
    }
    echo getMarketplaceDetails();
Nous recrutons
Mentions légales
Charte de Protection des Données Personnelles
25.18-1.11