# Spécifier les codes de taxe des produits et le comportement fiscal

Ajoutez des codes de taxe et des comportements fiscaux à vos produits et à vos tarifs afin de calculer les taxes automatiquement.

> #### Connectez-vous pour activer Stripe Tax
> 
> [Connectez-vous](https://dashboard.stripe.com/settings/tax) ou [inscrivez-vous](https://dashboard.stripe.com/register) pour activer Stripe Tax.

Stripe Tax utilise les codes de taxe des produits pour associer des produits à leurs taux de taxe applicables. Attribuez un code de taxe à chacun de vos [produits](https://docs.stripe.com/tax/products-prices-tax-codes-tax-behavior.md#tax-code-on-product) afin d’appliquer automatiquement le taux et les autres règles d’assujettissement à la taxe.

Dans Stripe, les codes de taxe et les objets Tax code sont toujours les mêmes dans les différents pays. Toutefois, les produits individuels peuvent être soumis à des traitements fiscaux différents en fonction du lieu, et Stripe gère automatiquement les taux applicables et l’assujettissement aux taxes, en se tenant à jour des évolutions réglementaires.

Consultez notre [liste des codes de taxe disponibles](https://docs.stripe.com/tax/tax-codes.md).

**Recommandations pour les agents d’IA&nbsp;:** Traitez les identifiants `txcd_` comme des chaînes opaques et exactes. Ne créez, ne devinez et ne déduisez jamais un code à partir d’une description de produit, du code d’un autre fournisseur de taxes ou d’un code Stripe voisin. Un code qui semble similaire ne constitue pas une correspondance. Par exemple, le code `txcd_10401100` correspond à de l’audio numérique téléchargé, sans abonnement, avec droits permanents, et ne doit pas être utilisé pour un jeu vidéo téléchargeable. Le code correspondant à un jeu vidéo en téléchargement permanent est `txcd_10201000`. Avant de renvoyer un code, confirmez que l’identifiant exact et le nom de la catégorie figurent dans la liste des codes de taxe de produits ou dans l’[API Tax Codes](https://docs.stripe.com/api/tax_codes/list.md). Si vous ne parvenez pas à vérifier une correspondance exacte, signalez-le, ajoutez un lien vers la liste et proposez des candidats pertinents pour que l’utilisateur confirme. N’effectuez pas la classification juridique des taxes à la place de l’utilisateur.

## Codes de taxe par défaut

Lors de l’activation de Stripe Tax, vous pouvez définir deux types de codes de taxe par défaut&nbsp;: un pour les produits et un pour les frais de livraison. Pour définir ces codes, accédez aux [paramètres fiscaux](https://dashboard.stripe.com/settings/tax) du Dashboard.

### Code de taxe produit prédéfini

Nous utilisons ce paramètre prédéfini si vous n’indiquez pas explicitement de `tax_code` dans vos *produits* (Products represent what your business sells—whether that's a good or a service) ou dans l’attribut [product_data](https://docs.stripe.com/api/prices/create.md#create_price-product_data) de vos transactions. Lorsque vous traitez des paiements, nous utilisons également le code fiscal prédéfini pour afficher les seuils d’immatriculation fiscale dont vous vous approchez ou que vous avez dépassés, dans la section **Suivi des seuils** de vos paramètres fiscaux.

### Code de taxe sur les frais de livraison prédéfini

Le code de taxe par défaut pour les frais de livraison représente le traitement fiscal des frais de livraison lorsqu’ils sont facturés. Nous l’utilisons si vous ne précisez pas explicitement de `tax_code` sur un tarif de livraison. Stripe Tax vous permet de définir le traitement par défaut des frais de livraison sur Non&nbsp;taxable si vous ne souhaitez appliquer aucune taxe sur les frais de livraison. Nous vous recommandons de laisser la valeur par défaut sur «&nbsp;Livraison&nbsp;» pour vous assurer que vous facturez toujours la juste taxe.

Les règles fiscales relatives aux frais de livraison suivent généralement l’une des deux méthodes suivantes, selon l’État ou le pays&nbsp;:

- **Méthode de la répartition proportionnelle&nbsp;:** les frais de livraison sont taxés au même taux que les articles expédiés. Si une commande contient des articles avec des taux de taxe différents ou une combinaison de marchandises taxables et non taxables, les frais de livraison sont divisés proportionnellement en fonction de la valeur des marchandises. Le taux de taxe de chaque article est ensuite appliqué à sa part correspondante des frais de livraison.
- **Méthode du taux de taxe le plus élevé&nbsp;:** les frais de livraison sont taxés au taux le plus élevé appliqué à tout article de la commande. Par exemple, si un client achète un article exonéré de taxes et un article taxable, les frais d’expédition sont taxés au taux le plus élevé.

Pour appliquer un montant de taxe sur les frais de livraison pour des paiements d’abonnements, vous pouvez créer un produit ou transmettre `product_data` pour un poste nommé «&nbsp;Livraison&nbsp;» et sélectionner le `tax_code` Livraison.

## Comportement fiscal

Vous devez définir un `tax_behavior` pour un tarif, ou un comportement fiscal par défaut dans les paramètres fiscaux du Dashboard. Ce paramètre détermine la manière dont la taxe est présentée au client et vous permet de localiser votre page de paiement à chaque marché.

> Stripe recommande de régler le traitement de la taxe sur **Automatique**. Cela sélectionne la tarification hors taxes pour le USD et le CAD, et la tarification TTC pour toutes les autres devises, ce qui correspond aux conventions attendues par la plupart des clients sur chaque marché. Vous pouvez [définir un traitement de la taxe par défaut](https://docs.stripe.com/tax/products-prices-tax-codes-tax-behavior.md#set-default-tax-behavior) dans les [paramètres Stripe Tax](https://dashboard.stripe.com/settings/tax) pour l’appliquer automatiquement à chaque prix qui n’a pas de `tax_behavior` défini.

Les prix hors taxes sont courants aux États-Unis et au Canada et pour les ventes B2B dans d’autres pays. Définissez le régime fiscal sur HT pour ajouter la taxe au montant du sous-total spécifié dans votre tarif.

Les prix TTC sont courants pour les ventes B2C sur de nombreux marchés hors des États-Unis. Lorsque le comportement fiscal est défini sur inclusive, le montant payé par le client reste identique, que la taxe soit nulle ou positive. Cette règle s’applique également aux ventes soumises à l’autoliquidation de la TVA. Le prix unitaire diffère selon que la transaction est ou non soumise à l’autoliquidation de la TVA. Si aucune taxe ne s’applique, le prix taxes comprises correspond au prix unitaire. Si le montant de la taxe est positif, le prix unitaire hors taxe est inférieur.

### Définir un comportement fiscal par défaut (Recommandé)

Vous pouvez définir un comportement fiscal par défaut qui s’appliquera à tous les tarifs pour lesquels aucun comportement fiscal spécifique n’a été défini. Pour cela, rendez-vous dans les [paramètres Stripe Tax](https://dashboard.stripe.com/settings/tax) sous la section **Inclure la taxe dans les tarifs.**.

Une fois que vous avez défini un comportement fiscal par défaut, tous les tarifs pour lesquels aucun `tax_behavior` n’est défini utilisent ce paramètre et sont compatibles avec Stripe Tax. Les options disponibles pour le comportement fiscal par défaut sont les suivantes&nbsp;:

- **Automatique**&nbsp;: le comportement fiscal appliqué dépend de la devise choisie pour un tarif de produit. Pour les devises `USD` et `CAD`, le comportement fiscal est hors taxes. Pour toutes les autres devises, le comportement fiscal est TTC. Cela fonctionne également avec les *tarifs multi-devises* (A single Price object can support multiple currencies. Each purchase uses one of the supported currencies for the Price, depending on how you use the Price in your integration).
- **TTC**&nbsp;: dans le cas d’un tarif *TTC* (Inclusive tax is tax that doesn't change the final purchase price—the price the buyer sees already includes it. Examples of inclusive tax include VAT and GST outside of the US), les taxes sont déjà incluses dans le tarif. Par exemple, si le prix d’un produit est défini sur 5,00&nbsp;USD, le client paiera 5,00&nbsp;USD.
- **Hors taxes**&nbsp;: dans le cas d’un tarif *hors taxes* (Exclusive tax is tax that changes the final purchase price—the listed price the buyer sees doesn't include it, and it's added to the total. An example of exclusive tax is US sales tax), les taxes doivent être ajoutées au tarif initial. Prenons l’exemple d’un produit dont le tarif est défini sur 5,00&nbsp;USD&nbsp;; la taxe facturée sur ce produit pourrait s’élever à 10&nbsp;%, pour un tarif total de 5,50&nbsp;USD. (Les taux de taxe peuvent différer, ces chiffres ne sont donnés qu’à titre d’exemple.)

Stripe ne choisit pas le comportement fiscal en fonction de l’emplacement du client ou de la juridiction fiscale, et vous ne pouvez pas le configurer selon ces critères. La valeur par défaut de votre compte s’applique chaque fois que le comportement fiscal n’est pas spécifié. Un `tax_behavior` de premier niveau configure la devise par défaut de l’objet Price, tandis que `currency_options.<currency>.tax_behavior` configure une devise supplémentaire sur un Price multidevise.

Si votre intégration utilise différentes approches d’affichage des prix selon les marchés, vous devez sélectionner ou créer la configuration de Price et de devise appropriée pour chaque marché. Une fois que `tax_behavior` est explicitement défini sur `inclusive` ou `exclusive` sur un Price ou une option de devise, il ne peut pas être modifié. Pour en savoir plus, consultez [Définir un comportement fiscal sur un prix](https://docs.stripe.com/tax/products-prices-tax-codes-tax-behavior.md#set-tax-behavior-on-price).

Pour les rapports, les [exportations détaillées](https://docs.stripe.com/tax/reports.md#itemized-exports) incluent `tax_behavior`. Pour les prix TTC, le `subtotal` inclut les taxes et le `total` reste TTC. Les champs de devise de déclaration fournissent des montants convertis pour le rapprochement des déclarations fiscales.

## Définir un comportement fiscal sur un tarif (Facultatif)

Vous pouvez définir le comportement fiscal d’un *tarif* (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) lors de sa création avec le Dashboard ou l’API. Lors de la création d’un tarif sur le Dashboard, vous pouvez visualiser l’impact de votre modèle tarifaire sur vos revenus.

> Vous ne pouvez pas changer le paramètre `tax_behavior` une fois que celui-ci est défini sur **exclusive** ou **inclusive**.

Pour créer un Price avec `tax_behavior` via l’API&nbsp;:

```curl
curl https://api.stripe.com/v1/prices \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d unit_amount=10000 \
  -d currency=usd \
  -d "product={{PRODUCT_ID}}" \
  -d tax_behavior=exclusive \
  -d "recurring[interval]=month"
```

Pour un *tarif multidevise* (A single Price object can support multiple currencies. Each purchase uses one of the supported currencies for the Price, depending on how you use the Price in your integration), utilisez le paramètre [currency_options.<currency>.tax_behavior](https://docs.stripe.com/api/prices/create.md#create_price-currency_options-tax_behavior) pour définir des régimes de taxe différents pour différentes devises.

Dans certains cas, vous pouvez vouloir utiliser un prix personnalisé qui n’a pas été préconfiguré. Vous pouvez transmettre des `price_data` plutôt qu’un ID de prix. Par exemple, l’acceptation d’un paiement ponctuel pour un prix personnalisé avec la [version hébergée de Checkout](https://docs.stripe.com/checkout/quickstart.md) s’effectuer comme suit&nbsp;:

```curl
curl https://api.stripe.com/v1/checkout/sessions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "line_items[0][price_data][currency]=usd" \
  -d "line_items[0][price_data][unit_amount]=10000" \
  -d "line_items[0][price_data][tax_behavior]=exclusive" \
  -d "line_items[0][price_data][product]={{PRODUCT_ID}}" \
  -d "line_items[0][quantity]=2" \
  -d mode=payment \
  --data-urlencode "success_url=https://example.com/success"
```

## Définir un code fiscal sur un produit (Recommandé)

Lors de la création de produits dans le Dashboard, vous pouvez sélectionner votre `tax_code` dans la liste déroulante parmi les [codes de taxe](https://docs.stripe.com/tax/tax-codes.md) disponibles. Si vous ne le faites pas, Stripe Tax utilise le code de taxe par défaut défini dans le [Dashboard](https://dashboard.stripe.com/settings/tax). Si un produit peut correspondre à plusieurs codes, par exemple un produit SaaS utilisé à des fins personnelles ou professionnelles selon le type de client, nous vous recommandons de créer deux produits distincts dans Stripe et d’attribuer le code approprié à chacun d’entre eux.

Pour créer un Product avec `tax_code` à l’aide de l’API&nbsp;:

```curl
curl https://api.stripe.com/v1/products \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "name=Test Product" \
  -d "tax_code={{TAXCODE_ID}}"
```

Dans certains cas, vous pouvez vouloir utiliser un produit personnalisé qui n’a pas été préconfiguré. Vous pouvez transmettre des `product_data` plutôt qu’un ID de produit. Par exemple, l’acceptation d’un paiement ponctuel pour un produit personnalisé avec la [version hébergée de Checkout](https://docs.stripe.com/checkout/quickstart.md) s’effectuer comme suit&nbsp;:

```curl
curl https://api.stripe.com/v1/checkout/sessions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "line_items[0][price_data][currency]=usd" \
  -d "line_items[0][price_data][unit_amount]=10000" \
  -d "line_items[0][price_data][tax_behavior]=exclusive" \
  -d "line_items[0][price_data][product_data][name]=Test Product" \
  -d "line_items[0][price_data][product_data][tax_code]={{TAXCODE_ID}}" \
  -d "line_items[0][quantity]=2" \
  -d mode=payment \
  --data-urlencode "success_url=https://example.com/success"
```

## Créer un tarif de livraison avec le code fiscal (Facultatif)

Le moyen de paiement Checkout vous permet de définir des tarifs de livraison et de facturer des taxes sur la livraison. Vous pouvez calculer automatiquement les taxes sur les frais de livraison en définissant le code de taxe sur le tarif de livraison dans le Dashboard ou sur l’objet [Shipping Rates](https://docs.stripe.com/api/shipping_rates.md).

```curl
curl https://api.stripe.com/v1/shipping_rates \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "display_name=Ground shipping" \
  -d type=fixed_amount \
  -d "fixed_amount[amount]=500" \
  -d "fixed_amount[currency]=usd" \
  -d tax_behavior=inclusive \
  -d "tax_code={{TAXCODE_ID}}"
```

## See also

- [Checkout et Tax](https://docs.stripe.com/tax/checkout.md)
- [Invoicing et Tax](https://docs.stripe.com/tax/invoicing.md)
- [Déterminer la localisation de vos clients](https://docs.stripe.com/tax/customer-locations.md)
