- Détection automatique du pays via GeoIP
- Création automatique des taxes européennes
- Sélecteur de pays front-office
- Templates et personnalisation de l'affichage
- Fonctionnalités supplémentaires
- Les taxes ne se créent pas
- La détection GeoIP ne fonctionne pas
- Le sélecteur de pays n'apparaît pas
- Les prix ne changent pas quand je change de pays
- Un pays n'apparaît pas dans le sélecteur
- Le client voit un prix différent entre la navigation et le checkout
- Le module est-il compatible avec mon thème ?
OSS TVA UE – Prix TTC GeoIP
Présentation
Le module adapte les prix TTC au pays du visiteur, par choix manuel ou détection locale MaxMind. Chaque produit conserve son groupe de règles de taxes. Le taux affiché dans le sélecteur est le taux standard de référence ; il ne remplace pas le taux réduit propre à un produit.
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
Vérifiez les taux et les groupes concernés dans un aperçu, puis confirmez les changements. Chaque produit conserve son groupe de règles de taxes.
Sélecteur de pays front-office
Sans adresse réelle, le pays choisi sert à estimer les prix, y compris dans la fenêtre de confirmation d’ajout au panier. Dès que le panier possède une adresse fiscale valide, celle-ci est prioritaire, selon le réglage livraison/facturation de PrestaShop. Un client connecté peut choisir une de ses adresses et confirmer « Utiliser cette adresse de livraison ». Les frais et les taxes sont recalculés ; une adresse de facturation existante est conservée. Le module ne crée pas d’adresse fictive.
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
- Téléchargez le module depuis votre espace client WePresta
- Dans le back-office PrestaShop, allez dans Modules > Gestionnaire de modules
- Cliquez sur Installer un module et sélectionnez le fichier ZIP
- Accédez à la configuration du module pour paramétrer vos taxes
Configuration
Onglet Général
Activez l’aperçu, choisissez les pays proposés et le pays de repli. Vérifiez les groupes de clients autorisés. Vous pouvez désactiver l’aperçu tout en conservant les réglages du module.
Onglet Taxes
Dans l’assistant Taxes, choisissez les groupes existants affectés à vos produits ou préparez de nouveaux groupes. Vérifiez l’aperçu, les anciens et nouveaux taux, puis confirmez. L’aperçu ne crée rien. Les produits ne sont jamais réaffectés automatiquement. Les groupes partagés entre boutiques et les règles régionales ou combinées nécessitent une vérification dans les réglages natifs. Les taux réduits dépendent de la catégorie du produit et du territoire.
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.
Renseignez votre identifiant de compte MaxMind et une clé autorisée à télécharger GeoLite2 Country. Téléchargez la base depuis l’onglet Avancé et vérifiez son état. PHP doit disposer de cURL, Phar et zlib. La détection consulte ensuite la base locale. En cas d’échec de mise à jour, la base précédente reste disponible. Une clé laissée vide conserve la clé enregistrée. Configurez les proxies de confiance uniquement avec leurs adresses ou plages réelles ; l’option Cloudflare est distincte.
Récapitulatif TVA
Choisissez une période puis ouvrez l’aperçu ou téléchargez le CSV. Les ventes suivent la date de commande, les avoirs leur date d’émission, même pour une vente plus ancienne. Les montants historiques sont séparés par boutique, devise, pays, taux et composante, dont le transport. Les lignes à vérifier restent signalées. Ce récapitulatif ne détermine pas l’éligibilité OSS et ne remplace pas une déclaration. Un remboursement sans avoir ne peut pas être déduit automatiquement.
Mise à jour
Sauvegardez votre boutique puis installez la nouvelle archive. Les réglages existants sont conservés. Vérifiez un produit au taux standard et un produit au taux réduit, puis le panier avec ses adresses. Les caches de pages ou CDN doivent distinguer le pays et la session du visiteur.
Prérequis
- PrestaShop 1.7.8, 8.2 ou plus récent, 9.1 ou plus récent (8.0, 8.1 et 9.0 non pris en charge) ; PHP 7.4 minimum, selon les exigences de votre version de PrestaShop.
- Compte MaxMind et clé de téléchargement GeoLite2 Country pour la détection GeoIP ; extensions PHP cURL, Phar et zlib pour télécharger la base.
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
Sans adresse réelle, le pays choisi sert à estimer les prix. Dès que le panier possède une adresse fiscale valide, celle-ci est prioritaire, selon le réglage livraison/facturation de PrestaShop. Un client connecté peut choisir une de ses adresses et confirmer « Utiliser cette adresse de livraison ». Les frais et les taxes sont recalculés ; une adresse de facturation existante est conservée. Le module ne crée pas d’adresse fictive.
Le module est-il compatible avec mon thème ?
Utilisez les hooks standards ou le hook personnalisé pour placer le sélecteur. Vérifiez son affichage et le panier avec votre thème et vos extensions.
Support
Contactez-nous via votre espace client WePresta ou par email pour toute question ou assistance technique.
Changelog
Version 2.0.1
- Prix TTC du pays choisi affiché aussi dans la fenêtre de confirmation d’ajout au panier
- Prix TTC du pays choisi conservé sur la fiche d’un produit déjà dans le panier
Version 2.0.0
- Affichage des prix TTC fiabilisé selon le pays et le taux de TVA de chaque produit
- Priorité à l’adresse fiscale du panier pour le calcul des prix
- Choix d’une adresse de livraison avec confirmation du client
- Aperçu des taxes et des groupes concernés avant toute modification
- Mise à jour des taux de TVA de référence
- Téléchargement MaxMind sécurisé, avec conservation de la base précédente en cas d’échec
- Récapitulatif TVA et export CSV fondés sur les ventes et avoirs historiques, transport compris
- Chargement des pays optimisé et calcul du récapitulatif TVA à la demande
- Conservation des réglages existants lors de la mise à jour
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