WHMCS
Module addon officiel CaptchaLa pour WHMCS. Ajoute la vérification CAPTCHA à l'espace client WHMCS — connexion, inscription, réinitialisation de mot de passe, formulaire de contact, soumission de ticket et validation du panier — sans écrire la moindre ligne de code.
Contrairement à un simple widget avec site-key, chaque challenge est adossé à un token à usage unique émis par le serveur (anti-rejeu), et aucun traceur tiers n'est chargé.
Ce qui est couvert
Chaque surface ci-dessous est un interrupteur individuel dans les réglages du module — n'activez que celles que vous souhaitez protéger.
- Connexion
- Inscription
- Réinitialisation de mot de passe
- Formulaire de contact
- Soumission de ticket
- Validation du panier
Prérequis
- WHMCS 8.x et 9.x (testé sur l'espace client 8.3 et 9.0 ; fonctionne avec les thèmes
sixettwenty-one, avec ou sans Friendly URLs) - PHP 8.0+ (WHMCS 9.0 lui-même nécessite PHP 8.2+)
- Un compte CaptchaLa — récupérez votre App Key + App Secret sur
dash.captcha.la
Installation
1. Installer le module
- Téléchargez le dernier
whmcs-x.y.z.zipdepuis les releases. - Extrayez-le dans votre répertoire racine WHMCS. Cela ajoute
modules/addons/captchala/. - Dans l'administration WHMCS, allez dans Setup → Addon Modules, trouvez CaptchaLa et cliquez sur Activate.
2. Configurer
Cliquez sur Configure, puis :
- Collez votre App Key et votre App Secret.
- Choisissez un Widget mode et un Theme.
- Activez les formulaires à protéger.
- Cliquez sur Save Changes.
Ouvrez la page CaptchaLa dans le menu latéral de l'administration pour exécuter un test de connexion en direct avec le tableau de bord.
TIP
Après activation, si le widget n'apparaît pas, ré-enregistrez les réglages du module une fois — WHMCS n'enregistre le hooks.php d'un module que lorsque celui-ci est (ré)activé/enregistré.
Configuration
Tous les réglages se trouvent sous Setup → Addon Modules → CaptchaLa → Configure.
| Réglage | Type | Valeur par défaut | Description |
|---|---|---|---|
| App Key | string | — | Clé publique issue du tableau de bord CaptchaLa. Obligatoire. |
| App Secret | string | — | Secret serveur, utilisé pour émettre et valider les tokens. Obligatoire ; jamais exposé au navigateur. |
| Widget mode | enum | popup | popup (barre déclencheuse → challenge plein écran), float (panneau inline), embed (case inline), bind (invisible, intercepte la soumission). |
| Theme | enum | default | Préréglage de couleur : default, dark, slate, emerald, amber, rose. |
| Language | string | auto | Code BCP-47 (p. ex. en, zh, de) ou auto pour suivre le navigateur. |
| Protect login | bool | on | Applique le challenge à la connexion de l'espace client. |
| Protect registration | bool | on | Applique le challenge à l'inscription de nouveaux comptes. |
| Protect password reset | bool | on | Applique le challenge au formulaire de réinitialisation de mot de passe. |
| Protect contact form | bool | off | Applique le challenge au formulaire de contact. |
| Protect ticket submission | bool | off | Applique le challenge à l'étape finale de soumission de ticket. |
| Protect cart checkout | bool | off | Applique le challenge à la validation du panier. |
| Skip for logged-in users | bool | on | N'applique pas le challenge aux visiteurs disposant déjà d'une session client. |
| Failure message | string | — | Message affiché lorsque la vérification échoue. |
Comment ça marche
Sur chaque page de formulaire protégé, le module émet un nouveau token serveur (sct_) depuis le tableau de bord, limité à l'action de ce formulaire, et affiche le widget qui lui est lié. Une fois que le visiteur a résolu le challenge, le SDK écrit un token de passage à usage unique (pt_) dans le formulaire. À la soumission, le module valide ce pt_ côté serveur avant que WHMCS ne traite le formulaire ; les rejeux et les incohérences d'action sont rejetés.
Si le tableau de bord est temporairement injoignable, le module échoue en mode ouvert (laisse passer la soumission) afin que votre espace client ne soit jamais bloqué par un incident en amont.
FAQ
Le module est-il gratuit ?
Oui. Le module est gratuit. L'offre gratuite CaptchaLa couvre 10 000 vérifications par mois — les offres payantes ne s'appliquent que si vous avez besoin de plus de volume.
Fonctionne-t-il à la fois sur WHMCS 8 et 9 ?
Oui — testé sur l'espace client 8.3 et 9.0, avec les thèmes six et twenty-one, avec ou sans Friendly URLs.
Le widget n'apparaît pas.
Ré-enregistrez les réglages du module une fois (Configure → Save Changes). WHMCS n'enregistre le hooks.php que lorsque le module est (ré)activé/enregistré.
Sources
- Dépôt du module :
github.com/Captcha-La/captchala-whmcs - Problèmes / demandes de fonctionnalités : ouverts sur le dépôt ci-dessus
- À voir aussi : SDK Web · SDK serveur PHP · Référence de l'API