Facturation et tarifs
graal compte ce que vos traitements réservent sur le cluster : un type d’instance, pendant un certain nombre de minutes. Ce même moteur de mesure sert deux modèles de facturation, choisis par un réglage de déploiement. Les prix publics et les calculatrices sont sur la page Tarifs ; cette page explique ce qui est compté et comment.
Les deux modes
Section intitulée « Les deux modes »Le réglage s’appelle graal.billing.mode (variable GRAAL_BILLING_MODE, valeur du chart
billing.mode).
| Mode | Pour qui | Ce qui est facturé |
|---|---|---|
saas |
graal.systems, opéré par l’éditeur | L’usage, à la minute, à la grille de l’éditeur. Une facture par mois et par locataire |
self-hosted (défaut) |
Une installation chez vous ou chez votre hébergeur | Un abonnement annuel au vCPU, facturé hors du produit. Le moteur sert à la refacturation interne : vous posez votre propre grille |
En self-hosted, les écritures de factures de l’éditeur (émission, envoi, paiement en ligne)
répondent 501 feature_disabled : une installation tirée de l’image ouverte n’émet jamais de
facture au nom de l’éditeur, même si une grille de prix y est posée.
Ce qui est compté
Section intitulée « Ce qui est compté »L’unité est l’alloué, pas le consommé : le type d’instance réservé (donc ses vCPU, sa mémoire et ses GPU) multiplié par ses minutes, comme chez un fournisseur de cloud.
- Début et fin. La durée va du démarrage effectif de la charge, c’est-à-dire son premier passage en exécution, jusqu’à sa fin. La file d’attente et le tirage d’image ne sont pas comptés ; une charge qui n’a jamais démarré non plus.
- Minute entamée. 61 secondes comptent 2 minutes.
- Annulation. Une exécution annulée est facturée jusqu’à l’annulation, une seule fois.
- Un seul tarif. Le prix dépend du type d’instance, pas de l’usage : job, run de workflow, notebook ou espace de travail, endpoint de serving, entrepôt et flux gérés.
- Charges longues. Les espaces, endpoints, entrepôts et flux gérés sont clôturés par période, à chaque arrêt et à chaque changement de mois : le coût d’un mois ne déborde pas sur le suivant.
- Rattachement. Chaque ligne d’usage porte son projet, son job, son run, son workflow et son run de workflow, son espace ou son endpoint : les coûts se lisent selon chacune de ces dimensions.
Ce qui n’est pas facturé : le stockage et le trafic sortant (ni mesurés, ni facturés), et les exécutions sur un boîtier edge, dont le matériel est le vôtre.
Le calcul exact
Section intitulée « Le calcul exact »coût d'une charge = prix par minute du type × nombre d'instances × minutes entaméesLa grille stocke pour chaque type d’instance un prix mensuel : prix par minute × 43 200
(30 jours de 1 440 minutes). Le calcul le ramène à la minute en divisant par 43 200, ce qui est
exact. Exemple : General G2 (4 vCPU, 16 Go) stocke 190,08 € ; 190,08 ÷ 43 200 = 0,0044 € par minute ;
une heure coûte 60 × 0,0044 = 0,264 €.
La grille SaaS (20 types d’instance) est publiée sur la page Tarifs : le site la lit dans le fichier même que les opérateurs posent sur la plateforme.
Le prix de l’abonnement au vCPU
Section intitulée « Le prix de l’abonnement au vCPU »En installation, le prix est dégressif par tranches : chaque vCPU est facturé au prix de sa tranche, donc le total ne baisse jamais quand on ajoute un vCPU. Les vCPU 1 à 64 sont à 290 € HT par vCPU et par an (offre Essentiel) ; les vCPU 65 à 256 sont à 190 € (offre Entreprise). Exemple : 128 vCPU = 64 × 290 + 64 × 190 = 30 720 € HT par an. Au-delà de 256 vCPU, ou pour une offre Souverain : sur devis. L’engagement sur 3 ans (−15 %) et le support 24×7 (+25 %) s’appliquent au total : 30 720 × 0,85 × 1,25 = 32 640 €. Le prix affiché par la calculatrice est le prix moyen par vCPU, avec le détail des tranches sous le total.
Les coûts dans la console
Section intitulée « Les coûts dans la console »Les coûts du mois en cours se lisent dans la console avant la facture, avec le même calcul : par
projet, job, workflow et espace. L’écran « Coûts par projet » ajoute
un taux d’utilisation par projet : le CPU et la mémoire réellement consommés divisés par ce qui a
été réservé (par exemple « 8 vCPU réservés, 1,2 utilisés »), pour repérer ce qui est surdimensionné.
Le taux est affiché à côté du montant ; il n’y entre pas. Les mêmes chiffres sont disponibles pour un
agent par l’outil MCP get_costs_by_project.
La facture mensuelle (mode saas)
Section intitulée « La facture mensuelle (mode saas) »- Une facture par mois et par locataire, émise automatiquement une fois le mois clos, en plus de la demande manuelle.
- La numérotation est continue, par année civile : une seule séquence pour l’éditeur (pas une par
locataire),
GS-2026-0001,GS-2026-0002…, qui repart à0001chaque 1er janvier. Le numéro est tiré au moment de l’émission, dans la même transaction que la facture : deux factures émises en même temps n’ont jamais le même numéro, et une émission qui échoue ne laisse pas de trou. - Les factures émises avant ce format gardent leur numéro (
GS1,GS2…) : un numéro émis ne change pas. - Une facture émise ne se supprime pas. Une erreur se corrige par un avoir, numéroté dans la même séquence.
- Le paiement est manuel par défaut ; le paiement par carte est une option.
- Dans l’émission automatique, un mois sans rien à facturer ne produit ni facture ni numéro.
La page « Abonnement » (mode self-hosted)
Section intitulée « La page « Abonnement » (mode self-hosted) »En installation, la console propose une page Abonnement réservée à l’administrateur de la plateforme. Elle montre :
- les vCPU souscrits (valeur
billing.subscription.vcpudu chart) ; - le quota CPU de l’espace d’exécution, lu dans le
ResourceQuotade son namespace ; - le pic de vCPU réellement alloués sur la période, calculé à partir des usages d’instance.
Le vCPU compté par l’abonnement est ce quota : vous le fixez vous-même, il est plafonné et vérifiable. Utilisateurs et agents sont illimités.
La refacturation interne
Section intitulée « La refacturation interne »L’administrateur de la plateforme pose sa propre grille de prix (POST /prices). La plateforme calcule alors, avec le même moteur, les coûts par projet, job, workflow et
espace, et les exporte pour vos directions et vos équipes. Elle est incluse dans l’abonnement.
Pour les opérateurs
Section intitulée « Pour les opérateurs »La grille SaaS de graal.systems est versionnée dans dev/billing/grille-saas.csv. La colonne
price_per_minute fait foi ; amount est le prix mensuel stocké, égal à price_per_minute × 43 200.
Le script dev/billing/poser-grille.sh la pose sur une plateforme par l’API :
# plan : n'écrit rien, liste les prix à créer, à changer, identiquesdev/billing/poser-grille.sh dev
# écriture : crée les prix manquants et change les montants différentsdev/billing/poser-grille.sh dev --appliquerUn prix présent sur la plateforme mais absent du fichier n’est jamais supprimé (il peut porter de
l’usage) : il est signalé. L’écriture de la grille est réservée à l’administrateur de la plateforme.
L’émission automatique des factures se règle par graal.billing.invoices.auto.enabled.