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
    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
      Numéros fiscaux des comptes
      Taux de taxe et numéros fiscaux
      Montants de taxes manuels
Facturation à la consommation
Devis
Gestion des clients
Billing with other products
Recouvrement de revenus
Automatisations
Comptabilisation des revenus
Tester votre intégration
Tax
Présentation
Use Stripe tax
Manage compliance
Rapports
Présentation
Sélectionner un rapport
Configure reports
API de rapport
Rapports sur plusieurs comptes
Comptabilisation des revenus
Données
PrésentationSchéma
Rapports personnalisés
Data Pipeline
Gestion des données
AccueilRevenusInvoicingTaxes

Utiliser des montants de taxes calculés en dehors de Stripe avec Stripe Billing

Utilisez les taxes calculées à partir d'un système externe avec Stripe Invoices.

Pour s’adapter à de nombreux scénarios de facturation différents, Stripe permet de définir les montants de taxe directement sur les factures. Cela vous permet de l’intégrer à d’autres systèmes de calcul des taxes (par exemple à un outil tiers comme Avalara ou à un outil interne). Ce guide passe en revue différents scénarios de facturation pour vous montrer comment utiliser le champ tax_amounts.

Créer une facture avec des montants de taxe manuels

Cette section décrit l’ajout manuel de montants de taxe aux sous-postes de facture.

Créer une facture avec un poste de facture

La première étape consiste à créer une facture. Nous partons du principe que vous avez déjà créé un client, mais si ce n’est pas le cas, veuillez vous reporter au guide concernant les clients.

Command Line
cURL
curl https://api.stripe.com/v1/invoices \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=
{{CUSTOMER_ID}}

Les montants de taxe manuels peuvent uniquement être ajoutés aux sous-postes de facture. Ajoutez donc un poste de facture à la facture.

Command Line
cURL
curl https://api.stripe.com/v1/invoiceitems \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d customer=
{{CUSTOMER_ID}}
\ -d invoice=
{{INVOICE_ID}}
\ -d amount=100 \ -d currency=usd

Mettre à jour le poste de facture avec tax_amounts

Le endpoint Update invoice line item accepte le paramètre tax_amounts. Ce champ permet aux marchands de définir directement les montants des taxes sur les sous-postes de facture. Le champ nécessite également des données concernant le taux de taxe afin de présenter des informations adéquates au client. L’exemple ci-dessous modifie un poste de facture avec le champ tax_amounts.

Command Line
cURL
curl https://api.stripe.com/v1/invoices/
{{INVOICE_ID}}
/lines/il_0O4tNe589O8KAxCGYD7OyXPP
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "tax_amounts[0][amount]"=10 \ -d "tax_amounts[0][taxable_amount]"=100 \ -d "tax_amounts[0][tax_rate_data][percentage]"=10 \ -d "tax_amounts[0][tax_rate_data][inclusive]"=false \ -d "tax_amounts[0][tax_rate_data][tax_type]"=sales_tax \ -d "tax_amounts[0][tax_rate_data][display_name]"="Sales Tax" \ -d "tax_amounts[0][tax_rate_data][description]"="Texas Sales Tax" \ -d "tax_amounts[0][tax_rate_data][jurisdiction]"=Texas \ -d "tax_amounts[0][tax_rate_data][jurisdiction_level]"=state \ -d "tax_amounts[0][tax_rate_data][country]"=US \ -d "tax_amounts[0][tax_rate_data][state]"=TX

Tous les champs sous tax_amounts sont obligatoires, à l’exception de description, jurisdiction, jurisdiction_level, country, state, et tax_type. L’objet Invoice Line Iten renvoie un champ tax_amounts.

{ id: "il_0O4tNe589O8KAxCGYD7OyXPP", object: "line_item", amount: 100, amount_excluding_tax: 100, currency: "usd", ... tax_amounts: [ { amount: 10, inclusive: false, tax_rate: "txr_0Ns7kW589O8KAxCGXoi7EAuS", taxability_reason: null, taxable_amount: 100 } ], tax_rates: [], ... }

Remarque

Stripe crée ou réutilise automatiquement un taux de taxe existant en fonction de tax_rate_data. Cependant, Stripe calcule uniquement le montant des taxes sur la facture en fonction du paramètre amount. Les autres valeurs, telles que le taux de taxe, ne sont utilisées qu’à des fins d’affichage sur la facture. Aucune validation n’est exécutée sur ces champs pour s’assurer qu’ils sont cohérents avec les montants de taxe indiqués.

Finaliser la facture

Une fois que tous les postes de facture ont été mis à jour avec les montants des taxes, vous devez finaliser la facture. Les montants de taxe ne peuvent pas être modifiés après la finalisation de la facture. Reportez-vous au guide de modification de facture si vous devez modifier la facture après sa finalisation.

Command Line
cURL
curl -X POST https://api.stripe.com/v1/invoices/
{{INVOICE_ID}}
/finalize
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

Stripe crée automatiquement des taux de taxe

Pour les montants de taxe manuels, Stripe exige des informations sur le taux de taxe correspondant. Le taux de taxe n’est utilisé que pour présenter des informations aux clients. Il n’est utilisé dans aucun calcul.

