Accéder directement au contenu
Créez un compte
ou
connecter-vous
Logo de la documentation Stripe
/
Demander à l'assistant IA
Créez un compte
Connectez-vous
Démarrer
Paiements
Revenus
Plateformes et places de marché
Gestion de fonds
Ressources pour les développeurs
Aperçu
Billing
PrésentationÀ propos des API Billing
Abonnements
Invoicing
    Présentation
    Fonctionnement de la facturation
    Guide de démarrage rapide sur l'API
    Intégration via l'API
    Facturation sans code
    Cycle de vie des factures
    Prévisualisation des factures
    Modifier des factures
    Programmer la finalisation des factures
    Changements et finalisation des états
    Envoyer des e-mails aux clients
    Générer des avoirs
    Facturer les clients
    Clients
    Solde créditeur du client
    Numéros fiscaux des clients
    Paiements sur facture
    Page de facture hébergée
    Créer des échéanciers pour les factures
    Accepter les paiements partiels
    Moyens de paiement pour les factures
    Encaissements automatisés
    Personnalisation des factures
    Personnaliser des factures
    Modèles de rendu pour les factures
    Grouper des sous-postes de facture
    Récapituler les postes
    Facturation mondiale
    Bonnes pratiques
    Clients multi-devises
    Autres fonctionnalités de facturation
    Produits et tarifs
    Gérer les sous-postes de facture groupés
    Taxes
Facturation à la consommation
Devis
Gestion des clients
Facturation avec d'autres produits
Recouvrement de revenus
Automatisations
Tester votre intégration
Tax
Présentation
Utiliser Stripe Tax
Gérer la conformité
Rapports
Présentation
Sélectionner un rapport
Configurer des rapports
API de rapport
Rapports sur plusieurs comptes
Comptabilisation des revenus
Données
PrésentationSchéma
Rapports personnalisés
Data Pipeline
Gestion des données
AccueilRevenusInvoicing

Modifier des factures

Comment modifier des factures après leur finalisation.

Factures d'abonnements

Vous ne pouvez pas réviser des factures associées à des abonnements après leur finalisation. Pour ce type de factures, le bouton Modifier la facture est désactivé.

Stripe vous offre la possibilité de modifier une facture finalisée à l’état open ou uncollectible. En revanche, vous ne pouvez pas modifier une facture à l’état void ou paid. Vous pourriez être amené à corriger une facture si vous devez :

  • Modifier la description de la facture.
  • Mettre à jour les coordonnées du client.
  • Ajouter, supprimer ou modifier un poste de facture.
  • Ajouter une ristourne ou appliquer des taxes.

Vous pouvez également personnaliser les factures si vous souhaitez en modifier le contenu ou le marquage.

Remarque

Le processus de conformité des factures peut varier selon les pays. Par exemple, si votre entreprise est établie dans l’Union européenne, vous pouvez annuler une facture et la remplacer par un avoir, au lieu de corriger la facture initiale. Stripe vous recommande de consulter votre conseiller juridique pour obtenir des conseils personnalisés pour votre entreprise.

Vous pouvez utiliser l’API pour modifier une facture après sa finalisation.

Corriger une facture

Pour lancer le processus de révision post-finalisation, utilisez l’endpoint Create avec le paramètre from_invoice. Cette requête crée un nouveau brouillon de facture qui est lié à la pièce d’origine et dont il constitue une révision. Tous les postes associés à la facture sont dupliqués, mais pas les avoirs, ce qui peut entraîner une modification du montant dû. La requête ne récupère pas non plus les postes en attente, comme c’est le cas lors de la création d’une facture.

Remarque

Une fois une facture finalisée, ses principaux champs, y compris les montants monétaires, les ristournes et les informations client, ne sont pas modifiables à l’aide du endpoint Update.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/invoices \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "from_invoice[invoice]"={{ORIGINAL_INVOICE_ID}} \ -d "from_invoice[action]"=revision

Lorsque vous envoyez une requête pour la création d’une facture à l’aide du paramètre from_invoice, Stripe renvoie le résultat suivant :

{ "id": "{{FIRST_REVISION_INVOICE_ID}}", "status": "draft", "from_invoice": { "invoice": "{{ORIGINAL_INVOICE_ID}}", "action": "revision", }, }

Les champs du nouveau brouillon de facture sont identiques à ceux de la facture d’origine, à l’exception des éléments suivants :

  • Si vous avez mis à jour le client de la facture après avoir finalisé la facture d’origine, la nouvelle facture utilise alors les nouvelles informations client. Notez que si vous utilisez le calcul automatique des taxes, cette modification est susceptible d’entraîner un recalcul du montant des taxes.
  • Si la facture d’origine était paramétrée sur auto_advance == true, alors l’état du paramètre pour la correction de facture est défini sur false.
  • Le starting_balance et le amount_due de la correction de facture reflètent n’importe quel solde client appliqué à la facture d’origine en plus des soldes supplémentaires disponibles sur l’objet Customer.

Comme pour n’importe quel brouillon, vous pouvez apporter des changements supplémentaires à la facture. L’exemple suivant illustre la modification de la description d’une facture :

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/invoices/{{FIRST_REVISION_INVOICE_ID}} \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d description="Updated maintenance contract"

