Description
Module PrestaShop 1.7.8.11+ pour la gestion moderne de la TVA intracommunautaire (B2B UE), base sur le module historique vatnumber.
Objectif
Ce module permet de :
- valider le numero de TVA intracom via VIES (SOAP officiel),
- appliquer une exoneration de TVA quand les conditions B2B intra-UE sont reunies,
- rester compatible avec les mecanismes de calcul taxe PrestaShop 1.7.8.11 et superieur.
Fonctionnement
1) Validation du numero de TVA
Lors de la validation d’une adresse client, le module :
- normalise le numero (suppression des espaces/caracteres non alphanumeriques),
- appelle VIES via SOAP :
https://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl, - refuse un numero invalide,
- n’interrompt pas la validation de l’adresse si VIES est temporairement indisponible (mode fail-open).
2) Application de la TVA au panier
Le module branche un TaxManager qui force un taux de TVA 0% si :
- un numero de TVA est present sur l’adresse fiscale utilisee,
- le pays client est dans la liste UE supportee,
- le pays client est different du pays boutique configure dans le module,
- la gestion TVA du module est activee.
3) Compatibilite coeur PrestaShop
PrestaShop 1.7 utilise encore des cles legacy (VATNUMBER_*) dans certaines portions du coeur. Le module synchronise automatiquement :
NWVATNUMBER_MANAGEMENT->VATNUMBER_MANAGEMENTNWVATNUMBER_COUNTRY->VATNUMBER_COUNTRYNWVATNUMBER_CHECKING->VATNUMBER_CHECKING
Cela garantit un comportement coherent dans tout le checkout.
Compatibilite
- PrestaShop :
>= 1.7.8.11 - PHP : compatible avec la stack PS 1.7.8 (SOAP requis pour test/validation VIES)
- Hook fiscal : priorite geree pour fonctionner avec le hook canonique resolu par PrestaShop (
actionTaxManager/ aliastaxManager)
Installation
- Copier le dossier
nwvatnumberdansmodules/. - Installer le module dans le BO PrestaShop.
- Ouvrir la configuration du module.
- Verifier :
- pays boutique pour comparaison TVA,
- activation de la validation VIES.
- Vider le cache PrestaShop (
var/cache/devetvar/cache/prod).
Configuration BO
Parametres disponibles :
- Pays de la boutique pour la comparaison TVA
- Activer la validation TVA via VIES
- Test de connexion VIES (bouton de diagnostic)
Procedure de test recommandee
- Activer les taxes globales PrestaShop.
- Verifier que la base taxe est sur l’adresse de livraison (ou facture selon votre besoin).
- Creer/editer une adresse client UE avec :
- entreprise renseignee,
- numero TVA intracom valide.
- Tester avec un nouveau panier.
- Controle attendu :
- prix HT conserves,
- TVA finale a 0% en cas B2B intra-UE valide.
Cas particuliers transporteurs
Certains modules de livraison peuvent forcer une TVA locale selon le transporteur selectionne. nwvatnumber detecte ces cas et se desactive sur ce panier pour eviter les conflits fiscaux.
Depannage
Le numero TVA est refuse avec message VIES indisponible
- Verifier extension PHP SOAP activee.
- Tester le bouton Test de connexion VIES dans la config du module.
- Verifier acces sortant HTTPS vers le domaine VIES (firewall/proxy).
La TVA reste appliquee alors que le numero est valide
- Verifier qu’un seul module TVA est actif (
nwvatnumber). - Vider cache PrestaShop.
- Refaire le test avec un nouveau panier.
- Verifier l’adresse reellement utilisee pour la taxe (
PS_TAX_ADDRESS_TYPE). - Verifier le transporteur selectionne (certains modules forcent une TVA locale).
Arborescence principale
nwvatnumber.php: module principal, configuration BO, validation adresse, synchro legacy.NwvatnumberTaxManager.php: logique d’exoneration fiscale.translations/*.php: traductions.config.xml: metadonnees module.

Avis
Il n’y a pas encore d’avis.