# Fonctionnement de la facturation Découvrir les étapes du cycle de vie d'une facture. Les factures fournissent une élément détaillée des biens et services rendus, qui comprend le coût, la quantité et les taxes. Vous pouvez envoyer des factures aux clients pour collecter le paiement ou vous pouvez créer une facture et débiter automatiquement le moyen de paiement enregistré d’un client. *Subscriptions* génèrent automatiquement des factures pour chaque cycle de facturation. En savoir plus sur le [cycle de vie des factures pour Subscriptions](https://docs.stripe.com/billing/invoices/subscription.md#sub-invoice-lifecycle). Lorsque vous créez une facture, vous pouvez sélectionner un [client](https://docs.stripe.com/invoicing/customer.md) et des [produits](https://docs.stripe.com/invoicing/products-prices.md) existants, ou en créer et en enregistrer de nouveaux. Vous pouvez également créer des produits ponctuels uniquement pour la facture actuelle. Vous pouvez utiliser à la fois le [Dashboard](https://docs.stripe.com/invoicing/dashboard.md) et l’[API](https://docs.stripe.com/api/invoices.md) pour créer, modifier et gérer des factures. ## Cycle de vie d’une facture Après que vous avez créé vos factures manuellement ou dans le cadre d’un abonnement, celles-ci passent par différents états entre leur création et leur règlement. Stripe appelle cela le flux d’encaissement automatique. Le cycle de vie classique d’une facture se déroule comme suit : 1. Toute nouvelle facture se voit attribuer l’état `draft`. 1. Stripe [finalise une facture](https://docs.stripe.com/invoicing/integration/workflow-transitions.md#finalized) lorsqu’elle est prête à être payée en définissant son état sur `open`. La majeure partie des détails d’une facture finalisée ne peut plus être soumise à modification. 1. Stripe peut soit attendre que le client règle la facture, soit tenter de la payer automatiquement à l’aide du moyen de paiement par défaut du client. - Si le paiement aboutit, Stripe bascule l’état de la facture sur `paid`. - En cas d’échec de paiement ou si la facture n’est pas entièrement payée, elle reste à l’état `open`. 1. Vous pouvez éventuellement définir l’état d’une facture impayée sur `void` ou `uncollectible`. 1. Vous pouvez également modifier l’état d’une facture payée pour le remettre à l’état « ouvert » en [annulant les paiements](https://docs.stripe.com/invoicing/apply-payments.md) qui y sont associés. Vous pouvez [configurer Stripe de façon à envoyer des e-mails aux clients](https://docs.stripe.com/invoicing/send-email.md) à différentes étapes du cycle de vie d’une facture, par exemple lors de la finalisation d’une facture ou en cas d’échec du paiement automatique. ## États des factures Les factures peuvent se voir attribuer l’un des états suivants. Les actions que vous pouvez effectuer sur les factures dépendent de leur état. | État | Description | Actions possibles | | ------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [brouillon](https://docs.stripe.com/invoicing/overview.md#draft) | La facture n’est pas prête à être envoyée. Au départ, toutes les factures se voient attribuer l’état `draft`. | - Modifiez n’importe quelle partie de la facture. - Lorsque la facture est prête, finalisez-la en définissant son état sur `open`. - Si la facture n’est associée à aucun abonnement, vous pouvez la [supprimer](https://docs.stripe.com/invoicing/overview.md#deleted). | | [en cours](https://docs.stripe.com/invoicing/overview.md#open) | La facture est finalisée et doit être payée. | - Envoyez la facture à un client pour paiement. - Modifiez [uniquement certains éléments de la facture](https://docs.stripe.com/invoicing/invoice-edits.md). Pour apporter des modifications plus importantes, créez une nouvelle facture et annulez l’ancienne. - Définissez l’état de la facture sur `paid`, `void` ou `uncollectible`. - [Modifier](https://docs.stripe.com/invoicing/invoice-edits.md) la facture. | | [payée](https://docs.stripe.com/invoicing/overview.md#paid) | Cette facture est payée. | - Passez l’état de la facture à `open`. - Détachez les paiements de la facture. | | [annulée](https://docs.stripe.com/invoicing/overview.md#void) | Cette facture est annulée. | - Aucune action supplémentaire. | | [non recouvrable](https://docs.stripe.com/invoicing/overview.md#uncollectible) | Il est peu probable que le client paie la facture. En règle générale, vous devez la traiter comme une créance irrécouvrable dans votre processus comptable. | - Définissez l’état de la facture sur `void` ou `paid`. | ### Brouillons de facture Vous pouvez mettre à jour pratiquement tous les détails d’une facture à l’état `draft`. Vous pouvez également la supprimer, sauf si elle est associée à un abonnement. Lorsqu’une facture à l’état `draft` est prête à être envoyée pour paiement, finalisez-la en définissant son état sur `open`. Vous pouvez supprimer une facture `draft`. Vous ne pouvez pas récupérer une facture supprimée. #### Dashboard 1. Accédez à la [page Factures](https://dashboard.stripe.com/test/invoices). 1. Cliquez sur le menu de débordement (⋯) en regard de la facture. 1. Cliquez sur **Supprimer le brouillon**. #### API Si vous supprimez une facture à l’aide de l’API et que vous avez configuré des endpoints de [webhook](https://docs.stripe.com/webhooks.md), Stripe envoie un événement `invoice.deleted`. ```curl curl -X DELETE https://api.stripe.com/v1/invoices/id \ -u "<>:" ``` ### Factures ouvertes La facture a été finalisée et il reste un solde. Si le montant dû est inférieur au [montant minimal facturable](https://docs.stripe.com/currencies.md#minimum-and-maximum-charge-amounts), la facture passe automatiquement à l’état `paid` et Stripe débite le montant du [solde créditeur du client](https://docs.stripe.com/billing/customer/balance.md). Dans le Dashboard, les factures à l’état `open` peuvent afficher un badge différent, tel que `Past due` ou `Retrying`. Dans certains cas, vous pouvez survoler le badge avec la souris pour afficher une infobulle explicative. Si le paiement d’une facture en cours sans abonnement a été initié mais est toujours en attente, le badge `Pending` apparaît dans la liste des factures. Cependant, la page de ses détails affiche le badge `Open`. Vous ne pouvez mettre à jour que certains éléments d’une facture en cours, comme le mémo ou les métadonnées. Pour apporter des modifications plus importantes, vous devez [corriger la facture](https://docs.stripe.com/invoicing/invoice-edits.md) en la remplaçant par une nouvelle version. Vous ne pouvez pas supprimer une facture finalisée. Pour l’annuler, définissez son état sur `void`. ### Factures payées Le client a payé la facture. Cet état est définitif, ce qui signifie que vous ne pouvez plus modifier l’état de la facture. #### Dashboard Pour effectuer une tentative de paiement via le Dashboard, ouvrez la [page des détails de la facture](https://docs.stripe.com/invoicing/dashboard/manage-invoices.md#invoice-details-page) et cliquez sur **Débiter le client**. #### API L’exemple suivant vous montre comment basculer une facture à l’état `paid` à l’aide du endpoint [Pay](https://docs.stripe.com/api/invoices/pay.md). Si vous avez configuré des endpoints de [webhook](https://docs.stripe.com/webhooks.md), vous recevrez un événement `invoice.payment_failed` ou un événement `invoice.paid`, en fonction du résultat de la tentative de paiement. ```curl curl -X POST https://api.stripe.com/v1/invoices/id/pay \ -u "<>:" ``` Vous recevez l’événement `invoice.payment_succeeded` uniquement lors de la création et de l’aboutissement d’un PaymentIntent associé à une facture. Stripe envoie l’événement `invoice.paid` dès qu’une facture passe à l’état `paid`. Il est aussi possible qu’une facture bascule sur `paid` sans PaymentIntent associé dans les cas suivants : - Elle correspond à une période d’essai ou à un abonnement gratuit - Le montant correspondant à `amount_due` est couvert par le [solde créditeur du client](https://docs.stripe.com/billing/customer/balance.md) ou est inférieur au [montant de paiement minimum](https://docs.stripe.com/currencies.md#minimum-and-maximum-charge-amounts) - Elle est marquée comme [paid_out_of_band](https://docs.stripe.com/api/invoices/pay.md#pay_invoice-paid_out_of_band) Dans un tel cas, vous recevez l’événement `invoice.paid`, mais pas l’événement `invoice.payment_succeeded`. #### Factures externes à Stripe Si un client paie une facture en dehors de Stripe, vous pouvez définir manuellement son [état](https://docs.stripe.com/invoicing/overview.md#invoice-statuses) sur `paid` via le Dashboard ou l’API. #### Dashboard Vous pouvez marquer manuellement une facture ouverte comme payée dans le Dashboard. Sur la page Détails de la facture, cliquez sur le menu de débordement (⋯) et sélectionnez **Modifier l’état de la facture**. Dans la boîte de dialogue **Modifier l’état de la facture**, sélectionnez **Payée**. #### API Pour marquer manuellement une facture en cours comme payée dans l’API, utilisez le paramètre [paid_out_of_band](https://docs.stripe.com/api/invoices/pay.md#pay_invoice-paid_out_of_band) lorsque vous soumettez une requête au endpoint [Pay](https://docs.stripe.com/api/invoices/pay.md). ### Annuler des factures En théorie, l’annulation d’une facture équivaut à sa suppression. Cependant, lorsque vous annulez une facture, une trace en est conservée, ce qui vous permet de la rechercher ensuite grâce à son numéro. Les factures annulées sont considérées comme nulles à des fins de reporting et ne peuvent donc pas être réglées. Cet état est définitif, ce qui signifie vous ne pouvez plus modifier l’état de la facture. Après l’annulation d’une facture, la [page de facture hébergée](https://docs.stripe.com/invoicing/hosted-invoice-page.md) reste accessible et affiche un message indiquant que la facture a été annulée. Vous pouvez uniquement annuler une facture à l’état `open` ou `uncollectible`. > Consultez les réglementations locales pour déterminer si et comment une facture peut être modifiée, annulée ou invalidée dans la juridiction où vous exercez votre activité. Vous pouvez être amené à [émettre une autre facture](https://docs.stripe.com/invoicing/integration.md#create-invoice-code) ou un [avoir](https://docs.stripe.com/invoicing/integration/programmatic-credit-notes.md) à la place. Stripe vous recommande de consulter votre conseiller juridique pour obtenir des conseils spécifiques à votre entreprise. #### Dashboard Pour annuler une facture depuis le Dashboard : 1. Accédez à la page des **détails de la facture**. 1. Cliquez sur le menu de débordement (⋯)et sélectionnez **Modifier l’état de la facture**. 1. Dans la boîte de dialogue qui s’affiche, sélectionnez **Annuler**. #### API Pour annuler une facture via l’API : ```curl curl -X POST https://api.stripe.com/v1/invoices/id/void \ -u "<>:" ``` Si vous avez configuré des endpoints de [webhook](https://docs.stripe.com/webhooks.md), vous recevrez un événement `invoice.voided` lorsqu’une facture basculera à l’état `void`. ### Factures irrécouvrables Il arrive que vos clients ne puissent pas s’acquitter de leurs factures impayées. Par exemple, supposons que vous fournissiez des services d’une valeur de 1 000 USD à votre client, mais qu’il se soit déclaré en faillite et qu’il ne dispose d’aucun actif pour payer la facture. Par conséquent, vous décidez de passer la créance par pertes et profits, dans la mesure où il est peu probable que le règlement vous parvienne un jour. Vous pouvez alors basculer la facture à l’état `uncollectible` pour permettre le suivi du montant dû aux fins de votre reporting, dans le cadre de votre traitement comptable des créances irrécouvrables. #### Dashboard Vous pouvez marquer une facture ouverte comme non recouvrable dans le Dashboard. Sur la page Détails de la facture, cliquez sur le menu de débordement (⋯) et sélectionnez **Modifier l’état de la facture**. Dans la boîte de dialogue **Modifier l’état de la facture**, sélectionnez **Non recouvrable**. #### API Pour marquer une facture en cours comme non recouvrable à l’aide de l’API, utilisez l’endpoint [Mark uncollectible](https://docs.stripe.com/api/invoices/mark_uncollectible.md), comme illustré dans l’exemple suivant : ```curl curl -X POST https://api.stripe.com/v1/invoices/id/mark_uncollectible \ -u "<>:" ``` Si vous avez configuré des endpoints de [webhook](https://docs.stripe.com/webhooks.md), vous recevrez un événement `invoice.marked_uncollectible` lorsqu’une facture basculera à l’état `uncollectible`. ## See also - [Utilisation du Dashboard](https://docs.stripe.com/invoicing/dashboard.md) - [Intégration à l’aide de l’API](https://docs.stripe.com/invoicing/integration.md) - [Changements d’état et finalisation](https://docs.stripe.com/invoicing/integration/workflow-transitions.md)