Crédits IA
Système de crédits IA Scanyze — allocation mensuelle, achat de top-ups, expiration, coûts par opération
Crédits IA
Scanyze utilise un système de crédits IA pour facturer la consommation des analyses IA, indépendamment du plan de base. Chaque plan inclut une allocation mensuelle gratuite ; au-delà, vous pouvez acheter des packs supplémentaires (top-ups).
Allocation mensuelle par plan
Source : secuscan-api/internal/domain/models/ai_credits.go (AICreditsAllocation).
| Plan | Crédits/mois inclus | Rollover non-utilisés |
|---|---|---|
| Free | 50 | Non (reset mensuel) |
| Trial (14j) | 200 | Non (reset à fin trial) |
| Starter | 250 | Oui — expire après 6 mois |
| Pro | 750 | Oui — expire après 6 mois |
| Business | 2 000 | Oui — expire après 6 mois |
| Enterprise | Illimité (-1) | N/A |
| MSP (msp_internal) | Illimité (-1) | N/A |
Les crédits non-utilisés roulent d'un mois sur l'autre (sauf Free/Trial), avec une expiration de 6 mois après la date d'octroi (12 mois pour Enterprise). Constants AICreditsExpiryMonths dans le code.
Conversion CAD ↔ crédits
1 crédit IA = 0.10 CAD (CreditsPerDollar = 10)Exemple : un top-up de 1000 crédits coûte 100 $ CAD + taxes (TPS 5% + TVQ 9.975% si Québec).
Coût par opération
| Opération | Crédits consommés | Détails |
|---|---|---|
| Analyse IA légère (GPU) | 1 crédit | Un finding analysé via GPU souverain. AICreditCostRatio = 5 divisé par 5 pour les analyses light. |
| Analyse IA légère (Claude Premium) | 5 crédits | AICreditCostRatio = 5. Réservé aux tenants claude_premium_enabled. |
| Rapport Code Scan (GPU) | ~10-50 crédits | Selon nombre d'issues. Le coût est calculé realCostCAD × CreditsPerDollar × AICreditCostMultiplier arrondi vers le haut. |
| Rapport Code Scan Premium (Sonnet) | ~50-300 crédits | Selon taille du repo et nombre d'issues. Mode chunked si > 300 issues. |
| Pentest IA (Safe mode) | ~50-150 crédits | Budget configurable lors du lancement. |
| Pentest IA (Aggressive mode) | ~100-300 crédits | Activités d'exploitation supplémentaires. |
| Compliance Legal | ~5-10 crédits | 5 prompts courts (Loi 25, PIPEDA, RGPD, Cookies, CGU). |
| Chatbot Security campaign Quick | ~10-30 crédits | 10-20 prompts adversariaux. |
| Chatbot Security campaign Standard | ~50-150 crédits | 50-80 prompts. |
| Chatbot Security campaign Comprehensive | ~200-500 crédits | 200+ prompts. |
Réservation lors du lancement
À chaque démarrage d'analyse, Scanyze réserve 10 crédits (ReservationAmount) pour garantir qu'une analyse n'est lancée que si le solde permet de la terminer. Si la consommation finale est inférieure, la réservation est libérée. Si elle dépasse, la consommation réelle est imputée.
Plancher minimum
Pour lancer une nouvelle analyse, votre solde restant doit être ≥ 10 crédits (MinCreditsToStart). Cela évite de démarrer une analyse qui s'interromprait à mi-parcours.
Acheter des top-ups
- Naviguez vers
/billing. - Cliquez sur Acheter des crédits IA.
- Choisissez le pack :
- Pack 100 : 100 crédits, 10.00 $ CAD
- Pack 500 : 500 crédits, 47.50 $ CAD (-5%)
- Pack 1000 : 1000 crédits, 90.00 $ CAD (-10%)
- Pack 5000 : 5000 crédits, 425.00 $ CAD (-15%)
- Pack 10000 : 10000 crédits, 800.00 $ CAD (-20%)
- Vous êtes redirigé vers le checkout SecuCFO (paiement délégué, voir Plans et facturation).
- Une fois le paiement validé, les crédits sont immédiatement crédités sur votre compte (la transaction passe par un webhook signé HMAC-SHA256 entre SecuCFO et Scanyze).
Les top-ups n'expirent pas tant qu'ils ne sont pas consommés (pas de date butoir comme l'allocation mensuelle).
Suivre la consommation
Dashboard
Sur /dashboard, la carte Crédits IA affiche :
- Restant actuel (allocation + purchased - used - reserved)
- Période en cours
- Date d'expiration de l'allocation actuelle
- Tendance de consommation 30 jours
Historique détaillé
/ai-credits :
- Onglet Solde : décomposition allocation / purchased / used / reserved
- Onglet Historique : chaque transaction (debit ou credit) avec timestamp, raison, endpoint, utilisateur, montant, type
- Onglet Top consommateurs : utilisateurs et endpoints qui ont le plus consommé sur la période
- Onglet Alertes : configuration des seuils d'alerte (par défaut : 80% et 100%)
Alertes de consommation
Scanyze envoie des notifications automatiques quand :
- Solde restant ≤ 20% : email aux
client_admin - Solde restant ≤ 5% : email + Slack si configuré
- Solde épuisé (0) : email + bannière permanente sur le dashboard
- Top-up consommé à 100% : email récapitulatif
Que se passe-t-il si je n'ai plus de crédits ?
| Action | Comportement sans crédit |
|---|---|
| Lancement d'un scan EASM | ✅ Autorisé (le scan est gratuit, l'analyse IA est optionnelle) |
| Lancement d'un scan Code | ✅ Autorisé (idem) |
| Bouton « Analyse IA » sur un finding | ❌ Bouton grisé avec message « Crédits insuffisants » |
| Génération automatique du rapport AI post-scan | ❌ Skippée — le scan se termine sans rapport AI (vous récupérez les findings bruts) |
| Lancement d'un Pentest IA | ❌ Bloqué — un pentest exige au minimum 50 crédits réservés |
| Lancement d'une campagne Chatbot | ❌ Bloqué |
| Compliance Legal scan | ❌ Bloqué — exige ≥ 10 crédits |
Politique de remboursement
- Crédits inclus dans le plan : non remboursables s'ils expirent.
- Top-ups : non remboursables (politique « tout-vente-est-finale »).
- Erreur technique imputable à Scanyze : si une analyse a échoué pour une raison technique (worker crash, timeout interne), les crédits sont automatiquement re-crédités par le
credit_reconcile.gocron qui tourne toutes les 6 heures.
Cache de classifications IA (v0.130.0)
Depuis v0.130.0, Scanyze met en cache les classifications IA des findings dans la table finding_ai_analyses_cache (RLS multi-tenant, UNIQUE par tenant + content_hash). Quand le même finding réapparaît dans un scan ultérieur (même tenant), l'analyse IA est réutilisée sans dépenser de crédit.
Le content_hash est un SHA-256 stable calculé à partir de :
scanner_name,category,severity,title,host,port,cve(pas de PII)
Suivi : à la fin d'un scan, le log final affiche cache_hits et cache_hit_ratio. Sur des scans récurrents nightly, le cache hit dépasse souvent 80% — vous économisez d'autant sur vos crédits.
Sources de cette page
- Modèle :
secuscan-api/internal/domain/models/ai_credits.go - Service :
secuscan-api/internal/services/ai/credits_service.go,debit_service.go,credit_reconcile.go - Cache (v0.130.0) :
secuscan-api/internal/repository/postgres/finding_ai_cache_repo.go+ migration 000175 - Frontend :
secuscan-web/app/(dashboard)/ai-credits/page.tsx
À jour pour Scanyze v0.130.x.