Migrer des abonnements vers Stripe Billing à l'aide des API Stripe
Comment migrer vos abonnements existants vers Stripe à l'aide des API Stripe.
Comment migrer vos abonnements existants d’un système maison tiers ou d’un compte Stripe existant vers Stripe Billing à l’aide des API Stripe.
Avant de commencer
- Si vous ne l’avez pas encore fait, passez en revue les étapes de la migration.
- Créez une intégration de Stripe Billing. Cette condition préalable n’est requise qu’une seule fois avant d’importer des abonnements vers Stripe et vous n’aurez pas besoin de la répéter pour les prochaines migrations.
- Demandez l’importation des données du PAN à votre prestataire de services de paiement actuel. Si vous effectuez une migration interne à Stripe, cette étape n’est pas nécessaire car vous utilisez déjà Stripe pour le traitement de vos paiements.
Gérer les anciens produits et tarifs
Si vous avez besoin d’utiliser vos modèles tarifaires antérieurs dans Stripe, créez un produit substituable (par exemple, Legacy plan
). En voici un exemple :
Pour modifier des abonnements correspondant à des offres antérieures, transmettez les tarifs voulus à l’aide du paramètre items.
. Cette action remplace tous les tarifs existants. Pour en savoir plus, veuillez consulter la page consacrée aux tarifs variables.
Importer vos abonnements
Une fois que vous avez importé vos clients et créé un modèle tarifaire, vous pouvez commencer à importer vos abonnements. Vous devriez pouvoir exporter les données d’abonnement des systèmes tiers via leur interface utilisateur ou leur API. Si cette option n’est pas proposée, contactez le prestataire auprès duquel vous avez créé vos abonnements.
Pour importer des abonnements, utilisez la liste de vos clients afin de créer pour chacun d’eux l’abonnement qui convient. Par exemple, si un abonné souscrit une offre d’abonnement mensuel Basic
dans votre ancien modèle, utilisez le tarif récurrent mensuel associé à ce niveau lorsque vous créez son abonnement dans Stripe.
Rendre les données source compatibles avec Stripe
Avant de lancer l’importation des abonnements dans Stripe, veillez à ce que toutes vos données sources correspondent au format que nous attendons.
Champs importants pour migrer des abonnements
Si des données d’abonnement pertinentes sont utilisées dans votre intégration personnalisée mais pas par Stripe, vous pouvez appliquer vos données au champ metadata
des abonnements que vous créez dans Stripe. Le tableau suivant décrit les autres champs importants à prendre en compte lors de l’importation d’abonnements.
Champ | Description |
---|---|
customer | Vérifiez que votre nouvel ID client dans Stripe corresponde à l’ID client de vos données sources. |
phases.items.price | Vérifiez que votre nouvel ID de tarif dans Stripe corresponde à l’ID de tarif de vos données sources. |
current_phase.start_date | Veillez à ce que la planification d’abonnement que vous avez définie sur Stripe corresponde à vos données sources initiales et que leur continuité soit maintenue. Par exemple, s’il reste 6 mois sur l’abonnement annuel d’un client dans votre système source, assurez-vous que les paramètres billing_ et start_ reflètent le fait que l’abonnement est à moitié écoulé. |
Métadonnées tierces | Importez d’éventuels champs de données supplémentaires à partir de vos données sources. Il peut s’agir de noms de produits ou d’offres, ainsi que d’ID d’applications tierces. |
Paramètres fiscaux | Indiquez les numéros fiscaux, les numéros de TVA ou tout autre information à caractère fiscal. |
Préparer les tarifs existants
Si vous avez créé des paramètres substituables pour vos anciens tarifs, vous devez faire correspondre ces tarifs aux abonnements et aux clients que vous importez. Pour chaque abonnement bénéficiant d’un ancien tarif, utilisez le paramètre price_data de l’API Subscriptions afin de transmettre des informations relatives au tarif et à l’abonnement. Les champs suivants sont obligatoires :
Paramètre | Description |
---|---|
currency | Devise du tarif, qui respecte le code ISO à trois lettres. |
product | ID d’emplacement du produit. Vous pouvez l’utiliser pour tous vos tarifs antérieurs. |
recurring | Informations relatives au montant et à la fréquence du tarif récurrent. |
recurring.interval | Fréquence de l’intervalle : day , week , month ou year . |
recurring.interval_count | Périodes entre les facturations. Par exemple, si vous définissez interval=day et interval_ , cela signifie que vous allez facturer votre client tous les 30 jours. La période maximale est de 1 an (1 an, 12 mois ou 52 semaines). |
recurring.unit_amount_decimal | Comme le unit_amount, mais avec la possibilité d’indiquer des montants plus précis en centimes, jusqu’à 12 décimales. Vous ne pouvez définir qu’un seul des éléments suivants : unit_ ou unit_ . |
Importer des données d’abonnement dans Stripe
Une fois que vous avez préparé vos données sources, vous pouvez commencer l’importation de vos abonnements dans Stripe.
Tests
Utilisez un environnement de test pour réaliser au moins une fois le processus d’importation du modèle tarifaire avant de l’exécuter en mode production. Vous devez remapper votre script :
- Si vous supprimez les données dans l’environnement de test et que vous réalisez à nouveau l’importation.
- Au moment de passer en mode production, car les ID des tarifs diffèrent selon le mode utilisé.
Dans un environnement de test, vous pouvez utiliser des horloges de simulation pour tester l’évolution des abonnements dans le temps. Vous pouvez ainsi observer le comportement des abonnements migrés en mode production.
Créer des abonnements
Bien qu’il soit possible de créer des abonnements à l’aide de l’API Subscription, nous vous recommandons d’utiliser l’API Subscription Schedules, qui permet de planifier des abonnements démarrant à une date ultérieure. Par exemple, seule cette API vous donne la possibilité de démarrer des abonnements mensuels avec plus de 30 jours d’avance. Le fait de pouvoir planifier des abonnements futurs vous permet également de vérifier l’importation avant de lancer la facturation de vos clients en mode production.
En outre, l’API Subscription Schedules propose des phases
, qui permettent une bien meilleure flexibilité en matière de définition de paramètres (tels que le comportement fiscal, la méthode d’encaissement et l’utilisation des bons de réduction) sur des périodes plus précises. Vous avez également la possibilité de définir un comportement différent pour des périodes distinctes. Par exemple, vous pourriez appliquer un bon de réduction pour les 3 premiers mois d’un abonnement annuel.
Voici comment créer des abonnements démarrant le .
Confirmer votre migration
Une fois vos abonnements importés, utilisez l’API pour vérifier que les abonnements ont bien été créés dans Stripe.
Pour afficher tous les abonnements dans Stripe, utilisez l’API List Subscriptions. Vous pouvez transmettre le paramètre created pour afficher uniquement les abonnements récents.