OSS TVA UE – Prix TTC GeoIP

Présentation

OSS TVA UE – Prix TTC GeoIP est un module PrestaShop qui affiche automatiquement les prix avec la TVA du pays de chaque visiteur, sans configuration multi-boutique. Grâce à la détection GeoIP, vos clients voient immédiatement le bon taux de TVA dès leur arrivée sur votre site, pour une expérience d'achat transparente et conforme au régime OSS européen.

Sans ce module, PrestaShop affiche par défaut la TVA de votre pays à tous les visiteurs. Le prix ne change qu'au moment du checkout, lorsque le client renseigne son adresse de livraison — une source fréquente de confusion et d'abandon de panier. Avec OSS TVA UE – Prix TTC GeoIP, un visiteur français voit les prix avec 20% de TVA, un visiteur allemand avec 19%, un visiteur belge avec 21%, et ainsi de suite pour tous les pays européens.

Points forts :

  • Affichage instantané de la TVA locale pour chaque visiteur européen
  • Création automatique de toutes les taxes EU en quelques clics
  • Aucune configuration multi-boutique nécessaire
  • Sélecteur de pays personnalisable avec aperçu en temps réel
  • Compatible PrestaShop 8 et 9

Fonctionnalités

Détection automatique du pays via GeoIP

Le module identifie le pays du visiteur via son adresse IP grâce à la base de données MaxMind GeoLite2. Les prix s'affichent immédiatement avec le taux de TVA correspondant, sans aucune action du visiteur. Si la détection échoue, le pays par défaut configuré dans le module est utilisé.

Création automatique des taxes européennes

Un assistant en 3 étapes guide la configuration complète des taxes pour tous les pays de l'Union Européenne. Sélectionnez vos groupes de règles de taxes, choisissez les pays concernés, et le module crée automatiquement toutes les taxes et règles nécessaires dans votre base PrestaShop. Chaque pays affiche son statut : configuré (vert), partiel (orange) ou non configuré (rouge).

Sélecteur de pays front-office

Un sélecteur intégré permet aux visiteurs de changer manuellement de pays à tout moment. Les prix se mettent à jour automatiquement. Pour les clients connectés avec plusieurs adresses dans des pays différents, le sélecteur affiche uniquement leurs pays et permet de basculer entre leurs adresses.

Templates et personnalisation de l'affichage

Cinq templates prédéfinis sont disponibles : Minimal (nom du pays), Avec drapeau (drapeau + nom), Complet (drapeau + pays + TVA), Compact (drapeau + code ISO) et Personnalisé. Le choix d'un template pré-remplit les options, mais chaque détail reste entièrement personnalisable. Un aperçu en temps réel permet de visualiser vos modifications instantanément.

Fonctionnalités supplémentaires

  • Restriction par groupe de clients : Limitez la fonctionnalité à certains groupes (Visiteur, Invité, Client) ou appliquez-la à tous en laissant la sélection vide
  • Hook personnalisé : Placez le sélecteur n'importe où dans votre thème via Smarty ({hook h='displayWeprestaOSS'}) ou Twig ({{ renderhook('displayWeprestaOSS') }})
  • Gestion avancée des pays : Activez uniquement les pays où vous livrez, avec indicateurs de statut des taxes
  • Cookie configurable : Définissez la durée de mémorisation du choix du visiteur (valeur 0 pour cookie de session uniquement)
  • Responsive : Fonctionne parfaitement sur mobile et desktop

Installation

  1. Téléchargez le module depuis votre espace client WePresta
  2. Dans le back-office PrestaShop, allez dans Modules > Gestionnaire de modules
  3. Cliquez sur Installer un module et sélectionnez le fichier ZIP
  4. Accédez à la configuration du module pour paramétrer vos taxes

Configuration

Onglet Général

Définissez le pays par défaut utilisé lorsque la détection GeoIP échoue ou qu'aucune sélection manuelle n'est faite. Par défaut, le pays de la boutique PrestaShop est utilisé — choisissez le pays de la majorité de vos clients. Vous pouvez également restreindre la fonctionnalité à certains groupes de clients : laissez vide pour l'appliquer à tous, ou sélectionnez des groupes spécifiques.

Onglet Taxes

