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_...etsk_live_... - Secret Webhook : Champ "Secret Webhook Live"
Mode Sandbox (Test)
- Utilisation : Vos tests avant mise en production
- Clés API : Commencent par
pk_sandbox_...etsk_sandbox_... - Secret Webhook : Champ "Secret Webhook Sandbox"
🛠️ Configuration Étape par Étape
Étape 1 : Télécharger la Dernière Version du Plugin
- Connectez-vous à votre Dashboard GeniusPay
- Allez dans Paramètres → Intégrations → WordPress/WooCommerce
- Téléchargez le fichier
geniuspay-woocommerce.zip
Étape 2 : Installer/Mettre à Jour le Plugin
Sur votre site WordPress :
- Allez dans Extensions → Ajouter
- Cliquez sur Téléverser une extension
- Sélectionnez le fichier
geniuspay-woocommerce.zip - Cliquez sur Installer maintenant
- Activez le plugin
Étape 3 : Créer vos Webhooks dans GeniusPay
A. Webhook Live (Production)
- Dans le Dashboard GeniusPay, allez dans Paramètres → Webhooks
- Assurez-vous que le mode est sur Live (coin supérieur droit)
- Cliquez sur + Créer un Webhook
- 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
- Nom :
- Cliquez sur Créer
- ⚠️ IMPORTANT : Copiez le
Secret Webhookaffiché (il ne sera montré qu'une seule fois)
B. Webhook Sandbox (Tests)
- Changez le mode en Sandbox (coin supérieur droit)
- Répétez les mêmes étapes que pour le webhook Live
- Copiez également le
Secret Webhook Sandbox
É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
- Assurez-vous que Mode Sandbox est activé dans les paramètres
- Créez une commande test sur votre site
- Sélectionnez GeniusPay comme mode de paiement
- Complétez le paiement (choisissez le scénario "Success")
- Attendez 2-3 secondes
- Résultat attendu : La commande passe automatiquement en "Traitement"
Vérifier les Logs Webhook
Pour voir si les webhooks arrivent bien :
- Sur WordPress : WooCommerce → État → Journaux
- Sélectionnez le journal
geniuspay-xxxx-xx-xx - Recherchez des lignes comme :
Info Webhook received Info Order #12345 marked as paid (Sandbox)
Vérifier Côté GeniusPay
- Dashboard GeniusPay → Paramètres → Webhooks
- Cliquez sur votre webhook
- Consultez l'onglet Historique
- Statut 200 ✅ : Le webhook a été reçu avec succès
- Statut 40x ou 50x ❌ : Problème de configuration
🐛 Résolution des Problèmes
Problème : Les webhooks n'arrivent pas
- 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"
- 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
- Désactivez le Mode Sandbox dans les paramètres WooCommerce
- Vérifiez que vos clés Live sont correctement renseignées
- Vérifiez que le webhook Live est bien créé dans GeniusPay (mode Live)
- 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 :
- Consultez notre documentation technique complète
- Rejoignez notre communauté Discord
- Ouvrez un ticket support depuis votre Dashboard
Lundi - Vendredi : 8h - 20h (GMT)
Temps de réponse moyen : < 2 heures