Collecter les adresses des clients
Comment collecter les données d'adresse de vos clients pour le calcul des montants de taxe.
Stripe Tax doit accéder à la localisation de votre client pour calculer automatiquement la taxe. Cette exigence s’applique même si vous n’avez pas d’immatriculation active. Ce guide vous aide à comprendre comment collecter les adresses de vos clients.
L’adresse du client que nous utilisons
Stripe Tax utilise une seule adresse comme localisation de votre client pour calculer la taxe. La façon dont nous choisissons une adresse ne dépend pas du type de produit que vous vendez.
Vous pouvez voir à quel emplacement un paiement dont la taxe est automatiquement calculée a été utilisé dans la section Calcul automatique des taxes sur la page Détails des transactions de votre Dashboard.
Vous pouvez également vérifier le champ tax.location.source de l’objet API Customer.
Checkout et Payment Links
Checkout et Payment Links utilisent l’adresse collectée au cours de la session.
Invoicing, Subscriptions et intégrations de paiements personnalisées
Si les détails de facturation associés à un moyen de paiement sont incomplets ou manquants, nous essayons de déduire une adresse de facturation plus complète. Par exemple, si nous connaissons le pays de l’émetteur de la carte, nous le combinons avec le code postal dans les détails de facturation.
API Tax
Pour l’API Tax, la hiérarchie des adresses suit une approche simplifiée :
- L’adresse fournie dans la requête API est directement utilisée pour le calcul des taxes.
- Il n’est pas possible de revenir à d’autres sources d’adresses telles que l’adresse de livraison, l’adresse de facturation, le moyen de paiement ou les adresses IP.
Avertissement
Lorsque vous utilisez l’API Tax, vous devez fournir une adresse valide et complète dans vos requêtes API, faute de quoi elles renvoient une erreur. Indiquez le pays et, le cas échéant, le code postal et l’État.
Collecte d’adresses minimale
Chaque adresse de facturation et de livraison possède des champs line1, line2, city, state, postal_ et country. Le country doit être un code ISO 3166-1 à deux lettres.
Utilisez l’un des formats d’adresse pris en charge ci-dessus pour nous permettre de reconnaître les adresses de vos clients de manière systématique.
Spécificités régionales
États-Unis
Aux États-Unis, les règles et les taux de la taxe sur les ventes varient d’un État à l’autre, certains États comptant des centaines de districts qui fixent leurs propres taux. Nous vous recommandons de collecter l’adresse complète (y compris les champs line1, city et state) de vos clients aux États-Unis.
Précision de l’adresse IP
Dans la plupart des cas, nous pouvons trouver une adresse IP en fonction d’une zone physique, mais sa précision varie et peut ne pas refléter la localisation réelle du client. Étant donné que les États-Unis imposent des taxes locales, nous ne recommandons pas de se fier à l’adresse IP d’un client pour déterminer son adresse.
Recherche d’adresse précise
Stripe Tax prend en charge la recherche d’adresse complète et précise pour les adresses des clients aux États-Unis, ce qui signifie que vous pouvez attribuer la localisation de votre client à une habitation spécifique. Cette fonction offre une plus grande fiabilité aux États-Unis, où deux maisons situées côte à côte dans une même rue peuvent être soumises à des taux de taxe différents du fait de la complexité des frontières juridictionnelles.
Pour les adresses en dehors des États-Unis, Stripe utilise les champs relatifs au pays, à l’État et au code postal pour déterminer les obligations fiscales sans les comparer avec une base de données d’adresses complète. Consultez la section Juridictions spéciales et territoires exclus pour en savoir plus sur les cas où l’État et le code postal sont utilisés.
Remarque
Stripe Tax utilise le code postal américain à 5 chiffres si l’adresse ne contient pas suffisamment d’informations, si elle présente des incohérences ou si elle ne peut pas être associée à une adresse figurant dans la base de données des adresses des services postaux américains (US Postal Service).
Adresses militaires et diplomatiques aux États-Unis
Stripe Tax ne calcule aucune taxe pour les courriers militaires et diplomatiques américains envoyés à l’étranger. Les adresses militaires et diplomatiques à l’étranger se voient attribuer un code postal APO, FPO ou DPO, et l’USPS traite les colis au même titre que les courriers nationaux avant de les transférer à l’armée. Comme les commandes vers ces codes postaux spéciaux sont envoyées à l’étranger, les taxes sur les ventes ne s’appliquent pas.
Codes postaux
Aux États-Unis, Stripe Tax prend en charge le calcul de la taxe de vente avec seulement un code postal américain de base à 5 chiffres. Nous utilisons le point situé au centre géographique de la zone couverte par le code postal à 5 chiffres comme localisation de votre client. Le taux de taxe à ce point peut différer du taux de taxe à l’adresse complète de votre client. Le fait qu’un code postal seul soit suffisant ou non pour identifier le taux de taxe correct à appliquer dépend de l’État.
Nous vous recommandons de ne pas utiliser uniquement le code postal dans les États suivants :
- Alabama
- Alaska
- Arizona
- Arkansas
- Californie
- Colorado
- Illinois
- Kansas
- Louisiane
- Missouri
- Nebraska
- Nouveau-Mexique
- Dakota du Nord
- Oklahoma
- Dakota du Sud
- Texas
- Utah
- Washington
- Virginie-Occidentale
Remarque
Stripe Tax prend également en charge les codes postaux ZIP+4 à 9 chiffres, mais nous n’utilisons pas les quatre chiffres supplémentaires.
Europe
Fiabilité des adresses IP
Dans les régions qui n’imposent pas de taxes locales, comme l’UE, une adresse IP est davantage susceptible de correspondre à une adresse exacte.
Territoires exclus
En Europe, ce sont les administrations fiscales de chaque pays qui imposent la taxe, et non les autorités au niveau infranational. Le taux de taxe du pays ne s’applique pas dans un petit nombre de régions, même si elles sont physiquement situées dans un pays qui impose la taxe. Par exemple, le code postal italien « 00120 » identifie la Cité du Vatican, où la TVA italienne ne s’applique pas.
Collectez le code postal ou l’État de votre client pour permettre à Stripe Tax de déterminer si votre client est situé dans un territoire exclu. Consultez la liste des territoires exclus pris en charge par Stripe Tax.
Meilleures pratiques pour la collecte de l’adresse des clients
Checkout et Payment Links
Checkout gère pour vous la collecte des adresses des clients, y compris celles créées par Payment Links.
Invoicing, Subscriptions et intégrations de paiements personnalisées
Si vous n’utilisez ni Payment Links ni Checkout, vous êtes responsable de la collecte des adresses des clients.
- Utilisez des codes de pays à deux lettres (ISO 3166-1 alpha-2).
- Écouter les événements webhook pour les abonnements, car la plupart des activités se déroulent de manière asynchrone.
Gérer les erreurs de finalisation de la facture
La finalisation des factures avec Stripe Tax nécessite une localisation client reconnue. Les informations de localisation peuvent être manquantes ou invalides si vous mettez à jour ou supprimez le moyen de paiement par défaut d’un client, ou si vous n’avez pas défini tax[validate_ lors de la création ou de la mise à jour d’un Customer .
Si aucune localisation client reconnue n’est disponible, les factures d’une Subscription continuent à se finaliser automatiquement, mais sans calcul des taxes. Cela entraîne les conséquences suivantes :
- Le paramètre
automatic_passe à l’étattax[enabled] falsesur l’abonnement et la facture. - Le paramètre
Invoice[automatic_devienttax][disabled_ reason] finalization_.requires_ location_ inputs - Le paramètre
Subscription[automatic_devienttax][disabled_ reason] requires_.location_ inputs - Si la
Subscriptiondispose d’un schedule, nous définissonsautomatic_surtax[enabled] falsepour la phase en cours ainsi que dansdefault_Nous définissons égalementsettings. disabled_surreason requires_dans les deux cas.location_ inputs - Nous envoyons des événements
invoice.etupdated customer.pour informer votre intégration de ces modifications.subscription. updated - S’il y a une planification, nous envoyons également un webhook
subscription_.schedule. updated
- S’il y a une planification, nous envoyons également un webhook
- La
Invoicese finalise sans calcul ni collecte des taxes. Elle ne contient aucun montant de taxe. - Nous collectons le paiement comme d’habitude, conformément à la collection method définie pour la
Invoice.
Pour consulter les abonnements sans calcul automatique de la taxe dans votre Dashboard Stripe, accédez à votre page Abonnements et filtrez l’affichage par l’option Taxe automatique non activée. Pour réactiver la taxe automatique pour ces abonnements à l’avenir, assurez-vous d’avoir au moins une localisation client valide, et activez la taxe automatique via le Dashboard Stripe Tax.
Exceptions à la désactivation automatique de la taxe
Stripe renvoie une erreur et laisse la Invoice à l’état draft lorsque vous la finalisez via l’API ou le Dashboard sans localisation client valide. Dans l’API, cela renvoie une erreur HTTP 400 avec un code égal à customer_.
De même, pour la finalisation automatique des factures autonomes sans Subscription, la Invoice reste à l’état draft si l’emplacement du client n’est pas valide. Nous envoyons un évènement invoice.finalization_failed avec Invoice last_finalization_error[code] défini sur customer_.
La manière de corriger une erreur customer_ dépend du fait que vous disposez déjà d’une adresse de Customer, ou que vous puissiez en collecter une.
Si vous disposez d’une adresse de Customer, ou si vous pouvez en collecter une, mettez à jour le Customer, puis finalisez la Invoice manuellement.
Si vous ne disposez pas de l’adresse du client ou ne pouvez pas la collecter, désactivez Stripe Tax pour la Invoice et sa Subscription, puis finalisez la Invoice manuellement.
- Mettez à jour la
Invoiceconcernée en indiquantautomatic_.tax[enabled]=false - Mettez à jour la
Subscriptionconcernée en indiquantautomatic_.tax[enabled]=false - Finalisez la
Invoice.