# Collecter automatiquement les taxes dans les sessions Checkout Découvrez comment calculer automatiquement les taxes dans Checkout. Stripe Tax calcule automatiquement les taxes sur tous les achats et les *abonnements* (A Subscription represents the product details associated with the plan that your customer subscribes to. Allows you to charge the customer on a recurring basis) accumulés pendant une session Checkout. Si vous n’avez pas intégré Checkout, vous devez effectuer l’intégration en utilisant le [Guide pour accepter un paiement](https://docs.stripe.com/checkout/quickstart.md). Cette vidéo montre comment activer la collecte automatique des taxes avec une intégration hébergée comme Stripe Checkout. [Watch on YouTube](https://www.youtube.com/watch?v=fMk7y-C6JuM) ## Créer une session Checkout Vous pouvez créer des sessions Checkout pour des achats ponctuels et récurrents. Les taux de taxe d’un client sont fonction de sa localisation, que Checkout évalue à partir de son adresse. L’adresse que Checkout utilise pour calculer les taxes dépend du fait que le client est nouveau ou existant, et si vous recueillez les adresses de livraison pendant la session Checkout : | | Nouveau client | Client existant | | ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Recueillir uniquement une adresse de facturation** | Checkout calcule les taxes en fonction de l’adresse de facturation du client saisie dans la session Checkout | Si le client a préalablement enregistré une adresse de livraison, Checkout calcule les taxes sur la base de cette adresse. Sinon, vous pouvez calculer les taxes sur la base de l’adresse de facturation saisie pendant la session Checkout (en précisant [customer_update[address]=auto](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-customer_update-address)) ou l’adresse de facturation enregistrée pour le client (le régime par défaut). | | **Collecter une adresse de livraison** | Checkout calcule les taxes en fonction de l’adresse de livraison du client saisie dans la session Checkout | Checkout calcule les taxes en fonction de l’adresse de livraison du client saisie dans la session Checkout. *Les adresses existantes sur le client ne s’appliqueront pas dans ce cas.* | > Si vous utilisez Stripe Tax dans Checkout, vous devez collecter l’adresse de livraison pour que Google Pay figure dans les moyens de paiement proposés. Apple Pay avec Stripe Tax s’affiche uniquement lorsque le navigateur du client prend en charge la version 12 ou supérieure d’Apple Pay. ## Calculer les taxes pour les nouveaux clients Définissez `customer_creation=always` dans la session Checkout afin de créer un [Customer](https://docs.stripe.com/api/customers.md) avec des adresses de facturation et de livraison collectées lorsque vous n’identifiez pas un client existant. Checkout calcule la taxe en fonction de l’emplacement de l’adresse de livraison, si elle est fournie, ou à défaut, de l’adresse de facturation. #### Page hébergée par Stripe ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price]={{PRICE_ID}}" \ -d "line_items[0][quantity]=2" \ -d "automatic_tax[enabled]=true" \ -d customer_creation=always \ -d mode=payment \ --data-urlencode "success_url=https://example.com/success" ``` #### Formulaire intégré ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price]={{PRICE_ID}}" \ -d "line_items[0][quantity]=2" \ -d "automatic_tax[enabled]=true" \ -d customer_creation=always \ -d mode=payment \ -d ui_mode=embedded_page \ --data-urlencode "return_url=https://example.com/return" ``` ## Calcul de la taxe pour les clients existants #### Customer v1 Pour calculer la taxe sur des sessions Checkout créées pour des clients existants, définissez `automatic_tax[enabled]` sur `true` et spécifiez l’ID `customer`. Checkout utilise la hiérarchisation d’adresses suivante pour calculer les taxes : 1. Si elle est spécifiée, Checkout utilise l’[adresse de livraison collectée](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-shipping_address_collection) pour calculer les taxes. Si vous collectez l’adresse de livraison, vous devez également définir `customer_update[shipping]` sur `auto` afin d’ajouter ou de mettre à jour le Customer avec l’adresse de livraison collectée. #### Page hébergée par Stripe ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price]={{PRICE_ID}}" \ -d "line_items[0][quantity]=2" \ -d "automatic_tax[enabled]=true" \ -d "customer={{CUSTOMER_ID}}" \ -d "customer_update[shipping]=auto" \ -d "shipping_address_collection[allowed_countries][0]=US" \ -d mode=payment \ --data-urlencode "success_url=https://example.com/success" ``` #### Formulaire intégré ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price]={{PRICE_ID}}" \ -d "line_items[0][quantity]=2" \ -d "automatic_tax[enabled]=true" \ -d "customer={{CUSTOMER_ID}}" \ -d "customer_update[shipping]=auto" \ -d "shipping_address_collection[allowed_countries][0]=US" \ -d mode=payment \ -d ui_mode=embedded_page \ --data-urlencode "return_url=https://example.com/return" ``` 1. Si vous ne collectez pas l’adresse de livraison, Checkout utilise l’[adresse de livraison existante](https://docs.stripe.com/api/customers/object.md#customer_object-shipping-address) du Customer pour calculer les taxes, si elle est disponible. 1. Si l’adresse de livraison n’est pas disponible, Checkout utilise l’adresse de facturation pour calculer les taxes. Définissez `billing_address_collection` sur `required` afin de toujours collecter une adresse de facturation, ou laissez la valeur `auto` (par défaut) pour la collecter lorsque nécessaire. Si Checkout collecte l’adresse de facturation, définissez `customer_update[address]` sur `auto` pour indiquer à Tax d’utiliser l’adresse de facturation collectée, ou sur `never` afin d’utiliser l’adresse existante du Customer pour calculer les taxes. #### Page hébergée par Stripe ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price]={{PRICE_ID}}" \ -d "line_items[0][quantity]=2" \ -d "automatic_tax[enabled]=true" \ -d "customer={{CUSTOMER_ID}}" \ -d "customer_update[address]=auto" \ -d billing_address_collection=required \ -d mode=payment \ --data-urlencode "success_url=https://example.com/success" ``` #### Formulaire intégré ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price]={{PRICE_ID}}" \ -d "line_items[0][quantity]=2" \ -d "automatic_tax[enabled]=true" \ -d "customer={{CUSTOMER_ID}}" \ -d "customer_update[address]=auto" \ -d billing_address_collection=required \ -d mode=payment \ -d ui_mode=embedded_page \ --data-urlencode "return_url=https://example.com/return" ``` 1. Sinon, Checkout utilise les adresses du customer en suivant la [hiérarchie des adresses](https://docs.stripe.com/tax/customer-locations.md#address-hierarchy). ## Vérifier le résultat Si vous souhaitez examiner les résultats du dernier calcul de taxe, vous pouvez lire le montant des taxes calculées par Checkout dans [total_details.amount_tax](https://docs.stripe.com/api/checkout/sessions/object.md#checkout_session_object-total_details), dans l’outil de la session Checkout. De plus, les taxes calculées pour chaque paiement sont disponibles lorsque vous consultez un paiement dans le [Dashboard](https://dashboard.stripe.com/test/payments). ## Optional: Modifiez vos produits et tarifs Stripe Tax utilise les informations stockées sur les *produits* (Products represent what your business sells—whether that's a good or a service) et les *tarifs* (Prices define how much and how often to charge for products. This includes how much the product costs, what currency to use, and the interval if the price is for subscriptions) pour calculer la taxe, par exemple le *code fiscal* (A tax code is the category of your product for tax purposes) et le *régime fiscal* (Tax behavior determines whether you want to include taxes in the price ("inclusive") or add them on top ("exclusive")). Si vous ne spécifiez pas explicitement ces configurations, Stripe Tax utilisera le code de taxe par défaut sélectionné dans les [paramètres fiscaux](https://dashboard.stripe.com/settings/tax). Pour plus d’informations, consultez la page [Spécifier les codes fiscaux du produit et le comportement fiscal](https://docs.stripe.com/taxer/products-prices-taxer-codes-taxer-behavior.md). ## Optional: Spécification des codes de taxe lors de la création de produits en série Lorsque vous créez une Checkout Session avec [line_items.price_data.product_data](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-line_items-price_data-product_data), vous pouvez spécifier un code de taxe directement dans la requête. Nous vous recommandons de le faire lorsque vous créez de nouveaux produits plutôt que d’utiliser des ID de produits existants. #### Page hébergée par Stripe ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price_data][currency]=usd" \ -d "line_items[0][price_data][unit_amount]=2000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][product_data][tax_code]=txcd_99999999" \ -d "line_items[0][quantity]=1" \ -d "automatic_tax[enabled]=true" \ -d mode=payment \ --data-urlencode "success_url=https://example.com/success" ``` #### Formulaire intégré ```curl curl https://api.stripe.com/v1/checkout/sessions \ -u "<>:" \ -d "line_items[0][price_data][currency]=usd" \ -d "line_items[0][price_data][unit_amount]=2000" \ -d "line_items[0][price_data][product_data][name]=T-shirt" \ -d "line_items[0][price_data][product_data][tax_code]=txcd_99999999" \ -d "line_items[0][quantity]=1" \ -d "automatic_tax[enabled]=true" \ -d mode=payment \ -d ui_mode=embedded_page \ --data-urlencode "return_url=https://example.com/return" ``` Remplacez `txcd_99999999` par le [code de taxe](https://docs.stripe.com/tax/tax-codes.md) approprié pour votre produit. Le code de taxe détermine la manière dont le produit est catégorisé à des fins fiscales. Si vous ne spécifiez pas de code de taxe, Stripe Tax utilise le code de taxe par défaut de vos [paramètres fiscaux](https://dashboard.stripe.com/settings/tax). ## See also - [Déterminer la localisation de vos clients](https://docs.stripe.com/tax/customer-locations.md) - [Checkout et les numéros fiscaux](https://docs.stripe.com/tax/checkout/tax-ids.md) - [Déclarations fiscales](https://docs.stripe.com/tax/reports.md) - [Utiliser Stripe Tax avec Connect](https://docs.stripe.com/tax/connect.md) - [Calculer les taxes dans votre tunnel de paiement personnalisé](https://docs.stripe.com/tax/custom.md)