Vérifier l'en-tête SOAP dans la réponse

Pour vous assurer que la réponse provient de la plateforme de paiement vous devez vérifier la valeur du jeton d'authentification reçu.

Pour cela, recalculez le jeton d'authentification :

  1. Récupérez les valeurs de shopId, timestamp, requestId, mode et authToken dans l'en-tête SOAP de la réponse.
  2. Concaténez les attributs timestamp et requestId sans séparateur.
    Attention, l'ordre est inversé par rapport à la requête.

    Exemple de résultat de concaténation avec :

    • timestamp = 2014-10-31T16:38:19Z
    • requestId = 04967dae-af01-43ff-a7d8-f3f228b9b1c2
      "2014-10-31T16:38:19Z04967dae-af01-43ff-a7d8-f3f228b9b1c"
  3. Appliquez l'algorithme HMAC_SHA256 sur la chaîne obtenue en utilisant la valeur de la clé de test ou de production (en fonction de la valeur de mode) comme clé partagée.
  4. Encodez le résultat en Base64.
  5. Comparez la valeur de authToken présent dans l'en-tête SOAP HEADER avec celle calculée.
Résultat :

Si les valeurs diffèrent, le marchand analyse l'origine de l'erreur (erreur dans le calcul, fraude...).

Remarque : le requestId transmis dans l'en-tête de la réponse sera identique à celui transmis dans la requête par le site marchand.