Modéliser une tarification à l'usage
Découvrez différents modèles tarifaires de facturation à l'usage sur Stripe.
Note
Nous avons mis à jour notre processus de facturation à la consommation. Pour en savoir plus sur les anciennes instructions, consultez notre ancienne documentation relative à la facturation à l’usage.
Il existe différents modèles tarifaires pour la facturation à la consommation : le paiement à l’utilisation, les frais fixes et le dépassement (recommandé pour la plupart des utilisateurs) et l’épuisement de crédits.
Paiement à l’utilisation
Communément appelé « facturation à terme échu », le modèle de « paiement à l’utilisation » vous permet de suivre l’utilisation sur une période déterminée, puis de facturer le client à la fin de la période. Il existe quatre stratégies de tarification différentes :
- Par unité : facturez le même montant pour chaque unité.
- Par lot : facturez un forfait ou un lot d’unités d’utilisation. Il s’agit du modèle utilisé par l’entreprise fictive Alpaca AI.
- Tarification échelonnée et au volume : le poste d’abonnement est facturé au niveau correspondant à l’utilisation à la fin de la période. En savoir plus sur la tarification établie sur le volume.
- Tarification échelonnée et progressive : comme la tarification au volume, la tarification progressive facture l’utilisation de chaque niveau au lieu d’appliquer un tarif unique pour toute l’utilisation.
Ce modèle n’est peut-être pas la solution la plus adaptée si votre entreprise compte des clients peu fiables, car ces derniers peuvent atteindre un volume de consommation important pour qu’ensuite leur paiement échoue à la fin du mois.
Modèle à frais fixes et dépassement
Dans ce modèle, vous facturez des frais mensuels fixes pour votre service au début de la période. Ces frais fixes prévoient une certaine quantité d’utilisation, et toute utilisation supplémentaire (dépassement) est facturée à la fin de la période.
Vous pouvez le modéliser en définissant deux tarifs pour le même produit. Par exemple, Alpaca AI lance un nouveau modèle avancé appelé Llama AI. Au tarif de 200 USD par mois, ce modèle inclut 100 000 tokens. Toute utilisation supplémentaire sera facturée au taux de 0,001 USD par token.
Modèle d’épuisement de crédits
Dans ce modèle, vous pouvez obtenir un paiement anticipé pour des produits et services facturés à l’usage. Grâce aux crédits de facturation, les utilisateurs peuvent payer un montant initial et « consommer » leurs crédits de facturation au fur et à mesure qu’ils utilisent le produit.
Par exemple, Alpaca AI souhaite vendre un contrat de grande entreprise à un client en libre-service existant pour son nouveau modèle LLama AI. Le client s’engage à payer d’avance 100 000 $ pour LLama AI afin d’obtenir 120 000 $ de crédit de facturation à utiliser sur une période d’un an.
En savoir plus sur les crédits de facturation.
Périodes d'essai gratuites
Vous pouvez utiliser des périodes d’essai pour les abonnements avec facturation à l’usage. Pendant la période d’essai, l’utilisation n’est pas comptabilisée dans le total facturé au client à la fin du cycle de facturation. Après la fin de la période d’essai, l’utilisation est comptabilisée et facturée à la fin du cycle de facturation suivant.
En savoir plus sur les périodes d’essai et les abonnements.
Webhooks et essais
Vérifiez que votre intégration surveille et gère correctement les événements Web relatifs aux modifications d’état des périodes d’essai.
Quelques jours avant la fin de la période d’essai et le passage de l’abonnement de trialing
à active
, vous recevez un événement customer.
. À réception de cet événement, assurez-vous qu’un moyen de paiement est défini pour le client afin de pouvoir le facturer. Si vous le souhaitez, informez le client à l’avance du paiement à venir.
État | Description |
---|---|
trialing | L’abonnement est actuellement en période d’essai et vous pouvez fournir l’accès à votre produit sans risque. L’état de l’abonnement basculera sur active une fois le premier paiement effectué. |
active | L’abonnement est en règle et le paiement le plus récent a abouti. Vous pouvez fournir l’accès à votre produit sans risque. |
incomplete | Un paiement doit aboutir dans les 23 heures suivant la création de l’abonnement pour que ce dernier soit activé. Dans le cas contraire, une action est requise, comme une authentification du client. Les abonnements peuvent aussi être incomplete si un paiement est en attente et que l’état du PaymentIntent est processing . |
incomplete_ | Le paiement initial de l’abonnement a échoué et aucun paiement n’a abouti dans les 23 heures suivant la création de l’abonnement. Ces abonnements ne facturent pas les clients. Cet état vous permet d’assurer le suivi des clients qui ne sont pas parvenus à activer leur abonnement. |
past_ | Le paiement de la dernière facture finalisée a échoué ou n’a pas été tenté. L’abonnement continue de créer des factures. Vos paramètres d’abonnement déterminent l’état suivant de l’abonnement. Si la facture reste impayée après toutes les tentatives de relance Smart Retries, vous pouvez configurer l’abonnement pour qu’il bascule sur canceled , unpaid , ou le laisser sur past_ . Assurez-vous de payer la facture la plus récente avant sa date d’échéance pour faire basculer l’état de l’abonnement sur active . |
canceled | L’abonnement a été annulé. Lors de l’annulation, l’encaissement automatique de toutes les factures impayées est désactivé (auto_ ). Cet état est définitif et ne peut pas être mis à jour. |
unpaid | La dernière facture n’a pas été payée, mais l’abonnement reste valide. La dernière facture reste ouverte et des factures continuent à être générées, mais aucune tentative de paiement n’est effectuée. Vous devez révoquer l’accès à votre produit quand l’abonnement est unpaid puisque des tentatives de paiement ont déjà été effectuées et relancées lorsqu’il était à l’état past_ . Assurez-vous de payer la facture la plus récente avant sa date d’échéance pour faire basculer l’état de l’abonnement sur active . |
paused | The subscription has ended its trial period without a default payment method and the trial_settings.end_behavior.missing_payment_method is set to pause . Invoices will no longer be created for the subscription. After a default payment method has been attached to the customer, you can resume the subscription. |
En savoir plus sur les abonnements et les webhooks.
Annulations
Avec la facturation à l’usage, le montant que le client paie varie en fonction de la quantité consommée durant le cycle de facturation. Si la modification du cycle de facturation provoque la fin anticipée d’un intervalle d’abonnement, vous facturez le client pour l’utilisation cumulée au cours du cycle de facturation écourté. Nous ne prenons pas en charge le calcul au prorata avec la facturation à l’usage.
Une fois un abonnement annulé, il ne peut plus être réactivé. Vous pouvez collecter les informations de facturation actualisées de votre client, mettre à jour son moyen de paiement par défaut et créer un nouvel abonnement à partir du dossier client existant.
Après avoir planifié l’annulation d’un abonnement à l’aide de cancel_at_period_end, vous pouvez le réactiver à tout moment jusqu’à la fin de la période en attribuant au paramètre cancel_
la valeur false
. Toute utilisation calculée est indiquée dans une facture finale après l’annulation de l’abonnement, à la fin de la période de facturation.
Transformer les quantités
Utilisez l’option transform_quantity pour transformer l’utilisation avant d’appliquer le tarif. Cela vous permet de diviser l’utilisation mesurée par un nombre spécifique et d’arrondir le résultat à l’entier supérieur ou inférieur. Cette option est couramment utilisée pour définir le tarif d’un lot de produits plutôt que celui d’unités individuelles. La modification de la quantité n’est pas compatible avec la tarification échelonnée.
Supposons par exemple que vous ayez un service de location de voitures. Vous déclarez l’utilisation sous la forme d’un nombre de minutes et vous souhaitez facturer les clients pour chaque heure de location de la voiture.
Créez ensuite un tarif pour le service de location de voitures à hauteur de 10 USD par heure, arrondis au chiffre supérieur (de manière à facturer une heure complète même si elle n’est que commencée) :
Si une voiture est louée pendant 150 minutes, le client est facturé 30 USD pour 3 heures de location (2 heures et 30 minutes, arrondies à l’unité supérieure).
Montants avec décimale
La tarification avec décimale est utile si vous souhaitez fixer des tarifs qui ne sont pas des nombres entiers. Par exemple, si vous dirigez une entreprise SaaS de stockage dans le cloud, vous pouvez créer un tarif qui facture 0,05 centime pour chaque Mo consommé par mois. En fonction de l’utilisation, la quantité de Mo est alors multipliée par 0,05 centime et arrondie au centime le plus proche.
Pour créer des tarifs avec décimale, spécifiez unit_
à la place de unit_
. unit_
vous permet de définir un montant dans la sous-unité de la devise utilisée pour la facturation. Par exemple, vous pouvez définir unit_
en USD pour représenter 105,5 centimes, soit 1,055 USD. unit_
accepte jusqu’à 12 décimales.
Si vous prévoyez d’utiliser des niveaux de tarification, vous pouvez spécifier l’attribut unit_
à la place de unit_
. Vous pouvez aussi créer des postes de facture avec unit_
à la place de unit_
.
Dans les réponses de l’API, le champ unit_
, qui doit correspondre à un nombre entier, n’est pas renseigné si vous créez l’objet avec une valeur décimale. Par exemple, si vous créez un tarif avec unit_
, la réponse contient unit_
et unit_
. Vous pouvez toujours transférer les valeurs entières dans unit_
, auquel cas unit_
est renseigné dans la réponse. Par exemple, si vous créez un tarif avec unit_
, la réponse contient unit_
et unit_
.
Note
Si votre intégration gère les événements à l’aide de valeurs unit_
et que vous utilisez des montants avec décimale, vous devez utiliser unit_
à la place. Cette précision est importante, car unit_
renverra la valeur null
si les montants avec décimale ne peuvent pas être convertis en montants entiers, ce qui pourrait entraîner des erreurs dans votre intégration.
Périodes de grâce
Par défaut, Stripe finalise les factures d’abonnement une heure après leur génération. Pendant ce délai de grâce d’une heure, vous pouvez continuer à mesurer l’utilisation pour la période précédente. Lorsque la facture est finalisée, nous la mettons à jour de façon à refléter l’utilisation effective pour sa période de facturation.
L’utilisation mesurée après la finalisation de la facture n’est pas prise en compte dans les factures ultérieures.
Modifications en cours de cycle
Vous pouvez mettre à jour le prix d’un poste d’abonnement au cours d’un cycle de facturation. Toutefois, les limitations suivantes s’appliquent lors du passage d’une tarification à la consommation à une autre :
- Seule l’utilisation effectuée après la mise à jour sera prise en compte dans les factures futures. L’utilisation antérieure à la modification ne sera pas facturée. Par exemple, si vous avez un abonnement mensuel et que vous passez du prix A au prix B le 16 janvier, la facture générée à la fin du mois tient compte de l’utilisation du 16 au 31 janvier au prix B. L’utilisation du 1er au 16 janvier n’est pas facturée.
- Il existe une exception à cette règle si vous utilisez des seuils de facturation et qu’une facture seuil a déjà été générée à l’ancien prix. Par exemple, dans le scénario ci-dessus, si vous avez généré une facture seuil le 10 janvier au prix A, cette facture seuil est toujours facturée au client. À la fin du mois, la facture générée comptabilise l’utilisation du 16 au 31 janvier au prix B. La facture seuil antérieure ne compense aucune utilisation pour cette facture de fin de mois.
- Des restrictions similaires s’appliquent si vous ajoutez un nouveau poste d’abonnement avec une tarification à la consommation au cours du cycle d’abonnement. Par exemple, si vous ajoutez un nouveau poste d’abonnement au prix C le 16 janvier, la facture générée à la fin du mois comptabilise l’utilisation du 16 au 31 janvier au prix C pour ce poste d’abonnement.
Voici comment mettre à jour le prix d’un poste d’abonnement :
Pour supprimer un poste d’abonnement :
Après la suppression, aucune utilisation de ce poste n’apparaît sur la facture.
Créer un abonnement rétroactif
Vous pouvez déclarer l’utilisation d’un client avant même de créer un abonnement pour lui. Après avoir signalé l’utilisation d’un client, vous pouvez utiliser backdate_start_date pour créer un abonnement avant le premier rapport, ce qui garantit que l’utilisation sera incluse dans la prochaine facture d’abonnement.