Créer un bouton “Se connecter à Inqom” dans votre application

Intégration d'un bouton de connexion “Se connecter à Inqom” pour permettre à vos utilisateurs de se connecter à leur compte Inqom via le protocole OAuth2 Authorization Code, sans avoir à saisir leurs identifiants directement dans votre interface.

🔁 Flow fonctionnel

  1. Clic sur le bouton “Se connecter à Inqom” → Redirection vers l’Identity Provider Inqom (/authorize).
  2. Connexion de l’utilisateur → L’utilisateur saisit ses identifiants Inqom et s’authentifie.
  3. Redirection vers votre redirect_uri → Inqom renvoie un code d’autorisation dans la query string.
  4. Échange du code contre des tokens → Votre serveur appelle /identity/connect/token avec le code reçu.
  5. Connexion automatique sur Inqom (SSO) → Ouvrez un nouvel onglet vers https://home.inqom.com/home (ou autre url), l’utilisateur est reconnu et connecté sans manipulation supplémentaire.

⚙️ Étapes d’intégration détaillées

1. Rediriger vers l’endpoint d’autorisation

Endpoints :

  • Staging : https://auth-staging.inqom.com/identity/connect/authorize

  • Production : https://auth.inqom.com/identity/connect/authorize

Méthode : GET

Paramètres requis :

Paramètre

Description Exemple

response_type

Type de réponse attendu

code

client_id

Identifiant client (fourni par Inqom)

sandboxAuthorizationCode

redirect_uri

URL de retour vers votre application

http://localhost:8080

scope

Périmètre d’accès

openid email offline_access apidata accountingdocumentsapi

state

Valeur aléatoire pour corréler la requête et la réponse

state245135413

Exemple :

https://auth-staging.inqom.com/identity/connect/authorize?
response_type=code&
client_id=SandboxAuthorizationCode&
redirect_uri=http%3A%2F%2Flocalhost%3A8080&
scope=openid%20email%20offline_access%20apidata%20accountingdocumentsapi&
state=state245135413

2. Récupérer le code d’autorisation

Une fois connecté, l’utilisateur est redirigé vers votre redirect_uri :

https://votre-app.fr/callback?code=c1af8458041477eddc801f465c116bae&state=state245135413

Votre application doit extraire la valeur du paramètre code.

3. Échanger le code contre des tokens

Endpoint :

POST https://auth-staging.inqom.com/identity/connect/token

Headers :

Content-Type: application/x-www-form-urlencoded

Body :

grant_type=authorization_code
code=<authorization_code>
redirect_uri=<redirect_uri>
client_id=<client_id>
client_secret=<client_secret>

Exemple concret :

curl -X POST https://auth-staging.inqom.com/identity/connect/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=authorization_code" \
  -d "client_id=SandboxAuthorizationCode" \
  -d "client_secret=C8hXEbmW23vNpoV7Zi13" \
  -d "code=c1af8458041477eddc801f465c116bae" \
  -d "redirect_uri=http://localhost:8080"

Réponse :

{
  "id_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIs...",
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIs...",
  "expires_in": 31104000,
  "token_type": "Bearer",
  "refresh_token": "525f6b5ea84"
}

4. Ouvrir la session Inqom (SSO)

Une fois l’utilisateur authentifié, ouvrez un nouvel onglet vers l'url d'atterrissage Inqom souhaitée (https://home.inqom.com/home par exemple).

Aucune donnée d’authentification n’a besoin d’être transmise, la session SSO créée à l’étape 1 permettra à Inqom de reconnaître l’utilisateur et de le connecter automatiquement.