• France
état des services
démonstrations
assistance
FAQContacter le support
Tutoriels vidéo
Rechercher
Catégories
Tags
Français
Français
Anglais
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 paiement à l'expédition
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
Intégration mobile
Échange de fichiers
Mandats SEPA par API REST
Exemples de code
Moyens de paiement
Modules de paiement
Guides
Back Office Marchand
Guides fonctionnels

Calculer la signature de l'IPN

La signature se calcule selon la même logique utilisée lors de la demande de paiement.

 Les données transmises par la plateforme de paiement sont encodées en UTF-8. Toute altération des données reçues aboutira à un calcul de signature erroné.

Vous devez calculer la signature avec les champs reçus dans la notification et pas ceux que vous avez transmis dans la demande de paiement.

  1. Prenez en considération la totalité des champs dont le nom commence par vads_.
  2. Triez ces champs par ordre alphabétique.
  3. Concaténez les valeurs de ces champs en les séparant avec le caractère "+".
  4. Concaténez le résultat avec la clé de test ou de production en les séparant avec le caractère "+".
Exemples en PHP
function getSignature ($params,$key)
{
    /**
     * Fonction qui calcule la signature.
     * $params : tableau contenant les champs reçus dans l'IPN.
     * $key : clé de TEST ou de PRODUCTION
     */
    //Initialisation de la variable qui contiendra la chaine à chiffrer
    $contenu_signature = "";
    //Tri des champs par ordre alphabétique
    ksort($params);
    foreach($params as $nom=>$valeur){
        //Récupération des champs vads_
        if (substr($nom,0,5)=='vads_'){
            //Concaténation avec le séparateur "+"
            $contenu_signature .= $valeur."+";
         }
    }
    //Ajout de la clé en fin de chaine
    $contenu_signature .= $key;
    //Encodage base64 de la chaine chiffrée avec l'algorithme HMAC-SHA-256
    $sign = base64_encode(hash_hmac('sha256',$contenu_signature, $key, true));
    return $sign;
 }
© 2025 Tous droits réservés à Monetico Retail
25.25.0-1.11