Retour à l'Academy
Guide Technique

Configurer les Webhooks GeniusPay sur WordPress

3 Février 2026
5 min de lecture
Niveau: Débutant
Problème fréquent: Votre client a payé via GeniusPay, le paiement apparaît comme validé dans votre Dashboard, mais la commande WooCommerce reste bloquée en statut "En attente de paiement" ?

Ce guide vous montre comment résoudre définitivement ce problème en configurant correctement les webhooks.

🎯 Qu'est-ce qu'un Webhook ?

Un webhook est une notification automatique envoyée par GeniusPay à votre site WordPress dès qu'un paiement est validé. C'est le "messager" qui informe WooCommerce que l'argent a bien été reçu.

Sans webhook configuré : GeniusPay reçoit le paiement mais ne peut pas prévenir votre site → La commande reste "en attente".
Avec webhook configuré : GeniusPay → informe votre site → Commande passe en "Traitement" ou "Terminée" ✅

🔍 Comprendre les 2 Environnements

Mode Live (Production)

  • Utilisation : Vos vrais clients, vrais paiements
  • Clés API : Commencent par pk_live_... et sk_live_...
  • Secret Webhook : Champ "Secret Webhook Live"

Mode Sandbox (Test)

  • Utilisation : Vos tests avant mise en production
  • Clés API : Commencent par pk_sandbox_... et sk_sandbox_...
  • Secret Webhook : Champ "Secret Webhook Sandbox"
Important : Chaque environnement a son propre secret webhook. Vous devez configurer les deux si vous testez ET si vous êtes en production.

🛠️ Configuration Étape par Étape

Étape 1 : Télécharger la Dernière Version du Plugin

  1. Connectez-vous à votre Dashboard GeniusPay
  2. Allez dans Paramètres → Intégrations → WordPress/WooCommerce
  3. Téléchargez le fichier geniuspay-woocommerce.zip
Version minimum requise : 1.0.2 (support webhooks Sandbox inclus)

Étape 2 : Installer/Mettre à Jour le Plugin

Sur votre site WordPress :

  1. Allez dans Extensions → Ajouter
  2. Cliquez sur Téléverser une extension
  3. Sélectionnez le fichier geniuspay-woocommerce.zip
  4. Cliquez sur Installer maintenant
  5. Activez le plugin

Étape 3 : Créer vos Webhooks dans GeniusPay

