Phase d'authentification
Chaque appel requiert une authentification basée sur la méthode HTTP Basic Authentication.
Cette méthode utilise l'entête HTTP Authorization composé du mot Basic suivi par une chaine encodée en base64 contenant un nom d'utilisateur et un mot de passe séparés par deux-points (:).
- Le nom d'utilisateur est l'identifiant de la boutique : par exemple 28478261
- Le mot de passe est défini dans le
Back Office Marchand : par exemple testpassword_HDBz5YpANEajG4DwYSmkQDNM9lzGiuvrhY9f6G9HEm5do.
Le nom d'utilisateur et le mot de passe sont disponibles dans le
PARAMÈTRE | DESCRIPTION |
---|---|
Utilisateur | Nom d'utilisateur permettant de composer la chaîne du header Authorization |
Mot de passe de test | Mot de passe permettant de composer la chaine du header Authorization pour les transactions de tests (avec des cartes de test). |
Mot de passe de production | Mot de passe permettant de composer la chaine du header Authorization pour les transactions de production (avec des cartes réelles). |
Comment construire le header HTTP "Authorization"
- Créez une chaine de la forme nom d'utilisateur:mot de passe
73239078:testpassword_SbEbeOueaMDyg8Rtei1bSaiB5lms9V0ZDjzldGXGAnIwH
- Encodez la chaine obtenue en base64
Njk4NzYzNTc6dGVzdHBhc3N3b3JkX0RFTU9QUklWQVRFS0VZMjNHNDQ3NXpYWlEyVUE1eDdN
- Ajoutez à votre requête le header "Authorization" contenant "Basic" suivi de la chaine encodée en base64:
Authorization: Basic Njk4NzYzNTc6dGVzdHBhc3N3b3JkX0RFTU9QUklWQVRFS0VZMjNHNDQ3NXpYWlEyVUE1eDdN
En PHP, le header Authorization sera calculé de la façon suivante:
$header = "Authorization: Basic " . base64_encode($username . ':' . $password);
La requête HTTP complète ressemblera à :
/doc/fr-FR/rest/V4.0/api/kb/authentication.html
https://github.com/lyra/rest-php-examples/blob/master/www/SDKTest.php#L16-L26
https://api.systempay.fr/api-payment/V4/Charge/SDKTest
{ "value": "my testing value" }
Quelques liens utiles
Pour plus de détails sur l’implémentation dans différents langages, vous pouvez consulter les gists Gitub suivants..