Un workflow en 3 étapes pour créer automatiquement toutes les taxes européennes :

  1. Groupes de règles de taxes : Sélectionnez des groupes existants ou laissez le module en créer de nouveaux. Si vos produits sont déjà associés à des groupes de taxes, sélectionnez-les pour y ajouter les règles européennes. Les taux marqués "Optionnel" peuvent être ignorés si vous n'en avez pas besoin.
  2. Sélection des pays : Visualisez tous les pays avec leurs taux de TVA (standard, réduit, réduit 2, super réduit) et leur statut de configuration. Sélectionnez uniquement les pays où vous livrez.
  3. Confirmation : Vérifiez le résumé des actions (nombre de taxes et de règles à créer) avant de valider. Cliquez sur Exécuter pour lancer la création. Vous pouvez ensuite vérifier dans International → Taxes que tout a été créé correctement.

Onglet Pays

Gérez quels pays apparaissent dans le sélecteur front-office. Un pays n'est affiché aux visiteurs que s'il remplit 3 conditions : actif dans le module (onglet Pays), taxes configurées (onglet Taxes), et pays livrable dans PrestaShop (International → Localisation → Pays).

Onglet Affichage

Personnalisez entièrement l'apparence du sélecteur de pays. Choisissez sa position via un hook PrestaShop standard (displayNav1, displayNav2, displayTop…) ou un hook personnalisé. Sélectionnez un template de base parmi les 5 options disponibles, puis ajustez chaque détail selon vos besoins. L'aperçu en temps réel à droite de l'écran reflète immédiatement vos modifications.

Onglet Avancé

Configurez la durée du cookie (en jours) pour mémoriser le choix du visiteur. La valeur 0 crée un cookie de session uniquement, supprimé à la fermeture du navigateur.

Configurez la géolocalisation GeoIP en créant un compte gratuit sur maxmind.com et en générant une clé de licence. Le module télécharge automatiquement la base de données GeoLite2.

Prérequis

  • PrestaShop 8.x ou 9.x
  • PHP 8.1 ou supérieur
  • Compte MaxMind gratuit (pour la détection GeoIP)

FAQ

Les taxes ne se créent pas

Vérifiez que vous avez bien cliqué sur "Exécuter" à l'étape 3 du workflow de création. Consultez les logs PrestaShop pour identifier d'éventuelles erreurs.

La détection GeoIP ne fonctionne pas

Assurez-vous que GeoIP est activé dans l'onglet Avancé et que la base GeoIP est téléchargée (statut "OK"). La détection ne fonctionne pas en environnement localhost (IP locale).

Le sélecteur de pays n'apparaît pas

Vérifiez 3 points : le sélecteur est activé dans l'onglet Affichage, au moins un pays est actif dans l'onglet Pays, et le hook est correctement configuré dans votre thème.

Les prix ne changent pas quand je change de pays

Assurez-vous que les taxes sont configurées pour les deux pays, que vos produits sont associés aux bons groupes de règles de taxes, et videz le cache PrestaShop.

Un pays n'apparaît pas dans le sélecteur

Un pays apparaît uniquement s'il est actif dans le module (onglet Pays), que ses taxes sont configurées (onglet Taxes), et qu'il est actif dans PrestaShop (International → Localisation → Pays).

Le client voit un prix différent entre la navigation et le checkout

Pour les clients connectés, le module utilise leurs adresses réelles. Un changement de prix peut survenir si le client modifie son adresse de livraison au checkout. Pour les visiteurs, vérifiez la configuration GeoIP.

Le module est-il compatible avec mon thème ?

Oui, le module est compatible avec tous les thèmes PrestaShop. Vous pouvez utiliser les hooks standards ou un hook personnalisé pour positionner le sélecteur exactement où vous le souhaitez.

Support

Contactez-nous via votre espace client WePresta ou par email pour toute question ou assistance technique.

Changelog

Version 1.0.0

  • Version initiale
  • Détection automatique du pays via GeoIP (MaxMind GeoLite2)
  • Création automatique des taxes européennes en 3 étapes
  • Sélecteur de pays front-office avec 5 templates
  • Restriction par groupe de clients
  • Support des hooks standards et personnalisés
  • Gestion des clients connectés avec adresses multiples
  • Cookie configurable pour mémoriser le choix du visiteur
Chargement...