Stripe crée automatiquement des objets de taux de taxe en arrière-plan d’après tax_rate_data. Si les mêmes données de taux de taxe sont transmises plusieurs fois, Stripe référence l’objet de taux de taxe existant au lieu d’en créer un autre. Les champs suivants permettent de dédupliquer le taux de taxe : percentage, inclusive, display_name, jurisdiction, jurisdiction_level, country, state, et tax_type. Dans cet exemple, supposons qu’un deuxième sous-poste de facture ait été mis à jour sur la facture de la section précédente avec le même tax_rate_data.

Command Line
cURL
curl https://api.stripe.com/v1/invoices/
{{INVOICE_ID}}
/lines/il_0P6nbg589O8KAxCGRWBJAdNV
\ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "tax_amounts[0][amount]"=50 \ -d "tax_amounts[0][taxable_amount]"=500 \ -d "tax_amounts[0][tax_rate_data][percentage]"=10 \ -d "tax_amounts[0][tax_rate_data][inclusive]"=false \ -d "tax_amounts[0][tax_rate_data][tax_type]"=sales_tax \ -d "tax_amounts[0][tax_rate_data][display_name]"="Sales Tax" \ -d "tax_amounts[0][tax_rate_data][description]"="Texas Sales Tax" \ -d "tax_amounts[0][tax_rate_data][jurisdiction]"=Texas \ -d "tax_amounts[0][tax_rate_data][jurisdiction_level]"=state \ -d "tax_amounts[0][tax_rate_data][country]"=US \ -d "tax_amounts[0][tax_rate_data][state]"=TX
{ id: "il_0P6nbg589O8KAxCGRWBJAdNV", object: "line_item", amount: 100, amount_excluding_tax: 100, currency: "usd", ... tax_amounts: [ { amount: 10, inclusive: false, tax_rate: "txr_0Ny6QR589O8KAxCGo6MKGPxM", taxability_reason: null, taxable_amount: 100 } ], tax_rates: [], ... }

Les deux sous-postes de facture ont le même ID tax_rate sous tax_amount. Stripe gère la création et la déduplication des taux de taxe afin de simplifier la tâche des marchands. Bien que l’ID tax_rate corresponde à un objet de taux de taxe valide, les ID mappés à des taux de taxe créés automatiquement ne peuvent pas être transmis dans le champ tax_rates de l’API. La seule exception à cette règle est l’endpoint de création d’avoirs.

Émettre un avoir

Les avoirs permettent d’ajuster les factures sans avoir à annuler la facture. Lors de l’émission d’un avoir pour un sous-poste de facture avec des montants de taxe manuels, l’API a besoin d’informations supplémentaires pour le créer avec précision.

Créer un avoir

L’endpoint de création d’avoirs accepte également le paramètre tax_amounts. Ce champ est obligatoire lorsque le sous-poste de facture correspondant comporte des montants de taxe manuels. Cela permet de garantir une comptabilité précise de l’avoir et d’assurer la cohérence avec vos factures.

Command Line
cURL
curl https://api.stripe.com/v1/credit_notes \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d invoice=
{{INVOICE_ID}}
\ -d reason=duplicate \ -d "lines[0][type]"=invoice_line_item \ -d "lines[0][invoice_line_item]"=il_0O4tNe589O8KAxCGYD7OyXPP \ -d "lines[0][tax_amounts][0][amount]"=10 \ -d "lines[0][tax_amounts][0][taxable_amount]"=100 \ -d "lines[0][tax_amounts][0][tax_rate]"=txr_0Ns7kW589O8KAxCGXoi7EAuS

Limites

Gardez à l’esprit les contraintes suivantes lorsque vous travaillez avec des montants de taxe manuels.

Les postes de facture n’ont pas de montant de taxe

Les montants de taxe manuels peuvent uniquement être ajoutés aux sous-postes de facture.

taxable_amount et tax_rates ne sont pas validés

Le montant d’imposition et le taux de taxe transmis dans la requête ne sont utilisés qu’à des fins d’affichage. Ils ne sont pas validés par rapport au montant de taxe indiqué dans la requête.

Impossible de mélanger tax_amounts et tax_rates

Un sous-poste de facture ne peut pas comporter de montants de taxe manuels s’il possède également un taux de taxe, et inversement. De plus, les sous-postes de facture ne peuvent pas comporter de montants de taxe manuels si la facture présente un taux de taxe par défaut ou si l’un des autres sous-postes de la facture présente un taux de taxe.

tax_amounts peut devenir obsolète lors de la mise à jour d’autres champs

Les montants de taxe manuels existants restent sur le poste de facture, sauf s’ils sont directement modifiés. Cela peut rendre des montants de taxe obsolètes lorsque vous mettez à jour le poste de facture avec des champs associés à son montant, tels que amount, discounts ou price.

Les taux de taxe créés automatiquement ne peuvent pas être utilisés directement

Stripe crée automatiquement des objets de taux de taxe pour les montants de taxe manuels. Ces taux de taxe ne peuvent pas être directement référencés sur les endpoints liés aux factures ou aux paiements, à l’exception de l’endpoint des avoirs. Ils ne peuvent pas non plus être mis à jour directement et ne seront pas inclus dans l’endpoint de tous les taux de taxe. Cependant, les données du taux de taxe sont accessibles en appelant l’endpoint de récupération du taux de taxe avec son token.

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
Guides connexes
Collecter les taxes automatiquement avec Stripe Tax
Collecter les taxes avec des taux de taxe manuels
Produits utilisés
Invoicing
Tax