Skip to main content
Les produits sont le fondement de Dodo Payments. Que vous vendiez un téléchargement ponctuel, un abonnement récurrent ou un accès basé sur l’utilisation, vous commencez par créer un produit. Chaque produit définit son prix, sa présentation lors du paiement et son exécution après l’achat.

One-Time

Facturez une seule fois pour un accès à vie ou un livrable unique.

Subscriptions

Facturez selon un calendrier défini avec des essais, une proratisation et des modules complémentaires.

Usage-Based

Mesurez la consommation et facturez selon l’utilisation réelle.

Créer un produit

Créez des produits depuis le tableau de bord ou via l’API. Choisissez le modèle tarifaire en amont — One-Time, Subscription ou Usage-Based — puis configurez les détails. Le modèle tarifaire est immuable ; créez un nouveau produit si vous avez besoin d’un autre modèle.
1

Name and Description

Indiquez un titre clair et une description concise axée sur la valeur. Le Markdown est pris en charge dans les descriptions.
La première phrase doit s’adresser directement au client et être axée sur le résultat ; elle apparaît bien en évidence lors du paiement.
Tableau de bord des produits affichant le formulaire de création d’un produit
2

Pricing Model and Price

Sélectionnez le modèle tarifaire :
  • One-Time : prix fixe payé une seule fois.
  • Subscription : prix récurrent avec intervalle et essai facultatif.
  • Usage-Based : prix calculé à partir d’événements mesurés.
Ensuite, définissez les prix :
  • Price : montant de base et devise. Vous pouvez définir le prix de base dans toute devise prise en charge par Dodo Payments, à l’exception des produits Pay What You Want, dont la devise de base doit être USD, GBP ou EUR. USD, GBP, EUR et INR sont placées en haut du sélecteur de devises pour un accès rapide.
  • Discount (%) : remise facultative en pourcentage affichée lors du paiement et sur les factures.
  • Pour les abonnements, définissez Repeat every (par exemple, 1 mois ou 1 an), Trial days et un Trial amount facultatif pour un paid trial. Un prix d’abonnement non nul doit être d’au moins $1 (ou l’équivalent dans la devise choisie). Un prix exactement égal à $0 est également pris en charge, et vous pouvez permettre aux clients de commencer un abonnement à $0 sans carte ; consultez Card-Optional at Zero Price. Les montants négatifs ne sont pas pris en charge.
Lorsque Adaptive Currency est activé, les clients dont la devise ne correspond pas à votre devise de base sont facturés dans leur devise locale. Vous pouvez ainsi définir les prix dans la devise la mieux adaptée à votre marché. Lorsqu’il est désactivé, ils paient dans votre devise de base.
Vous préférez un prix fixe par devise ou par pays plutôt qu’une conversion FX en temps réel ? Définissez un pricing_mode sur le produit et associez des règles de Localized Pricing, comme 9,99 € en EUR ou 999 ₹ en Inde.
Modifier un prix change le montant payé par les nouveaux clients. Les abonnements existants ne sont jamais recalculés ; chacun conserve le prix avec lequel il a été créé. Pour faire passer un abonné existant à un autre prix, modifiez explicitement son plan à l’aide de la Change Plan API ; les paramètres de proratisation s’appliquent à cette modification de plan, et non aux modifications de prix.
3

Product Media

Téléchargez des images pour présenter le produit lors du paiement et sur les factures. Formats pris en charge : PNG, JPG et WebP, jusqu’à 3 Mo. Réorganisez ou remplacez les images à tout moment.
4

Automated Entitlements

Dans la section Entitlements, associez une exécution qui s’active automatiquement après le paiement :
  • License Keys : émettez et validez des clés uniques.
  • File Downloads : accordez un accès sécurisé aux fichiers.
  • Custom : déclenchez votre propre logique d’Entitlements via des webhooks.
Ajoutez ou supprimez des avantages à mesure que votre offre évolue. Les abonnés existants obtiennent ou perdent l’accès en conséquence.

Variantes et options tarifaires

Au lieu de créer des variantes sous un même produit, créez des produits distincts pour chaque option tarifaire (par exemple, Monthly et Yearly). Regroupez-les ensuite dans une Product Collection afin de présenter toutes les options lors d’un même paiement et d’activer le changement de plan dans le Customer Portal.
Page de paiement affichant plusieurs options de produit dans une collection

Pourquoi cette approche ?

  • Modèles tarifaires clairs : chaque produit possède un modèle tarifaire unique et bien défini (ponctuel, par abonnement ou basé sur l’utilisation).
  • APIs prévisibles : intégrations plus simples, sans logique de variantes imbriquées.
  • Rapports simplifiés : suivez le chiffre d’affaires et les indicateurs par produit, sans agrégation des variantes.
  • Paiement flexible : affichez plusieurs produits côte à côte afin que les clients puissent les comparer et faire leur choix.

Fonctionnement des Product Collections

  1. Créer des produits : configurez des produits individuels pour chaque plan (par exemple, Starter Monthly, Starter Annual, Pro Monthly, Pro Annual).
  2. Regrouper dans une collection : ajoutez les produits associés à une Product Collection.
  3. Paiement unifié : les clients voient toutes les options lors d’un même paiement et sélectionnent leur plan préféré.
  4. Changement de plan : les clients peuvent passer à un plan supérieur ou inférieur entre les produits d’une même collection via le Customer Portal.

