Gérer les produits et les tarifs
Découvrez comment gérer les produits et les tarifs
Vous pouvez créer et mettre à jour vos produits et tarifs dans le Dashboard ou via l’API.
Certains cas d’usage avancés, comme la création de tarifs variables, nécessitent l’utilisation de l’API. Si vous avez un grand nombre de produits et de tarifs ou si vous développez une intégration personnalisée avec Elements, vous devez également passer par l’API.
- Utilisez le Dashboard pour créer et gérer les produits et les tarifs sans passer par l’écriture de code ou si vous n’avez que quelques produits et tarifs à gérer. Configurez votre modèle tarifaire dans un environnement de test et cliquez sur le bouton Copier en mode production sur la page d’informations du produit.
- Utilisez l’API ou l’interface de commande Stripe pour créer et gérer les produits et les tarifs. L’API est une méthode directe pour vos implémentations de production. L’interface de commande Stripe est un outil de développement qui vous permet de développer, tester et gérer votre intégration avec Stripe directement depuis votre terminal.
Les étapes API suivantes utilisent comme exemple un outil de collaboration SaaS fictif (Togethere), dont le produit de base est un tableau de bord de gestion de projet.
Créer un produit
Modifier un produit
Archiver un produit
Si vous souhaitez désactiver un produit de sorte qu’il ne puisse plus être ajouté à de nouvelles factures ou à de nouveaux abonnements, vous pouvez l’archiver. Lorsque vous archivez un produit, tous les abonnements existants qui utilisent ce produit restent actifs jusqu’à ce qu’ils soient annulés et tous les liens de paiement existants qui utilisent le produit sont désactivés. Vous ne pouvez pas supprimer des produits qui possèdent un tarif associé, mais vous pouvez les archiver.
Supprimer un produit
Vous ne pouvez supprimer que des produits auxquels aucun tarif n’est associé. Vous pouvez également archiver un produit.
Créer un tarif
Vous pouvez créer un ou plusieurs tarifs pour un produit. Par exemple, Togethere peut proposer un abonnement « de base » à 10 USD par mois, 100 USD par an, ou encore un achat unique d’un montant de 9 EUR.
Remarque
Une fois que vous avez créé un tarif, vous pouvez uniquement mettre à jour ses champs metadata
, nickname
et active
.
Définir un tarif par défaut
Le tarif par défaut d’un produit est le tarif le plus courant que vous souhaitez proposer à vos clients. Par exemple, un produit peut avoir des tarifs différents pour des soldes saisonniers, mais son tarif par défaut est le tarif standard (hors soldes) auquel vous le vendez. Si votre produit n’a qu’un seul tarif, celui-ci sera son tarif par défaut. Le tarif par défaut est défini par un objet Price actif.
Clés de recherche
La plupart des entreprises affichent les informations relatives aux tarifs sur leur site Web. Si ces tarifs sont codés en dur et que vous voulez les modifier, le processus est souvent manuel et requiert le déploiement d’un nouveau code. Afin de mieux gérer ces cas de figure, vous pouvez appliquer l’attribut lookup_key à l’objet Price. La clé de recherche vous permet d’effectuer les opérations suivantes :
- Présenter des tarifs différents dans votre front-end.
- Utiliser le tarif obtenu pour facturer les clients.
Vous pouvez transmettre un attribut lookup_
lorsque vous créez un tarif :
Au lieu de coder en dur un texte de type 10 USD par mois sur votre page des tarifs et d’utiliser un ID de tarif sur votre back-end, vous pouvez interroger le tarif à l’aide de la clé standard_
, puis l’afficher dans votre front-end :
Remarque
Afin d’améliorer les performances, vous pouvez ajouter un niveau de cache pour ne recharger le tarif que de temps en temps.
Lorsqu’un client clique sur le bouton d’inscription ou de paiement, vous transmettez le tarif de la requête GET
ci-dessus à l’API Subscriptions.
Maintenant que vous pouvez présenter des tarifs différents, imaginons que vous vouliez commencer à facturer aux nouveaux utilisateurs la somme de 20 USD par mois au lieu de 10 USD. Pour ce faire, il vous suffit de créer un nouveau tarif et de transférer la clé de recherche à ce nouveau tarif en utilisant transfer_lookup_key=true :
Arrondis
Les arrondis sont effectués au niveau du poste de vos factures. Par exemple, si vous créez un tarif avec unit_
et un abonnement mensuel pour ce [tarif] avec quantity = 30
, les arrondis sont effectués après que la quantité est multipliée par le montant avec décimale. Dans ce cas, le montant calculé pour le poste serait de 0.
, montant qui est ensuite arrondi à 2 centimes. Si vous avez plusieurs postes, chacun sera arrondi avant de calculer le montant total de la facture. Cela garantit que les clients sont toujours débités d’un montant en sous-unités entier, puisque les montants avec décimale s’appliquent uniquement pour la tarification.
Les taxes hors taxes sont ajoutées au montant de chaque poste, en fonction du taux de taxe. Si vous activez les taxes automatiques, les taxes hors taxes sont appliquées et arrondies sur le total de la facture, y compris sur les réductions au niveau de la facture. Si vous utilisez les taxes manuelles, que ce soit au niveau du poste ou de la facture, vous pouvez choisir la manière d’appliquer l’arrondi. Utilisez la page des paramètres de facturation dans le Dashboard pour appliquer et arrondir les taxes pour chaque poste, ou appliquez et arrondissez les taxes sur le sous-total de la facture.
Modifier un tarif
Vous avez la possibilité d’utiliser le Dashboard ou l’API pour mettre à jour certaines propriétés d’un tarif. Par exemple, vous pouvez choisir si le tarif est actif ou non, ou bien modifier ses métadonnées.
Notez que vous ne pouvez pas modifier le montant d’un tarif dans l’API. À la place, nous vous recommandons de créer un tarif pour le nouveau montant, de basculer sur l’ID du nouveau tarif, puis de rendre inactif l’ancien tarif.
Archiver un tarif
Si vous souhaitez désactiver un tarif de sorte qu’il ne puisse plus être ajouté à de nouvelles factures ou à de nouveaux abonnements, vous pouvez l’archiver. Lorsque vous archivez un tarif, tous les abonnements existants qui utilisent ce tarif restent actifs jusqu’à ce qu’ils soient annulés et tous les liens de paiement existants qui utilisent le produit sont désactivés.
Supprimer un tarif
Vous ne pouvez supprimer que des tarifs que vous n’avez jamais utilisés. Sinon, vous pouvez les archiver.
Afficher les informations tarifaires
Une fois vos produits et tarifs créés, vous pouvez intégrer une grille tarifaire à votre site Web pour présenter les tarifs à vos clients. Lorsque vos clients choisissent une option d’abonnement, ils sont directement redirigés vers la page de paiement. Configurez, personnalisez et modifiez directement votre grille via le Dashboard sans avoir à écrire la moindre ligne code.
Importer des produits et des tarifs
Si votre catalogue de produits est très volumineux, utilisez l’API Products pour l’importer par programmation. Si vous importez votre catalogue de produits dans Stripe, vous pouvez utiliser n’importe quelle source de données de départ, par exemple un système de gestion de produits ou un fichier CSV.
Utilisez l’API Products pour créer un produit dans Stripe pour chacun des produits de votre système. Pour mapper des produits dans votre système à des produits dans Stripe, affectez chaque produit que vous importez à un id unique. Pour chaque produit, utilisez l’API Prices pour ajouter le tarif correspondant. Pensez à enregistrer l’id
du tarif que vous venez de créer. Vous devrez transmettre cet id
lorsque vous utiliserez les produits et tarifs dans votre intégration.
Vérifiez l’importation en consultant le Dashboard ou en listant tous les produits dans l’API.
Supprimer les tarifs importés
Pendant la phase de développement, vous devrez peut-être exécuter ce script plusieurs fois pour les tests. Si vous utilisez le même ID de produit, vous obtiendrez une erreur indiquant qu’un produit portant cet ID existe déjà. Si vous n’avez pas encore utilisé le produit, vous pouvez le supprimer à l’aide du Dashboard Stripe :
Accédez au Dashboard Produits et trouvez votre produit.
Dans la section Tarifs, cliquez sur le menu déroulant () en regard du tarif, et sélectionnez Supprimer le tarif.
Cliquez sur le menu déroulant () en haut de la page et sélectionnez Supprimer le produit.
Synchroniser les produits et les tarifs
Vous devrez probablement réaliser plusieurs imports. Vous pouvez créer un script pour tester votre import et, si vous le souhaitez, synchroniser votre source de données d’origine avec Stripe. Pour rendre votre script idempotent et résilient vis-à-vis des erreurs, vous pouvez sans risque essayer de créer le produit d’abord, puis le mettre à jour s’il existe déjà.
Pour synchroniser votre catalogue de produits avec Stripe, utilisez des webhooks ou d’autres mécanismes afin de déclencher des mises à jour de produit dans Stripe. Pour mettre à jour un produit de manière programmatique, utilisez la procédure suivante.
Tout d’abord, recherchez le tarif existant associé au produit avec l’API List all prices pour vous assurer que le tarif correspond toujours à votre source de données. Chaque produit doit avoir un seul et unique tarif actif.
Ensuite, vérifiez si le montant avec décimale a changé. Le champ unit_
affiche le montant unitaire en centimes.
Si le montant ne correspond pas, vous devez créer un nouveau tarif. Lorsque vous créez un nouveau tarif, spécifiez l’ID product
du produit d’origine, la devise currency
et le tarif actualisé unit_
.
Mettez à jour l’ancien tarif pour le marquer comme active=false
.
Utiliser des produits et des tarifs dans votre intégration
Vous pouvez utiliser des produits et des tarifs dans plusieurs chemins d’intégration Stripe différents.
Tests
Vous pouvez copier des produits d’un environnement de test vers le mode production pour éviter d’avoir à les recréer. Les tarifs associés aux produits sont également copiés. Sur la page d’informations du produit du Dashboard, cliquez sur Copier en mode production dans le coin supérieur droit.
Vous ne pouvez copier les produits de test vers le mode production qu’une seule fois. Si vous effectuez des mises à jour du produit de test après la copie, le produit du mode production ne reflétera pas ces changements.