# Antidater des abonnements Découvrez comment antidater des abonnements. Vous pouvez antidater un abonnement afin de facturer des clients pour une période déjà écoulée. Cette fonction est souvent utilisée lors d’une migration vers Stripe ou à des fins d’archivage. Le champ `backdate_start_date` indique la date de début rétroactive de l’abonnement. Vous avez également la possibilité de facturer les clients pour cette période écoulée et de définir la prochaine date de facturation. ## Considérations relatives au mode de facturation Depuis la [version 2025-04-30 de l’API](https://docs.stripe.com/changelog/basil.md#2025-04-30.preview), le comportement de l’antidatage dépend du [billing_mode](https://docs.stripe.com/api/subscription_schedules/create.md#create_subscription_schedule-billing_mode) de votre abonnement : ### Before Utilisez `billing_mode=classic` afin de créer un poste unique au prorata pour la période antidatée. ### After Utilisez `billing_mode=flexible` pour générer un poste pour chaque période de facturation naturelle survenant pendant la période antidatée, ce qui fonctionne de manière similaire à la facturation normale. > L’antidatage n’est pas pris en charge lorsqu’une facture comporte plus de 250 postes, ce qui est la limite par défaut. ## Antidater et facturer des utilisateurs Parfois, les utilisateurs peuvent avoir accès à votre service avant que vous ne créiez un abonnement pour eux, et vous souhaitez leur facturer cet accès. #### Dashboard Pour facturer cette période aux utilisateurs via le Dashboard, procédez comme suit : 1. Accédez à la page **Paiements** > **Abonnements**. 1. Cliquez sur **+Créer un abonnement**. 1. Localisez ou ajoutez un client. 1. Saisissez les informations sur les tarifs et les produits. 1. Dans la section **Détails de l’abonnement**, sélectionnez les dates de début et de fin de l’abonnement. Pour l’antidater, sélectionnez une date de début dans le passé. 1. Sélectionnez la date à laquelle vous souhaitez commencer la période de facturation. 1. (Facultatif) Définissez les options **Paiement** ou **Avancé**. 1. Cliquez sur **Créer un abonnement**. L’abonnement démarre à la date que vous avez sélectionnée. #### API Pour facturer des heures antidatées à l’aide de l’API, créez un abonnement antidaté en transmettant les paramètres `customer`, `price` et `backdate_start_date`. ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d "customer={{CUSTOMER_ID}}" \ -d backdate_start_date=1575176400 \ -d "items[0][price]={{PRICE_ID}}" ``` Une *facture* (Invoices are statements of amounts owed by a customer. They track the status of payments from draft through paid or otherwise finalized. Subscriptions automatically generate invoices, or you can manually create a one-off invoice) est ainsi créée avec les paiements correspondant à la période comprise entre la date de début antidatée et la date actuelle. Si un abonnement a `billing_mode=classic`, Stripe crée un montant unique au prorata pour la période antidatée en se basant sur un intervalle imaginaire commençant à la date de début antidatée. Par exemple, si vous avez une période de facturation mensuelle commençant le premier du mois et que vous définissez `backdate_start_date` au 15 février (d’une année non bissextile), Stripe calcule le prorata en se basant sur un mois imaginaire allant du 15 février au 15 mars. Comme le mois de février compte 28 jours, le montant au prorata pour les 14 jours allant du 15 février au 1er mars correspond exactement à la moitié du montant d’un paiement mensuel normal. De même, si vous définissez `backdate_start_date` sur le 15 janvier, Stripe base le calcul au prorata sur un mois imaginaire allant du 15 janvier au 15 février. Ce mois imaginaire comporte 31 jours, de sorte que le montant au prorata pour les 17 jours du 15 janvier au 1er février est de 17 divisé par 31 (environ 0,548) d’un paiement mensuel normal. Vous pouvez également afficher le calcul en considérant la date de début antidatée comme date de début d’origine. Le début de la première période de facturation complète devient alors la date de début mise à jour. Si un abonnement a `billing_mode=flexible`, Stripe génère des postes distincts pour chaque période de facturation naturelle qui s’est produite pendant la période antidatée. Cela signifie que chaque cycle est traité comme si Stripe l’avait facturé normalement pendant cette période. ## Antidater sans facturer les utilisateurs Vous pouvez également antidater un abonnement sans facturer au client la période antidatée, ce qui peut être utile si vous migrez vers Stripe. Pour ce faire, définissez `proration_behavior: 'none'` lorsque vous créez l’abonnement. Cela permet de définir `start_date` sur la même valeur que `backdate_start_date`, mais le client n’est pas facturé pour la période rétroactive. ## Antidater et configurer la date de début du cycle de facturation Vous pouvez combiner `backdate_start_date` avec `billing_cycle_anchor` pour antidater un abonnement et fixer le point d’ancrage du cycle de facturation à une date ultérieure. Cela crée un poste prorata sur la prochaine facture pour la période comprise entre la date de début antidatée et le point d’ancrage du cycle de facturation. Vous pouvez utiliser cela si vous migrez vers Stripe et avez besoin de reporter la prochaine date de facturation pour vos abonnements tout en facturant les clients pour le temps écoulé. Par exemple, supposons que nous sommes le 15 octobre et que vous migrez vers Stripe. Vous avez un abonnement qui a commencé le 1er septembre et la prochaine date de facturation est le 1er novembre. Pour migrer cet abonnement, créez un nouvel abonnement et définissez `backdate_start_date` sur le 1er septembre et `billing_cycle_anchor` sur le 1er novembre. ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d "customer={{CUSTOMER_ID}}" \ -d backdate_start_date=1575176400 \ -d billing_cycle_anchor=1572580800 \ -d "items[0][price]={{PRICE_ID}}" ``` Cette opération émet immédiatement une facture pour le montant au prorata couvrant la période comprise entre le 1er septembre et le 1er novembre. La `start_date` de l’abonnement est également fixée au 1er septembre. Stripe émet la facture suivante le 1er novembre. ## Antidatation et réductions Lorsque vous appliquez un [bon de réduction](https://docs.stripe.com/billing/subscriptions/coupons.md) à un abonnement antidaté, la durée du bon de réduction commence à courir à partir de la date de début de l’antidatation, et non à partir de la date à laquelle vous effectuez l’appel à l’API. Ceci signifie que la durée du bon de réduction est consommée par la période d’antidatation. Par exemple, si vous créez un abonnement le 1er mars et `backdate_start_date` est fixée au 1er janvier et que vous appliquez un bon de réduction avec `duration=repeating` et `duration_in_months=2`, ce bon de réduction s’applique aux périodes de facturation de janvier et février (les deux mois commençant le 1er janvier). Étant donné que la période de validité de 2 mois du bon de réduction a été entièrement consommée par la période d’antidatation, il ne s’applique pas à la facture de mars ni aux factures ultérieures, et la réduction est supprimée du poste de l’abonnement. Si vous souhaitez que le bon de réduction s’applique aux factures actuelles et ultérieures après la période d’antidatation, sa durée doit être supérieure à celle de la période d’antidatation. En reprenant le même exemple, un bon de réduction avec `duration_in_months=3` couvrirait janvier, février et mars, en appliquant la réduction à la première facture après la période d’antidatation. > Si la durée de validité d’un bon de réduction est inférieure ou égale à la durée de la période d’antidatation, la réduction ne s’applique qu’aux factures émises durant la période d’antidatation. Elle ne sera pas reportée sur les nouvelles factures ultérieures à la date d’antidatation. Le tableau suivant récapitule comment la durée de validité des bons de réduction interagit avec l’antidatation : | | | | | Durée de validité du bon de réduction | Comportement avec antidatation | | `once` | S’applique uniquement à la première facture, qui couvre la période d’antidatation. | | `repeating` (N mois) | La durée de validité commence à compter de la date de début de l’antidatation. Si N est inférieur ou égal à la période d’antidatation, la réduction expire avant l’émission de toute nouvelle facture. | | `forever` | S’applique à toutes les factures, y compris celles de la période d’antidatation et toutes les factures ultérieures. Aucune exception ne sera faite. | ## Antidater une mise à jour Pour définir la date d’entrée en vigueur des [prorata](https://docs.stripe.com/billing/subscriptions/prorations.md) lors de la mise à jour d’un abonnement, utilisez le paramètre [proration_date](https://docs.stripe.com/api/subscriptions/update.md#update_subscription-proration_date). Transmettez un horodatage Unix entier compris dans la période actuelle des postes de l’abonnement. Si l’abonnement utilise une planification d’abonnement, assurez-vous que l’horodatage est antérieur à la date de début de la phase suivante de la planification. Vous ne pouvez fixer la `proration_date` antérieure à la période en cours que pendant la première période d’un abonnement antidaté. Dans cette situation, la `proration_date` doit être égale ou postérieure à la `subscription[start_date]` (date de début antidatée). Dans tous les autres cas, la valeur de `proration_date` ne peut pas être antérieure à la valeur de `current_period_start`.