Dépannage
Solutions aux problèmes courants d'installation et de fonctionnement du snippet Korvus.
Aucune donnée dans le dashboard
Le snippet est-il chargé ?
Ouvrez les DevTools de votre navigateur (F12) → onglet Network → rechargez la page → cherchez korvus.min.js.
- Le fichier apparaît avec un statut 200 → le snippet est bien chargé, passez à l'étape suivante
- Le fichier n'apparaît pas → le snippet n'est pas installé ou le tag GTM n'est pas publié. Vérifiez votre installation dans GTM ou dans le code HTML de votre site
- Le fichier apparaît avec une erreur → vérifiez votre Content Security Policy (CSP)
La clé API est-elle correcte ?
Vérifiez que la clé API dans votre snippet correspond bien à celle affichée dans les paramètres de votre site sur le dashboard Korvus. Chaque site a sa propre clé API.
Attendez quelques minutes
Les données sont envoyées par batch toutes les 30 secondes. Après installation, les premières données apparaissent dans le dashboard en quelques minutes. Les alertes ne commencent qu'après la période d'apprentissage de 7 jours.
Le snippet est chargé mais les données n'arrivent pas
Ouvrez les DevTools → onglet Network → filtrez sur app.korvus.fr → naviguez sur votre site pendant 30 secondes (le temps d'un batch).
Requêtes visibles avec erreur
| Code HTTP | Signification | Solution |
|---|---|---|
401 | Clé API invalide | Vérifiez la clé API dans votre snippet |
403 | Le site ne correspond pas à la clé API | Vérifiez que le website_id correspond bien au site configuré |
429 | Rate limiting | Trop de requêtes en peu de temps — attendez quelques minutes |
Aucune requête visible
Si aucune requête vers app.korvus.fr n'apparaît dans Network :
- CSP — Votre site bloque peut-être les connexions vers
app.korvus.fr. Consultez la page CSP - Bloqueur de publicité — Certains bloqueurs interceptent les requêtes vers des domaines de tracking. Testez en navigation privée sans extensions
- Cookie d'opt-out — Vérifiez qu'un cookie
korvus_optout=1n'est pas présent (DevTools → Application → Cookies)
Les Core Web Vitals ne remontent pas
- Navigateur compatible — Les Core Web Vitals nécessitent l'API
PerformanceObserver, supportée par tous les navigateurs modernes (Chrome, Firefox, Safari, Edge) - Timing — Les métriques sont collectées progressivement pendant le chargement de la page, pas instantanément. Le LCP peut prendre quelques secondes, l'INP nécessite une interaction utilisateur
- Pages trop rapides — Si une page se charge en moins de 100 ms, certaines métriques peuvent ne pas être reportées par le navigateur
Les événements e-commerce ne sont pas détectés
Événements DataLayer (purchase, add_to_cart)
Ces événements nécessitent le consentement du visiteur. Si votre CMP (bandeau cookies) est actif et que le visiteur refuse, ces événements ne sont pas collectés. C'est le comportement normal.
Vérifiez aussi que votre dataLayer utilise le format GA4 standard :
dataLayer.push({
event: 'purchase',
ecommerce: {
transaction_id: '12345',
value: 99.90,
currency: 'EUR',
items: [...]
}
});
Si vos noms d'événements sont différents (ex: transaction_complete au lieu de purchase), configurez un mapping custom dans les paramètres de votre site sur le dashboard.
Événements DOM (ajout au panier, rupture de stock)
Ces événements fonctionnent sans consentement et sont détectés automatiquement via le DOM. Si ils ne remontent pas :
- Vérifiez que le bouton "Ajouter au panier" est bien un élément cliquable standard (
button,a,input[type=submit]) - Pour la détection de rupture de stock, Korvus utilise une cascade : Schema.org → bouton ATC absent/désactivé → texte visible ("rupture", "épuisé", "sold out")
Conflit avec d'autres scripts
Le snippet Korvus est conçu pour être totalement isolé. Il s'exécute dans un try/catch global et ne peut jamais provoquer d'erreur visible sur votre site.
Si vous suspectez un conflit :
- Vérifiez la version du snippet dans la console : tapez
window.__korvus_version - Désactivez temporairement Korvus (supprimez le tag GTM) et vérifiez si le problème persiste
- Si le problème disparaît, contactez le support avec la version du snippet et une description du conflit
Bloqueurs de publicité
Certains bloqueurs de publicité (uBlock Origin, AdBlock Plus, Brave Shield) peuvent bloquer les requêtes vers les domaines de collecte de données. C'est un comportement attendu.
- Le snippet est conçu pour échouer silencieusement : aucune erreur, aucun impact sur votre site
- L'impact estimé est de 5 à 15% du trafic selon votre audience
- Les données exemptées de consentement (erreurs, performance, stock) sont les plus impactées car elles concernent tout le trafic
Consentement et CMP
Korvus détecte automatiquement les 4 plateformes de consentement les plus utilisées :
| CMP | Méthode de détection |
|---|---|
| Axeptio | window._axcb |
| Didomi | window.Didomi |
| Cookiebot | window.Cookiebot |
| OneTrust | window.OnetrustActiveGroups |
Comment ça fonctionne
- Au chargement, le snippet détecte votre CMP et lit le statut du consentement
- Les données exemptées (performance, erreurs, e-commerce DOM) sont collectées immédiatement
- Les données nécessitant le consentement (dataLayer, UTMs, click IDs) ne sont collectées que si le visiteur accepte
- Si le visiteur change d'avis (accepte ou refuse après coup), le snippet s'adapte en temps réel
Ma CMP n'est pas détectée
Si vous utilisez une CMP non listée ci-dessus, le snippet fonctionne en mode exempt uniquement : seules les données ne nécessitant pas de consentement sont collectées. Les données marketing (dataLayer, UTMs, pixels) ne seront pas disponibles.
Contactez le support pour demander l'ajout de votre CMP.
Vérifier que tout fonctionne
Checklist rapide après installation :
- DevTools → Network —
korvus.min.jsse charge (statut 200) - DevTools → Network — Des requêtes vers
app.korvus.fr/api/ingestpartent toutes les 30 secondes (statut 200) - DevTools → Console —
window.__korvus_versionretourne la version du snippet - Dashboard Korvus — Les données apparaissent dans les minutes qui suivent
- Dashboard Korvus — Après 7 jours, les premières alertes commencent à remonter