Product Collections

Regroupez les produits associés pour offrir des expériences de paiement unifiées et des parcours de montée ou de descente en gamme.

Gérer les produits

Vous pouvez gérer les produits via le dashboard ou par programmation via l’API. L’API offre un contrôle complet sur la création, la mise à jour, la récupération, l’importation d’images et l’archivage des produits.

Gestion via le dashboard

  • Update : modifiez à tout moment le nom, la description, les images, le prix, les champs et les avantages (le modèle tarifaire est immuable).
  • Archive : masquez un produit des nouveaux achats sans perturber les clients existants. Vous pourrez le désarchiver ultérieurement.
  • Drafts : un produit en cours est enregistré comme brouillon afin que vous puissiez y revenir plus tard. Les brouillons sont conservés séparément pour le mode test et le mode réel ; un produit inachevé dans un mode ne se retrouve donc jamais dans l’autre. Utilisez Clear Draft pour le supprimer et recommencer.
Les pages de formulaire des produits et des collections comportent des boutons d’action dans l’en-tête. Vous pouvez ainsi enregistrer vos modifications sans faire défiler un long formulaire jusqu’en bas.

Gestion via l’API

Les instructions suivantes vous permettent de créer, mettre à jour, gérer et récupérer des produits, notamment en important des images.
Envoyez une requête POST vers l’endpoint /products avec des détails tels que le nom, la description, le prix, la devise et l’indication précisant s’il s’agit d’un produit récurrent.Pour les produits récurrents, définissez l’objet price sur un prix récurrent (type: recurring_price) et indiquez payment_frequency_interval et subscription_period_interval (Day, Week, Month ou Year), ainsi que leurs nombres correspondants.

Create Product API

Consultez la structure détaillée des requêtes et des réponses dans la documentation de l’API Create Product.
Envoyez une requête PATCH vers l’endpoint /products/{product_id}. Vous pouvez mettre à jour des propriétés telles que le nom, le prix et la description tout en conservant les autres détails inchangés.Vérifiez que le product_id dans l’endpoint correspond à un produit existant.

Update Product API

Consultez la structure détaillée des requêtes et des réponses dans la documentation de l’API Update Product.
Récupérez la liste des produits enregistrés dans votre compte à l’aide d’une requête GET vers l’endpoint /products. Vous pouvez ainsi récupérer les détails des produits, y compris les produits actifs et archivés.

Retrieve Products API

Consultez la structure détaillée des requêtes et des réponses dans la documentation de l’API Retrieve Products.
Associez une image à un produit en la téléversant vers AWS S3 à l’aide d’une URL pré-signée fournie par l’API. Commencez par demander une URL de téléversement d’image à l’endpoint /products/{product_id}/images, puis utilisez l’URL fournie pour téléverser l’image dans les 60 secondes.
L’URL pré-signée expire au bout de 60 secondes ; l’image doit donc être importée dans ce délai.
Une fois l’URL pré-signée reçue de l’API, importez l’image à l’aide de la méthode PUT. Cela garantit un accès sécurisé et temporaire à AWS S3 pour importer l’image.Bibliothèques prises en charge pour l’importation vers S3 :
  • Node.js : axios, node-fetch
  • Python : requests, boto3
  • Go : net/http
  • PHP : GuzzleHttp
  • Ruby : rest-client
Si l’importation réussit, AWS S3 renvoie un statut 200 OK, indiquant que l’image a bien été enregistrée.

Upload Product Image API

Consultez la structure détaillée des requêtes et des réponses dans la documentation de l’API Upload Product Image.
Masquez définitivement un produit des nouveaux achats sans le supprimer à l’aide d’une requête DELETE vers l’endpoint /products/{id}.

Archive Product API

Consultez la structure détaillée des requêtes et des réponses dans la documentation de l’API Archive Product.
Restaurez un produit archivé en envoyant une requête POST vers l’endpoint /products/{product_id}/unarchive. Le produit est ainsi réactivé et de nouveau disponible.

Unarchive Product API

Consultez la structure détaillée des requêtes et des réponses dans la documentation de l’API Unarchive Product.
Créez des flux de paiement ou d’abonnement à partir de produits et automatisez leur exécution grâce aux avantages et aux webhooks.

Checkout Sessions

Créez des sessions de paiement pour des achats ponctuels ou par abonnement.

Payment Webhooks

Réagissez aux événements du cycle de vie des paiements.

Subscription Webhooks

Gérez les événements de création, de renouvellement et d’annulation des abonnements.

Bonnes pratiques

  • Commencez par la clarté : créez un produit distinct pour chaque option tarifaire (Monthly ou Yearly).
  • Utilisez les essais avec discernement : associez les essais à l’onboarding pour favoriser l’activation.
  • Automatisez l’exécution : utilisez les avantages et les webhooks pour effectuer la livraison instantanément.
  • Ajoutez des métadonnées : stockez les identifiants de votre système pour le rapprochement.

Contenu associé

Product Analytics

Suivez le chiffre d’affaires, les clients, la rétention, les abonnés et le MRR pour chaque produit individuel.

Localized Pricing

Définissez des prix fixes par devise ou par pays pour un produit au lieu de vous appuyer sur les taux de change en temps réel.
Dernière modification le 26 septembre 2026