Guide de migration

Migrer de reCAPTCHA vers CaptchaLa

Remplacement prêt à l'emploi en moins de 10 minutes. Gardez vos formulaires, changez de fournisseur de vérification. Compatible avec le HTML pur, WordPress, Flarum et n'importe quel backend.

GreCAPTCHACurrent setup~10 minCaptchaLaDrop-in target

À quoi ressemble le changement de code

Avant — reCAPTCHA v2
<div class="g-recaptcha" data-sitekey="YOUR_SITE_KEY"></div>
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
Après — CaptchaLa
<button id="login-btn">Sign in</button>
<script src="https://cdn.captcha-cdn.net/captchala-loader.js"></script>
<script>
  loadCaptchala(() => Captchala.init({ appKey: 'YOUR_APP_KEY', action: 'login' })
    .onSuccess(res => onToken(res.token))
    .bindTo('#login-btn'));
</script>
Avant — vérification serveur reCAPTCHA (Node)
const res = await fetch('https://www.google.com/recaptcha/api/siteverify', {
  method: 'POST',
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
  body: new URLSearchParams({
    secret: process.env.RECAPTCHA_SECRET,
    response: req.body['g-recaptcha-response'],
  }),
})
const data = await res.json()
if (!data.success) return res.status(400).json({ error: 'bot' })
Après — vérification serveur CaptchaLa (Node)
const res = await fetch('https://apiv1.captcha.la/v1/validate', {
  method: 'POST',
  headers: {
    'X-App-Key': process.env.CAPTCHALA_APP_KEY,
    'X-App-Secret': process.env.CAPTCHALA_APP_SECRET,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ pass_token: req.body['captchala-token'] }),
})
const { data } = await res.json()
if (!data || !data.valid) return res.status(400).json({ error: 'bot' })

Étapes de migration

  1. 1

    Inscrivez-vous et récupérez votre App Key + Secret

    Créez un compte CaptchaLa gratuit, ajoutez un site, et copiez l'App Key (publique) et l'App Secret (côté serveur). Aucune carte requise.

  2. 2

    Remplacez la balise du widget dans votre formulaire

    Remplacez le div et le script src de reCAPTCHA par leurs équivalents CaptchaLa. La classe de la balise passe de g-recaptcha à captchala, data-sitekey devient data-app-key, et l'URL du script pointe vers notre CDN.

  3. 3

    Mettez à jour le nom du champ de soumission

    reCAPTCHA injecte un champ caché nommé g-recaptcha-response. CaptchaLa utilise captchala-token. Si votre gestionnaire de formulaire lit le champ par son nom, renommez la constante ; sinon le champ caché circule automatiquement.

  4. 4

    Mettez à jour la vérification côté serveur

    Pointez la requête de vérification vers apiv1.captcha.la/v1/validate avec les identifiants d'application dans les en-têtes (X-App-Key / X-App-Secret) et pass_token dans un corps JSON. La réponse renvoie le même indicateur valid (data.valid) que reCAPTCHA, votre logique de branchement existante reste donc valable.

  5. 5

    Déployez progressivement

    La plupart des équipes commencent par un seul formulaire (souvent celui à plus faible trafic — inscription à la newsletter ou contact), surveillent la conversion et le taux de challenge pendant quelques heures, puis étendent. Aucun minimum, aucun contrat : le déploiement canari est gratuit.

Questions fréquentes

Dois-je migrer tous mes formulaires d'un coup ?

Non. Les deux systèmes coexistent sur le même site — ils ne partagent ni état ni cookies. Migrez un formulaire à la fois.

Et les scores de risque de reCAPTCHA Enterprise ? Les scores sont-ils transférés ?

Les scores ne sont pas transférables (ils sont internes au fournisseur), mais CaptchaLa renvoie son propre score de risque dans la réponse de vérification. La plage numérique et la logique de décision sont documentées ; les équipes mappent généralement leur seuil de score existant (par ex. 0,5) sur le nôtre en moins d'une heure.

Ma Google Site Verification ou mes autres intégrations Google vont-elles casser ?

Non. reCAPTCHA est distinct de Search Console / Site Verification / Analytics. Retirer la balise reCAPTCHA n'a aucun effet sur les autres services Google.

Existe-t-il un script de migration pour les sites comportant de nombreuses balises reCAPTCHA ?

Nous n'en fournissons pas (le rechercher-remplacer est une seule regex par dépôt, et le templating diffère d'une base de code à l'autre). Le petit script shell de 10 lignes utilisé par la plupart des équipes est dans la documentation.