A. Webhook Live (Production)

  1. Dans le Dashboard GeniusPay, allez dans Paramètres → Webhooks
  2. Assurez-vous que le mode est sur Live (coin supérieur droit)
  3. Cliquez sur + Créer un Webhook
  4. Remplissez les champs :
    • Nom : WooCommerce Production
    • URL : https://votresite.com/?wc-api=geniuspay_webhook
    • Événements : Cochez au minimum :
      • ✅ payment.success
      • ✅ payment.failed
      • ✅ payment.cancelled
  5. Cliquez sur Créer
  6. ⚠️ IMPORTANT : Copiez le Secret Webhook affiché (il ne sera montré qu'une seule fois)

B. Webhook Sandbox (Tests)

  1. Changez le mode en Sandbox (coin supérieur droit)
  2. Répétez les mêmes étapes que pour le webhook Live
  3. Copiez également le Secret Webhook Sandbox
Astuce : L'URL du webhook est la même pour Live et Sandbox. Seul le secret change !

Étape 4 : Configurer le Plugin WordPress

Sur WordPress, allez dans WooCommerce → Paramètres → Paiements → GeniusPay

Configuration Générale

☑️ Activer GeniusPay
☑️ Activer le mode Sandbox (pour vos tests)

Titre: GeniusPay - Mobile Money & Carte Bancaire
Description: Payez par Wave, Orange Money, MTN, Moov ou Carte

Clés API Sandbox

Clé Publique Sandbox: pk_sandbox_xxxxxxxxxxxxx
Clé Secrète Sandbox: sk_sandbox_xxxxxxxxxxxxx
Secret Webhook Sandbox: whs_sandbox_yyyyyyyyyyy  ← Collez le secret copié

Clés API Live

Clé Publique Live: pk_live_xxxxxxxxxxxxx
Clé Secrète Live: sk_live_xxxxxxxxxxxxx
Secret Webhook Live: whs_live_yyyyyyyyyyy  ← Collez le secret copié

Cliquez sur Enregistrer les modifications

✅ Tester la Configuration

Test en Mode Sandbox

  1. Assurez-vous que Mode Sandbox est activé dans les paramètres
  2. Créez une commande test sur votre site
  3. Sélectionnez GeniusPay comme mode de paiement
  4. Complétez le paiement (choisissez le scénario "Success")
  5. Attendez 2-3 secondes
  6. Résultat attendu : La commande passe automatiquement en "Traitement"

Vérifier les Logs Webhook

Pour voir si les webhooks arrivent bien :

  1. Sur WordPress : WooCommerce → État → Journaux
  2. Sélectionnez le journal geniuspay-xxxx-xx-xx
  3. Recherchez des lignes comme :
    Info Webhook received
    Info Order #12345 marked as paid (Sandbox)

Vérifier Côté GeniusPay

  1. Dashboard GeniusPay → Paramètres → Webhooks
  2. Cliquez sur votre webhook
  3. Consultez l'onglet Historique
  4. Statut 200 ✅ : Le webhook a été reçu avec succès
  5. Statut 40x ou 50x ❌ : Problème de configuration

🐛 Résolution des Problèmes

Problème : Les webhooks n'arrivent pas

Causes possibles :
  • URL de webhook incorrecte (vérifiez qu'elle contient bien ?wc-api=geniuspay_webhook)
  • Plugin pas à jour (téléchargez la version 1.0.2 minimum)
  • Pare-feu bloquant les requêtes de GeniusPay
  • SSL non configuré (votre site doit être en HTTPS)

Problème : Erreur "Signature invalide"

Solution :
  • Vérifiez que vous avez copié le bon secret webhook
  • En mode Sandbox, utilisez le Secret Webhook Sandbox
  • En mode Live, utilisez le Secret Webhook Live
  • Supprimez les espaces avant/après le secret lors du copier-coller

Problème : Fonctionne en Sandbox mais pas en Live

  1. Désactivez le Mode Sandbox dans les paramètres WooCommerce
  2. Vérifiez que vos clés Live sont correctement renseignées
  3. Vérifiez que le webhook Live est bien créé dans GeniusPay (mode Live)
  4. Vérifiez que le Secret Webhook Live est correct

📹 Tutoriel Vidéo

Préférez une démonstration visuelle ?

Voir la vidéo complète

🎓 Cas d'Usage Réel

Ticket Support #TKT-0170B602

Problème : "Le paiement est validé chez vous mais sur WooCommerce la commande est toujours en attente de paiement"

Cause : Le marchand testait en mode Sandbox mais le plugin ne supportait pas encore les webhooks Sandbox (version 1.0.1)

Solution : Mise à jour vers la version 1.0.2 + Configuration du Secret Webhook Sandbox → Problème résolu en quelques minutes ✅

📋 Checklist de Vérification

  • ☑️ Plugin GeniusPay version 1.0.2 ou supérieure installé
  • ☑️ Webhook Live créé dans le Dashboard GeniusPay (mode Live)
  • ☑️ Webhook Sandbox créé dans le Dashboard GeniusPay (mode Sandbox)
  • ☑️ Secret Webhook Live copié dans WordPress
  • ☑️ Secret Webhook Sandbox copié dans WordPress
  • ☑️ URL de webhook correcte : https://votresite.com/?wc-api=geniuspay_webhook
  • ☑️ Site en HTTPS (certificat SSL valide)
  • ☑️ Test effectué avec une commande en mode Sandbox
  • ☑️ Logs WordPress montrent "Webhook received"
  • ☑️ Dashboard GeniusPay montre statut 200 pour les webhooks envoyés

💡 Bonnes Pratiques

  • Testez toujours en Sandbox avant de passer en production
  • Ne partagez jamais vos secrets webhook (ils sont aussi sensibles que vos clés API)
  • Surveillez les logs régulièrement pour détecter les problèmes rapidement
  • Mettez à jour le plugin dès qu'une nouvelle version est disponible
  • Gardez les deux webhooks actifs (Live et Sandbox) pour pouvoir tester à tout moment

🆘 Besoin d'Aide ?

Si vous rencontrez des difficultés après avoir suivi ce guide :

  1. Consultez notre documentation technique complète
  2. Rejoignez notre communauté Discord
  3. Ouvrez un ticket support depuis votre Dashboard
Support technique disponible :
Lundi - Vendredi : 8h - 20h (GMT)
Temps de réponse moyen : < 2 heures