---
title: Plans et tarification
description: Créez et tarifez les plans de VM : tailles, prix horaires et mensuels, cycles de facturation, plans personnalisés, clonage et impact sur les VM actives.
url: https://nexcmp.com/fr/docs/catalog/plans/
applies_to: NexCMP 1.6.1
updated: 2026-11-02
---

# Plans et tarification {#plans-and-pricing}

> **Où se trouve l'élément dans l'admin :** Services › Virtual Machines › Plans & pricing (`/vm/catalog`), avec les onglets Plan, Custom plan, Cycle et Offering CloudStack. Les modèles se trouvent sur la page séparée Services › Virtual Machines › Template (`/vm/templates`).

## Description {#what-it-does}

Un **plan** est une taille que les clients peuvent acheter : vCPU, RAM, disque racine et un prix, dans une zone, provenant d'une source (CloudStack ou un cluster Proxmox VE). Le client choisit un plan, un système d'exploitation et un **cycle de facturation** (horaire, mensuel ou une période prépayée plus longue). Les plans sont vendus dans le portail client, via l'API et sur les sites des revendeurs.

## Prérequis {#requirements}

| Élément | Prérequis |
|---|---|
| Source | CloudStack connecté (un plan pointe vers une offre de service CloudStack) ou un cluster Proxmox VE rattaché à la zone. Voir [CloudStack](https://nexcmp.com/fr/docs/infrastructure/cloudstack/) et [Proxmox VE](https://nexcmp.com/fr/docs/infrastructure/proxmox/). |
| Zone | Une zone qui vend des machines virtuelles. Voir [Zones](https://nexcmp.com/fr/docs/infrastructure/zones/). |
| Templates | Au moins un modèle activé et prêt. Voir [OS templates](https://nexcmp.com/fr/docs/infrastructure/templates/). |
| Taux de change | Uniquement si vous saisissez les prix en VND. Voir [Currency and exchange rates](https://nexcmp.com/fr/docs/catalog/currency-and-exchange-rates/). |
| Permissions | Un administrateur ; chaque modification de prix demande une raison. |

## Préparer l'infrastructure {#prepare-the-infrastructure}

- **CloudStack :** créez les offres de service que vous souhaitez vendre (publiques ou partagées avec le domaine NexCMP). Un plan pointe vers une offre. L'onglet **Offering CloudStack** liste en direct les offres et les offres de disque de CloudStack (mises en cache pendant 60 secondes). Lorsque la table des plans est vide, le worker crée automatiquement six plans à partir de vos offres réelles.
- **Proxmox VE :** rien dans Proxmox ; un plan porte son propre CPU, sa RAM et son disque. Le disque ne doit pas être plus petit que celui du template.

## Connecter dans NexCMP {#connect-in-nexcmp}

### Comment les prix sont stockés {#how-prices-are-stored}

NexCMP stocke chaque prix en **micro-dollars par heure** (µ$/heure ; 1 µ$ vaut 1/1,000,000 USD). Vous pouvez saisir le prix dans l'unité de votre choix et le formulaire le convertit :

| Unité | Remarques |
|---|---|
| USD / heure (6 décimales) | Stocké tel quel. |
| USD / mois | Divisé par le paramètre d'heures par mois (730). |
| VND / mois | Converti une fois au taux de change actuel, puis stocké en µ$/heure. N'apparaît que lorsqu'un taux existe. |

Le formulaire affiche le résultat : µ$/heure, USD/heure, le prix mensuel et chaque cycle de facturation. **Prix mensuel = prix horaire × 730** ; un cycle plus long est **prix mensuel × mois × (1 − remise)**.

### Ajouter un plan {#add-a-plan}

1. Ouvrez **Services › Virtual Machines › Plans & pricing** et cliquez sur **Add plan**.
2. Remplissez le formulaire :

   | Champ | Exemple de valeur |
   |---|---|
   | Nom du plan | `VM-2-4` |
   | Slug | vide : généré à partir du nom |
   | Zone | votre zone par défaut |
   | Source d'infrastructure | vide pour CloudStack, ou un cluster Proxmox |
   | Offre de service CloudStack (en direct) | en choisir une (affiché uniquement pour CloudStack) |
   | CPU (cœur), RAM (Mo), Disque racine (Go) | `2`, `4096`, `40` |
   | Offre de disque | facultatif, pour une taille racine personnalisée |
   | Saisir le prix par / Prix | `USD / month`, `12` |
   | Description courte | `2 vCPU, 4 GB RAM, 40 GB NVMe` |
   | Ordre | `10` |
   | Actif | Activé : les clients peuvent acheter |
   | Visibilité | Visible dans le catalogue |
   | Raison de la modification du prix | `initial price` |


3. Cliquez sur **OK**. Le plan apparaît dans le tableau avec son prix horaire et mensuel ainsi qu'une cellule pour chaque cycle activé.

      ![Tableau des plans avec prix horaires, mensuels et par cycle](https://nexcmp.com/fr/docs/images/catalog/plans-02-list.webp)

### Cycles de facturation {#billing-cycles}

Ouvrez l'onglet **Cycle** pour définir les cycles que les clients peuvent choisir et leurs remises.

| Cycle | Valeur par défaut | Remarques |
|---|---|---|
| Horaire | toujours activé | Facturé heure par heure. |
| Mensuel | activé, 0 % | |
| 1 an | activé, 10 % | |
| 2 ans | activé, 15 % | |
| 3 ans | activé, 20 % | |

Vous pouvez renommer un cycle, modifier sa remise (0 à 90%) et l'activer ou le désactiver. Une modification s'applique aux VM achetées ou renouvelées **après** votre enregistrement ; les VM en cours d'exécution conservent leur prix bloqué.

![Onglet Cycle avec remises par cycle de facturation](https://nexcmp.com/fr/docs/images/catalog/plans-03-cycles.webp)

### Définir un plan de base et dériver les autres {#set-a-base-plan-and-derive-the-others}

**Set base plan + derive other plans** recalcule tout le tableau à partir d'un seul prix. Choisissez le plan de base et son prix, puis conservez les **current price ratios** entre les plans ou calculez à partir des **component prices** (µ$/heure par vCPU, par Go de RAM et par Go de NVMe, avec une remise forfaitaire optionnelle de 0 à 50%). Un tableau de préperception affiche les anciens et les nouveaux prix avant tout enregistrement. Cliquez sur **Apply** et indiquez un motif.

Lorsque vous appliquez de nouveaux prix : les VM **hourly** en cours d'exécution obtiennent un prix **plus bas** à partir de l'heure de facturation suivante, et les VM prépayées l'obtiennent au renouvellement. Si un prix **augmente**, les VM en cours d'exécution conservent leur ancien prix.

### Plans personnalisés {#custom-plans}

L'onglet **Custom plan** permet aux clients de choisir leur propre vCPU, RAM et taille NVMe. Définissez le prix unitaire horaire pour un vCPU, un Go de RAM et un Go de NVMe (laissez vide pour dériver d'une remise en pourcentage), le minimum, le maximum et le pas pour chacun, ainsi que les cycles de facturation applicables. Un plan **personnalisé** doit coûter plus cher qu'un plan fixe de la même taille, sinon les clients ignoreraient le plan fixe ; la page signale les lignes où le personnalisé est moins cher. Activez **Enable custom plans for customers** pour les vendre ; s'il est désactivé, "Coming soon" s'affiche dans le portail. Chaque VM personnalisée obtient sa propre ligne de plan masquée ; ces lignes ne peuvent pas être modifiées ou supprimées tant que la VM existe.


### Modifier, masquer, cloner, supprimer {#change-hide-clone-delete}

| Action | Description |
|---|---|
| **Edit** | Modifie le nom, la description, l'ordre, le prix, l'état actif et la visibilité. |
| **On/Off** | **Off** : les clients ne peuvent pas acheter ; les VM en cours d'exécution ne sont pas affectées. |
| **Hide / Show** | Un plan masqué ne figure pas dans le catalogue, mais les VM existantes le conservent et un administrateur peut l'attribuer. |
| **Clone** | Crée un nouveau plan dans la même zone avec une nouvelle source, taille ou un nouveau prix, en masquant éventuellement l'ancien. Pour vendre la même configuration depuis CloudStack et Proxmox, clonez-la et choisissez l'autre source. |
| **Move up/down** | Modifie l'ordre. |
| **Delete** | Retire le plan de la vente et du tableau. Les VM qui l'utilisent déjà le conservent. |

::: warning Les plans en cours d'utilisation sont verrouillés
Dès qu'un plan comporte des VM, ses paramètres **zone, offering, CPU, RAM, disk et source** sont verrouillés afin que les VM en cours d'exécution ne soient pas modifiées silencieusement. Utilisez **Clone** pour créer la nouvelle configuration ; l'ancien plan conserve ses VM.
:::

## Vérification {#verify}

1. Le plan apparaît dans le tableau avec le prix horaire et mensuel attendu.
2. Dans le portail client, lancez une commande : la zone propose le plan et les prix des cycles correspondent à l'onglet **Cycle**.
3. Passez une commande de test, vérifiez le débit sur le portefeuille par rapport au prix affiché et supprimez la VM.

## Limites et remarques {#limits-and-notes}

- Un plan appartient à **une** seule zone et à **une** seule source.
- Les prix sont stockés en µ$/heure ; le prix en VND affiché est dérivé et arrondi par le **VND rounding step** (voir la page des devises). Le portefeuille est toujours en USD.
- Les revendeurs obtiennent un prix de gros et de détail dérivé du prix catalogue ; la modification du prix d'un plan existant ne copie pas les prix personnalisés du revendeur vers un clone dont vous avez modifié la configuration.
- Les limites min, max et de pas des plans personnalisés sont vérifiées par rapport aux limites propres de CloudStack ; un disque maximum supérieur à celui de CloudStack `storage.max.volume.size` entraîne l'échec des déploiements et un remboursement.

## Dépannage {#troubleshooting}

| Symptôme | Cause | Solution |
|---|---|---|
| "Nom de plan requis" / "Offre de service requise" | Champ manquant | Remplissez le nom ; pour CloudStack, choisissez une offre. |
| "CPU/RAM/disk doit être > 0" | Une taille est vide ou égale à zéro | Saisissez les trois. |
| "Prix non valide (µ$/hr doit être compris entre 1 … 100,000,000)" | Le prix est hors limites | Vérifiez l'unité et le montant. |
| "Le changement de prix nécessite un motif" | Motif vide lors de la modification | Saisissez un motif (3 caractères ou plus). |
| "L'offre "X" est 4c/8192 mais le plan spécifie 2c/4096 - CloudStack provisionnera selon l'offre. Enregistrer ?" | Les valeurs du plan diffèrent de celles de l'offre | Faites-les correspondre ou confirmez pour conserver la taille de CloudStack. |
| "Échec de la récupération des offres depuis CloudStack" | La connexion est interrompue ou la clé n'a pas les permissions requises | Voir [CloudStack](https://nexcmp.com/fr/docs/infrastructure/cloudstack/). |
| "Le modèle n'est pas prêt sur CloudStack - le déploiement échouera. Activer quand même ?" | Vous avez activé un modèle non prêt | Attendez que le modèle soit prêt. |
| Le plan ne peut pas être modifié ("contient des VM - verrouillé") | Des machines virtuelles utilisent ce plan | Clonez-le. |
| Le plan n'apparaît pas pour les clients | Désactivé, masqué ou la zone n'est pas prête | Vérifiez **Active**, **Visibility** et le tag de zone. Voir [Zones](https://nexcmp.com/fr/docs/infrastructure/zones/). |
| "Sélectionnez au moins 1 cycle de facturation" | Aucun cycle sélectionné pour les plans personnalisés | Cochez au moins une option. |
| "La remise groupée doit être comprise entre 0 et 50%" | Hors limites | Utilisez une valeur entre 0 et 50. |
| Option de prix en VND manquante | Aucun taux de change disponible | Mettez d'abord le taux à jour. |