Pour ajouter un nouveau poste de facture à la facture corrigée :

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/invoiceitems \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=
{{CUSTOMER_ID}}
\ -d invoice={{FIRST_REVISION_INVOICE_ID}} \ -d "pricing[price]"=
{{PRICE_ID}}
\ -d quantity=100 \ --data-urlencode description="Additional Stripe swag!"

Grâce à la fonctionnalité de correction des factures, vous pouvez modifier les informations relatives au client. Les changements s’appliquent à la fois à la version PDF de la facture finalisée et à la page de facture hébergée :

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/customers/{{CUSTOMER_ID}} \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d name="John Doe"

Après avoir apporté les modifications souhaitées, finalisez la facture corrigée :

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl -X POST https://api.stripe.com/v1/invoices/{{FIRST_REVISION_INVOICE_ID}}/finalize \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

Une fois la facture corrigée finalisée, son état bascule sur open et le paramètre finalized_at est défini sur l’horodatage actuel (plutôt que sur l’horodatage finalized_at de la facture d’origine). Lorsque vous finalisez une facture, Stripe effectue les actions suivantes :

  • Annule la facture d’origine.
  • Ajoute un paramètre latest_revision à la facture d’origine.

Corrections multiples

Dans certains cas, vous aurez peut-être besoin d’apporter plusieurs corrections à une même facture. Pour ce faire, procédez de la même manière que pour la première modification ; Stripe mettra à jour le paramètre latest_revision pour toutes les corrections précédentes. Nous ne mettons à jour le paramètre latest_revision qu’au moment de la finalisation et non pas lorsque vous créez la facture corrigée.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl https://api.stripe.com/v1/invoices \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "from_invoice[invoice]"={{FIRST_REVISION_INVOICE_ID}} \ -d "from_invoice[action]"=revision

Lorsque vous envoyez une requête à l’aide du paramètre from_invoice, vous recevez le résultat suivant :

{ "id": "{{LATEST_REVISION_INVOICE_ID}}", "status": "draft", "from_invoice": { "invoice": "{{FIRST_REVISION_INVOICE_ID}}", "action": "revision", }, # ... more fields }

Finalisez la nouvelle facture pour terminer la correction :

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node
Go
.NET
No results
curl -X POST https://api.stripe.com/v1/invoices/{{LATEST_REVISION_INVOICE_ID}}/finalize \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

Si vous essayez de récupérer la facture d’origine, vous recevrez une réponse vous indiquant qu’elle a été annulée. Stripe annule la facture d’origine dès la finalisation de la première correction.

{ "id": "{{ORIGINAL_INVOICE_ID}}", "status": "void", "latest_revision": "{{LATEST_REVISION_INVOICE_ID}}", # This has changed from "{{FIRST_REVISION_INVOICE_ID}". }

Contraintes applicables à la correction des factures

Stripe impose diverses contraintes en matière de révision des factures :

  • Vous ne pouvez pas créer plus d’un brouillon de correction par facture : si vous utilisez la méthode POST auprès du endpoint /v1/invoices alors qu’il existe déjà une autre facture à l’état draft pour ce même paramètre from_invoice[invoice], Stripe renvoie un code d’état 400.

  • Vous pouvez uniquement corriger des factures ouvertes ou non recouvrables : si vous utilisez la méthode POST auprès du endpoint /v1/invoices et que from_invoice[invoice] correspond à une facture à l’état open ou uncollectible, nous renvoyons un code d’état 400.

  • Si une facture ouverte ou non recouvrable a un PaymentIntent en cours, vous ne pouvez pas créer ou finaliser des corrections : si le client utilise un moyen de paiement qui n’aboutit pas au passage de la facture à l’état paid lors de la tentative de paiement (par exemple, us_bank_account), nous renvoyons un code d’état 400.

  • Si une facture ouverte ou non recouvrable passe à l’état paid ou void ou qu’elle possède un PaymentIntent en cours de traitement alors qu’un brouillon de correction est en cours, vous ne pouvez pas finaliser la correction : Stripe y veille en envoyant un code d’état 400 à tous les endpoints susceptibles d’entraîner une finalisation, y compris /v1/invoices/:id/finalize, /v1/invoices/:id/pay et /v1/invoices/:id/send.

  • Vous ne pouvez pas corriger des factures associées à un abonnement : après sa finalisation, vous ne pouvez plus modifier une facture possédant un ID d’abonnement. Pour ce type de factures, Stripe envoie un webhook invoice.created 1 heure avant la finalisation pour toutes les factures à l’exception de la facture d’origine. En outre, vous ne pouvez pas modifier des factures indépendantes sur lesquelles figurent des postes relatifs à un abonnement. Ces factures sont généralement créées en extrayant des postes au prorata en attente.

  • Vous ne pouvez pas corriger des factures comportant des avoirs : vous ne pouvez pas créer une correction pour une facture qui comporte un avoir.

Voir aussi

  • Utilisation du Dashboard
  • Intégration à l’aide de l’API
  • Page de facture hébergée
Cette page vous a-t-elle été utile ?
OuiNon
  • Besoin d'aide ? Contactez le service Support.
  • Rejoignez notre programme d'accès anticipé.
  • Consultez notre log des modifications.
  • Des questions ? Contactez l'équipe commerciale.
  • LLM ? Lire llms.txt.
  • Propulsé par Markdoc