Comparer les signatures

Pour s’assurer de l’intégrité de la réponse, vous devez comparer la signature contenue dans l'IPN avec la valeur calculée à l'étape précédente.

IMPORTANT
Il ne faut pas comparer la signature de l'IPN avec la signature que vous avez transmis dans votre demande de paiement.
Si les signatures correspondent,
  • alors vous pouvez considérer la réponse comme sûre et procéder à la suite de l’analyse.
  • sinon, le script devra lever une exception et avertir le marchand de l'anomalie.

Exemple PHP:
if ($_POST['signature'] == $sign){
						
    //Processing data

}else{
    throw new Exception('An error occurred while computing the signature');
}

Les signatures ne correspondent pas en cas :

  • d'erreur d'implémentation (erreur dans votre calcul, problème d’encodage UTF-8, etc.),
  • d'erreur dans la valeur de la clé utilisée ou dans celle du champ vads_ctx_mode (problème fréquent lors du passage en production),
  • de tentative de corruption des données.