Facturation intracommunautaire depuis WooCommerce : TVA, autoliquidation, Factur-X
Le cas intracommunautaire
Quand vous vendez à un professionnel situé dans un autre pays de l'UE, les règles de TVA changent. C'est le régime de l'autoliquidation (reverse charge) : vous facturez hors taxes, et c'est l'acheteur qui déclare la TVA dans son pays.
Pour un e-commerçant WooCommerce qui vend à des clients B2B européens, il faut que la facture reflète correctement ce régime, dans le PDF visible ET dans le XML Factur-X.
Les conditions du reverse charge
L'autoliquidation s'applique quand toutes ces conditions sont réunies :
- Le vendeur est assujetti à la TVA dans un pays de l'UE
- L'acheteur est assujetti à la TVA dans un autre pays de l'UE
- L'acheteur a un numéro de TVA intracommunautaire valide
- La transaction est B2B (pas une vente à un particulier)
Si une de ces conditions manque (acheteur non assujetti, même pays, pas de numéro de TVA), la TVA du pays du vendeur s'applique normalement.
Vérifier le numéro de TVA de l'acheteur
Avant d'appliquer l'autoliquidation, vous devez vérifier que le numéro de TVA de votre client est valide et actif. C'est une obligation légale, pas une simple bonne pratique.
La vérification se fait via le système VIES de la Commission européenne. Vous pouvez le faire manuellement sur le site VIES, ou automatiquement via une API.
C'est exactement ce que fait l'European Business API : un appel sur `/vat/validate/{vat_number}` vérifie le format, interroge VIES, et retourne le nom et l'adresse de l'entreprise.
Les mentions obligatoires sur la facture
Une facture intracommunautaire en autoliquidation doit contenir, en plus des mentions habituelles :
- Numéro de TVA du vendeur et de l'acheteur : les deux sont obligatoires
- Mention d'autoliquidation : "Autoliquidation de la TVA, article 283-2 du CGI" ou "Reverse charge, Article 196 of Council Directive 2006/112/EC"
- TVA à 0% : le taux applicable est 0%, pas "exonéré" ni "hors champ"
- Montant HT uniquement : pas de montant TTC distinct puisque TTC = HT
Comment ça se traduit dans le XML Factur-X
Dans le XML CII, l'autoliquidation se traduit par :
- Le code catégorie TVA "AE" (au lieu de "S" pour le taux standard)
- Le taux applicable à 0.00%
- Le numéro de TVA de l'acheteur renseigné dans le bloc BuyerTradeParty
Si votre plugin génère le XML avec le code "S" et un taux de 0%, ce n'est pas correct. Le code "AE" signifie spécifiquement "autoliquidation" et sera vérifié par les validateurs.
Configurer WooCommerce pour l'intracommunautaire
Étape 1 : Activer les taxes dans WooCommerce
Allez dans WooCommerce > Réglages > Général et activez le calcul des taxes. Dans l'onglet Taxes, créez un taux à 0% pour les ventes intracommunautaires.
Étape 2 : Collecter le numéro de TVA au checkout
Activez les champs B2B au checkout dans votre plugin de facturation. Le champ TVA intracommunautaire permet à votre client de saisir son numéro, qui sera intégré dans la facture.
Étape 3 : Vérifier et facturer à 0%
En fonction de votre configuration WooCommerce, la TVA peut être automatiquement mise à 0% pour les clients avec un numéro de TVA intracommunautaire valide dans un autre pays. Des plugins comme "EU VAT Number" pour WooCommerce gèrent cette logique.
Le cas B2C intracommunautaire (OSS)
Si vous vendez à un particulier dans un autre pays de l'UE, l'autoliquidation ne s'applique pas. Vous devez appliquer la TVA du pays de l'acheteur (pas la vôtre) si vos ventes transfrontalières B2C dépassent 10 000 euros par an.
C'est le régime OSS (One Stop Shop) : vous vous enregistrez auprès de votre administration fiscale et vous déclarez la TVA de chaque pays via un guichet unique.
Ce sujet est distinct de la facturation électronique Factur-X, mais il impacte les taux de TVA sur vos factures.
Le e-reporting pour les ventes intra-UE
Les ventes intracommunautaires ne passent pas par la facturation électronique française (le système ne couvre que les transactions domestiques). En revanche, elles font l'objet de e-reporting auprès de l'administration fiscale.
Les données reportées incluent le pays du client, le montant HT, et le régime applicable (autoliquidation ou OSS).
Questions fréquentes
Dois-je utiliser Factur-X pour les factures intracommunautaires ?
La réforme française de la facturation électronique ne couvre que les transactions B2B domestiques. Les factures intracommunautaires ne sont pas soumises à l'obligation de format Factur-X. Cependant, utiliser Factur-X pour toutes vos factures simplifie votre workflow et offre un format professionnel à vos clients européens (Factur-X = ZUGFeRD, reconnu en Allemagne).
Comment prouver que j'ai vérifié le numéro de TVA ?
Conservez une trace de la vérification VIES (date, résultat, nom de l'entreprise retournée). En cas de contrôle fiscal, vous devrez prouver que vous avez vérifié la validité du numéro avant d'appliquer l'autoliquidation.
Mon client européen peut-il me demander une facture UBL ?
Oui. Si votre client utilise Peppol ou un système qui attend de l'UBL, GoFactoX propose les trois formats (Factur-X, CII, UBL) dans ses réglages.
Que se passe-t-il si le numéro de TVA de mon client est invalide ?
Vous ne pouvez pas appliquer l'autoliquidation. Vous devez facturer avec la TVA française (ou la TVA du pays de l'acheteur si le régime OSS s'applique).
Prêt pour la réforme 2026 ?
GoFactoX génère vos factures Factur-X conformes directement depuis WooCommerce.
Voir les offres