• France
état des services
démonstrations
assistance
FAQContacter le support
Video tutorials
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 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
Exemples de code
Moyens de paiement
Modules de paiement
Guides
Back Office Marchand
Guides fonctionnels

Calculer la signature

Afin de pouvoir calculer la valeur du champ signature vous devez être en possession :
  • de la totalité des champs dont le nom commence par vads_
  • du type d'algorithme choisi dans la configuration de la boutique
  • de la clé

La valeur de la clé est disponible dans votre Back Office Marchand depuis le menu Paramétrage > Boutique > onglet Clés.

Le type d'algorithme est défini dans votre Back Office Marchand depuis le menu Paramétrage > Boutique > onglet Configuration.

Pour un maximum de sécurité, il est recommandé d'utiliser l'algorithme HMAC-SHA-256 ainsi qu'une clé alphanumérique.

L'utilisation de l'algorithme SHA-1 est dépréciée mais maintenue pour des raisons de compatibilité.

Attention vous ne devez pas utiliser les clés d'API REST pour calculer la signature de votre formulaire de paiement.

Seule l'utilisation de l'algorithme HMAC-SHA-256 est implémentée dans notre exemple de code.

Pour calculer la signature :

  1. Triez les champs dont le nom commence par vads_ par ordre alphabétique.
  2. Assurez-vous que tous les champs soient encodés en UTF-8.
  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 "+".
  5. Selon l'algorithme de signature défini dans la configuration de votre boutique:
    1. si votre boutique est configurée pour utiliser "SHA-1", appliquez la fonction de hachage SHA-1 sur la chaîne obtenue à l'étape précédente. Déprécié.
    2. si votre boutique est configurée pour utiliser "HMAC-SHA-256", calculez et encodez au format Base64 la signature du message en utilisant l'algorithme HMAC-SHA-256 avec les paramètres suivants:
      • la fonction de hachage SHA-256,
      • la clé de test ou de production (en fonction de la valeur du champ vads_ctx_mode) comme clé partagée,
      • le résultat de l'étape précédente comme message à authentifier.
  6. Sauvegardez le résultat de l'étape précédente dans le champ signature.
Exemple de paramètres envoyés à la plateforme de paiement:
<form method="POST" action="https://sogecommerce.societegenerale.eu/vads-payment/entry.silentInit.a">
<input type="hidden" name="vads_action_mode" value="INTERACTIVE" />
<input type="hidden" name="vads_amount" value="5124" />
<input type="hidden" name="vads_ctx_mode" value="TEST" />
<input type="hidden" name="vads_currency" value="978" />					
<input type="hidden" name="vads_page_action" value="PAYMENT" />
<input type="hidden" name="vads_payment_config" value="SINGLE" />
<input type="hidden" name="vads_site_id" value="12345678" />
<input type="hidden" name="vads_trans_date" value="20170129130025" />
<input type="hidden" name="vads_trans_id" value="123456" />
<input type="hidden" name="vads_version" value="V2" />
<input type="hidden" name="signature" value="ycA5Do5tNvsnKdc/eP1bj2xa19z9q3iWPy9/rpesfS0="/>					
<input type="submit" name="payer" value="Payer"/>
</form>

Cet exemple de formulaire s'analyse de la manière suivante:

  1. On trie par ordre alphabétique les champs dont le nom commence par vads_ :
    • vads_action_mode
    • vads_amount
    • vads_ctx_mode
    • vads_currency
    • vads_page_action
    • vads_payment_config
    • vads_site_id
    • vads_trans_date
    • vads_trans_id
    • vads_version
  2. On concatène la valeur de ces champs avec le caractère "+" :
    INTERACTIVE+5124+TEST+978+PAYMENT+SINGLE+12345678+20170129130025+123456+V2
  3. On ajoute la valeur de la clé de test à la fin de la chaîne en la séparant par le caractère "+". Dans cet exemple, la clé de test est 1122334455667788
    INTERACTIVE+5124+TEST+978+PAYMENT+SINGLE+12345678+20170129130025+123456+V2+1122334455667788
  4. Si vous utilisez l’algorithme SHA-1, appliquez le à la chaîne obtenue.

    Le résultat à transmettre dans le champ signature est : 59c96b34c74b9375c332b0b6a32e6deeec87de2b

  5. Si votre boutique est configurée pour utiliser "HMAC-SHA-256", calculez et encodez au format Base64 la signature du message en utilisant l'algorithme HMAC-SHA-256 avec les paramètres suivants:
    • la fonction de hachage SHA-256,
    • la clé de test ou de production (en fonction de la valeur du champ vads_ctx_mode) comme clé partagée,
    • le résultat de l'étape précédente comme message à authentifier.

    Le résultat à transmettre dans le champ signature est :

    ycA5Do5tNvsnKdc/eP1bj2xa19z9q3iWPy9/rpesfS0=

© 2025 Tous droits réservés à Sogecommerce
25.18-1.11