Devises et tarification sur votre site : affichage multidevise, mise à jour des taux, calcul des taxes et paiement
1. Affichage multidevise : trois erreurs techniques
Première erreur : convertir sur la vitrine via un appel JavaScript en temps réel à une API de taux. Le prix que voit l’acheteur correspond au taux du moment, mais le temps qu’il ajoute le produit au panier, remplisse son adresse et arrive au paiement, le taux a changé : le prix payé ne correspond plus au prix affiché. Sur un site B2C, les impayés augmentent ; sur un site B2B, l’acheteur abandonne le panier et part demander un devis.
Deuxième erreur : afficher plusieurs devises sans localiser les taxes. Un acheteur européen a l’habitude de voir un prix TTC (MwSt. inkl.), un acheteur américain un prix HT avec estimation de la sales tax. Si vous affichez un prix HT à un utilisateur européen, il croira qu’il faut ajouter 20 % de taxe et partira. Troisième erreur : brancher le paiement en ligne de force sur un site B2B orienté demandes de devis. Les commandes B2B sont généralement importantes, supposent un devis et un délai de paiement : un tunnel de paiement en ligne ne sait pas les traiter, et le forcer augmente le risque de rejet. Pour la discussion sur la stratégie tarifaire, voir Prix à l’export : du coût majoré au prix par la valeur.
| Erreur technique | Ce que ça donne | Bonne pratique |
|---|---|---|
| Conversion en temps réel par JS sur la vitrine | Écart affiché/payé supérieur à 1 % | Récupération quotidienne groupée, même série des deux côtés |
| Changer la devise sans changer les taxes | L’acheteur européen croit devoir ajouter 20 % de taxe | Afficher TTC/HT selon le pays de destination |
| Paiement en ligne branché de force sur un site B2B | Risque de rejet élevé sur les grosses commandes | Multidevise en affichage seul, devis pour le reste |
| Taux au comptant du commerçant | 3 % à 5 % au-dessus du taux de la banque centrale | Taux central de la banque centrale plus 1 % à 2 % de marge |
| Pas de sélecteur de devise manuel | Les utilisateurs en VPN voient la mauvaise devise | Ajouter un sélecteur de devise en pied de page, IP par défaut |
2. Rythme de mise à jour des taux : une fois par jour, pas en temps réel
Pour la fréquence de mise à jour des taux en multidevise, on conseille une fois par jour sur un site B2B : récupération groupée à 0 h UTC, écrite en base et mise en cache pour la journée. Pas d’appel en temps réel à une API de taux depuis le front. Trois raisons : un appel en temps réel allonge le chargement de la page et pénalise les Core Web Vitals indicateurs ; deuxièmement, les API de taux ont des quotas d’appels, et le temps réel coûte cher ; troisièmement, la conversion en temps réel fait dériver le prix affiché par rapport au prix payé.
Trois sources de taux de change recommandées : le taux de référence quotidien de la Banque centrale européenne (gratuit et stable), l’API XE (quota gratuit suffisant pour un petit site) et Open Exchange Rates (1 000 appels par mois en version gratuite). Prévoyez une marge commerçant de 1 % à 2 % sur le taux mis en cache, car le taux de règlement réel du prestataire de paiement est légèrement supérieur au taux pivot de la banque centrale. Pour la gestion du risque de change au niveau des devis B2B, voir Gestion du risque de change ; cet article ne traite que de l’affichage côté client.
| Solutions de change | Fréquence de mise à jour | Cas d’usage | Coût |
|---|---|---|---|
| Taux de référence de la BCE | Une fois par jour | Sites B2B à dominante européenne | Gratuit |
| XE API | Une fois par jour | Sites B2B multidevises | Quota gratuit suffisant pour un petit site |
| Open Exchange Rates | Chaque heure | Sites B2C à fort volume | 1 000 appels par mois en version gratuite |
| Conversion automatique Stripe | En temps réel au paiement | Petites commandes B2C pures | Stripe règle dans la devise de la carte |
Trois. Calcul des taxes : selon le pays de destination, pas le pays de l’entrepôt
La règle centrale du calcul des taxes est la suivante : on se base sur le pays de destination, pas sur le lieu de l’entrepôt. Un acheteur allemand qui achète vos produits doit voir un prix TTC incluant les 19 % de MwSt sur le site allemand, que vous expédiiez depuis la Chine ou depuis un entrepôt de l’UE. Un acheteur américain voit un prix hors taxes, auquel s’ajoute la taxe de vente de son État au moment du paiement. Cette règle s’appelle le principe de destination ; les règles de TVA européennes et de taxe de vente américaines le suivent toutes les deux.
Exemple concret : une entreprise exportatrice de capteurs industriels affiche par défaut des prix en USD hors taxes. Un acheteur allemand ouvre la page, voit un capteur à 100 $ et ajoute mentalement 19 % de TVA allemande, soit 119 $. Si le site ne localise pas les taxes, il trouvera le prix opaque et enverra directement une demande de devis avec la question « including VAT? ». La bonne pratique : basculer automatiquement en EUR TTC lors d’une visite depuis une IP allemande, avec l’affichage « €109.90 inkl. MwSt », et afficher « $99.00 + sales tax » pour une IP américaine. Pour la fiabilité du formulaire de demande de devis, voir Fiabilité du formulaire de demande de devis.
| Région | Mode d’affichage du prix | Traitement des taxes | Taux typiques |
|---|---|---|---|
| Union européenne (Allemagne) | Prix en EUR TTC | MwSt incluse, sans supplément | 19 % (normal) / 7 % (réduit) |
| Union européenne (France) | Prix en EUR TTC | TVA incluse | 20 % |
| États-Unis | Prix en USD hors taxes | Ajout de la taxe de vente de l’État au paiement | De 0 % à 10 % selon l’État |
| Royaume-Uni | Prix en GBP TTC | VAT incluse | 20 % |
| Japon | Prix en JPY TTC | Taxe à la consommation incluse | 10 % |
Quatre. Règlement des paiements : encaisser dans la devise principale, payer dans la devise de la carte
La tarification multidevise et le règlement des paiements sont deux choses distinctes. Côté tarification : le site affiche les prix dans la devise locale de l’acheteur pour qu’il s’y retrouve. Côté règlement : en tant que vendeur, vous finissez par recevoir votre devise principale (généralement USD ou CNY). La conversion intermédiaire est assurée par le prestataire de paiement ; n’implémentez pas vous-même de logique de change sur le site.
Architecture recommandée : l’acheteur voit un prix TTC en EUR, choisit Stripe au paiement, et Stripe débite dans la devise de sa carte (carte en euros, débit en euros ; carte en dollars, débit en dollars au taux du moment). Au règlement, Stripe convertit les fonds dans votre devise principale et les verse sur votre compte bancaire. Vous n’avez donc qu’une seule grille de prix en devise principale à tenir à jour : l’affichage repose sur un cache de taux de change, le règlement sur le prestataire de paiement. N’écrivez pas votre propre logique de conversion dans le back-end du site : coûteuse à maintenir et source d’erreurs. Pour choisir le prestataire de paiement et comparer les frais, voir Fiabilité du formulaire de demande de devis les articles sur le paiement du même site.
| Étape | Devise | Source du taux | Points d’attention |
|---|---|---|---|
| Affichage | Devise de l’acheteur | Taux de la banque centrale mis en cache chaque jour | + 1 % à 2 % de marge marchand |
| Ajout au panier | Devise de l’acheteur | Identique au cache d’affichage | Verrouillé pendant la session, sans dérive |
| Débit au paiement | Devise du porteur de carte | Taux en temps réel Stripe/PayPal | Indiquer à l’acheteur que le règlement se fera à ce taux |
| Règlement vendeur | Devise principale (USD/CNY) | Taux de règlement du prestataire | 1 % à 3 % de perte de change à l’arrivée |
V. Stratégie multidevise d’un site B2B à demandes de devis
La stratégie multidevise d’un site B2B est totalement différente de celle d’un site e-commerce B2C. Les commandes B2B portent sur de gros montants (souvent de quelques milliers à plusieurs centaines de milliers de dollars) : elles exigent un devis, un délai de paiement et une tarification par paliers de quantité, ce qu’un prestataire de paiement en ligne ne sait pas gérer. La multidevise sur un site B2B ne sert donc qu’à une chose : montrer à l’acheteur des prix dans la devise qu’il connaît, réduire les frictions, puis l’amener à envoyer une demande de devis.
Concrètement : afficher automatiquement la devise selon l’IP du visiteur, ajouter en bas de page un sélecteur manuel (USD/EUR/GBP/JPY/AUD), convertir les prix avec le taux mis en cache chaque jour et indiquer à côté du prix « Reference price, final quote in USD ». Dans le formulaire de demande de devis, ajouter une liste déroulante « Preferred currency » pour que l’acheteur choisisse la devise de son devis. Pour les engagements de délai et les règles de cotation, voir Engagement de délai.
| Type de site | Approche multidevise | Moyen de paiement | Mise à jour du taux |
|---|---|---|---|
| Site e-commerce B2C | Affichage et règlement de bout en bout | Paiement en ligne Stripe/PayPal | Toutes les heures ou tous les jours |
| Site B2B à demandes de devis | Affichage uniquement, sans règlement | Orienter vers la demande de devis, paiement par T/T | Une fois par jour |
| Site hybride | SKU de détail payés en ligne, gros montants par demande de devis | Répartition automatique selon le montant | Une fois par jour |
FAQ — Questions fréquentes
Quel écart entre le prix affiché et le prix au paiement est normal ?
À quelle fréquence faut-il mettre à jour les taux ?
Comment afficher la TVA européenne sur le site ?
Faut-il activer le paiement en ligne sur un site B2B indépendant ?
Quelle différence entre le règlement multidevise de Stripe et celui de PayPal ?
Faut-il ajouter une marge commerçant au cache des taux de change, et de combien ?
Pour conclure
Le cœur technique de la tarification multidevise n’est pas la conversion de devises, mais la cohérence : le prix affiché en vitrine, le prix dans le panier et le prix au moment du paiement doivent tous reposer sur la même série de taux de change. La conversion en temps réel paraît moderne, mais en réalité elle fait porter la dérive des prix à l’acheteur, ce qui finit par augmenter les taux de retour et d’abandon de panier.
Trois étapes pour passer à l’action : premièrement, récupérez une fois par jour à heure fixe le taux de change de la banque centrale et mettez-le en cache dans la base de données. Deuxièmement, affichez les prix TTC ou HT selon le pays de destination : TTC dans l’UE, HT aux États-Unis. Troisièmement, sur un site B2B, le multidevise sert uniquement à l’affichage et non au règlement, pour orienter vers la demande de devis ; sur un site B2C, réglez via Stripe dans la devise de la carte, sans écrire vous-même de logique de conversion.
Une phrase à retenir : la tarification multidevise ne consiste pas à laisser le site convertir les devises à votre place, mais à montrer à l’acheteur, dans la devise qui lui est familière, un prix qui ne bouge pas.
