Prix, taxes et stock
Contrôle l'affichage des prix dans votre flux de catalogue produits — inclusion ou non des taxes, présentation des remises et inclusion des produits selon leur disponibilité en stock.
Disponible depuis la v1.0.0
Présentation
Facebook et Instagram exigent que les prix de votre flux correspondent exactement à ce que le client voit dans votre boutique lors du paiement. Toute incohérence entraîne des rejets de catalogue ou des prix d'annonce incorrects. Ces paramètres vous permettent d'aligner le flux sur les règles tarifaires de votre boutique : prix TTC ou HT, gestion correcte des remises et des prix soldés, et décision d'inclure ou non les produits en rupture de stock.
Les paramètres de cette section se trouvent sous l'onglet Options produit dans la page de configuration du module.

Paramètres
Produits en rupture de stock
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Générer les produits hors stock | Oui / Non | Oui | Lorsqu'activé, les produits avec un stock à zéro sont inclus dans le flux avec le statut out of stock. Lorsque désactivé, ces produits sont entièrement exclus. |
Lorsqu'un produit est en rupture de stock mais que votre boutique PrestaShop autorise les commandes sur les articles hors stock (paramètre « Autoriser les commandes » sur la fiche produit), le module respecte ce réglage : le produit apparaît dans le flux avec le statut in stock et une quantité de 1, afin que Facebook puisse afficher des publicités pour celui-ci.
Facebook recommande de laisser cette option activée pour de meilleures performances publicitaires — le catalogue reste complet et l'algorithme de Facebook peut continuer à optimiser la diffusion même lorsque des articles sont temporairement indisponibles. En contrepartie, la génération des produits hors stock augmente le temps de génération pour les grands catalogues. Si votre catalogue est volumineux et que vous réapprovisionnez rarement vos produits, désactiver cette option accélère considérablement la génération du flux.
Inclusion des taxes
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Afficher les prix avec taxes ? | Oui / Non | Oui | Lorsqu'activé, les prix du flux incluent la TVA ou d'autres taxes. Lorsque désactivé, les prix sont exportés hors taxes (prix nets). |
Le paramètre approprié dépend du pays où se trouvent vos clients :
- Marchés européens (France, Allemagne, Espagne, Italie, etc.) : Les prix affichés aux consommateurs doivent inclure la TVA. Activez cette option afin que le prix du flux corresponde au prix TTC visible sur les fiches produit.
- États-Unis et autres marchés où les prix sont affichés HT : Désactivez cette option pour que le flux affiche le prix net, c'est-à-dire ce que les clients voient avant l'ajout des taxes au moment du paiement.
- Flux multi-pays : Chaque flux pays utilise le même paramètre de taxe. Si vous vendez simultanément à des marchés TTC et HT, définissez ce paramètre en fonction de votre marché principal ou du marché où une incohérence de prix est le plus susceptible d'entraîner des rejets de catalogue.
Si Facebook rejette des produits avec un avertissement « price mismatch », vérifiez en premier lieu que ce paramètre correspond à ce que votre boutique affiche aux clients dans ce pays.
Prix d'achat
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Générer le prix d'achat ? | Oui / Non | Non | Lorsqu'activé, le prix d'achat/grossiste de vos données produit est ajouté au flux sous la forme d'un champ purchase_price. |
Ce champ est utilisé par Facebook pour les fonctionnalités de campagnes basées sur la marge. Il expose votre prix de revient dans l'URL du flux ; la description du module recommande donc d'activer la protection du flux (authentification HTTP Basic ou clé secrète) dès que vous activez cette option.
Si une déclinaison de produit n'a pas de prix grossiste défini, le module utilise automatiquement le prix grossiste du produit parent en remplacement.
Gestion des remises et des prix soldés
Par défaut, lorsqu'un produit bénéficie d'un prix spécial ou d'une remise active, le flux exporte deux champs de prix distincts :
price— le prix original avant remise (affiché barré dans les annonces)sale_price— le prix remisé que le client paie effectivement
Cela permet à Facebook d'afficher côte à côte le prix original et le prix remisé dans les annonces, ce qui peut améliorer les taux de clics.
Les deux paramètres ci-dessous modifient ce comportement par défaut.
Forcer le prix remisé comme prix principal
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Forcer le prix remisé comme prix principal ? | Oui / Non | Non | Lorsqu'activé, le prix remisé est écrit dans le champ price et aucun sale_price séparé n'est généré. La remise n'apparaît pas comme tag distinct dans les annonces. |
N'activez cette option que si vous ne souhaitez pas que Facebook affiche le prix original du tout. En conséquence, vous perdez la possibilité d'afficher un prix barré ou une présentation « était / maintenant » dans vos annonces.
Forcer les remises d'un groupe de clients
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Forcer les remises d'un groupe de clients ? | Oui / Non | Non | Lorsqu'activé, les prix du flux sont calculés comme si l'acheteur appartient au groupe de clients sélectionné, en appliquant les remises ou prix spécifiques à ce groupe. |
| Groupe de clients du flux | Liste déroulante de vos groupes de clients | Grand public (groupe 3) | Le groupe de clients dont les prix sont utilisés lorsque l'option ci-dessus est activée. |
Cette option est utile lorsque vous avez des prix négociés pour un groupe spécifique (par exemple, un groupe « Grossistes » ou « Inscrits ») et que vous souhaitez que le flux reflète ces prix réduits plutôt que le prix public par défaut. Lorsque cette option est désactivée, le module utilise le groupe de clients 1 (visiteurs par défaut) pour le calcul des prix.
Désactivez Forcer les remises d'un groupe de clients avant de modifier le sélecteur Groupe de clients du flux — le sélecteur est sans effet lorsque le bouton est désactivé.
Précision du calcul des prix
Ce paramètre se trouve sous l'onglet Options de génération, et non dans Options produit, mais il affecte directement les prix écrits dans le flux.
| Champ | Valeurs | Défaut | Description |
|---|---|---|---|
| Précision dans les calculs de prix | 2 – 6 (entier) | Identique au paramètre décimal de votre boutique | Nombre de décimales utilisées lors de l'étape de calcul interne des prix, avant l'arrondi final au nombre de décimales d'affichage de votre boutique. |
Le calcul des prix s'effectue avec cette précision interne élevée, puis est arrondi au nombre de décimales configuré dans votre boutique (défini sous International > Localisation dans PrestaShop). Augmenter cette valeur peut résoudre de légères différences d'arrondi entre le prix vu par vos clients et le prix dans le flux.
Commencez par la valeur par défaut (généralement 2) et augmentez-la de 1 à la fois, en régénérant le flux après chaque modification, jusqu'à ce que les prix correspondent à votre boutique.
Exemples d'utilisation
Exemple : boutique européenne vendant des articles de mode
Votre boutique est basée en France, les prix incluent 20 % de TVA et vous organisez régulièrement des soldes. Activez Afficher les prix avec taxes afin que les prix du flux correspondent aux prix TTC affichés sur les fiches produit. Laissez Forcer le prix remisé comme prix principal désactivé pour que les articles soldés apparaissent avec le prix original barré et le prix remisé mis en avant — cela améliore généralement l'engagement sur les annonces. Définissez Générer les produits hors stock sur Oui afin que les tailles épuisées restent visibles dans le catalogue avec le statut out of stock, permettant à Facebook de reprendre la diffusion des annonces dès que vous réapprovisionnez.
Exemple : boutique américaine avec un groupe de clients fidélité
Votre boutique vend au grand public au prix plein, mais les membres inscrits bénéficient de 15 % de réduction sur tout. Vous souhaitez que vos publicités Facebook affichent le prix membres pour encourager les inscriptions. Activez Forcer les remises d'un groupe de clients et sélectionnez votre groupe « Membres » dans la liste déroulante Groupe de clients du flux. Le flux utilisera les prix membres comme champ price. Désactivez Afficher les prix avec taxes car les prix américains sont affichés HT.
Exemple : résolution d'un rejet pour incohérence de prix
Facebook signale plusieurs produits avec une erreur d'incohérence de prix. Votre boutique affiche les prix avec deux décimales, mais le flux exporte parfois 29,99 comme 29,98. Rendez-vous dans Options de génération et augmentez Précision dans les calculs de prix de 2 à 4. Régénérez le flux et vérifiez à nouveau. Si l'incohérence persiste, passez à 6.
Remarques importantes
- Le paramètre FPF_TAX s'applique à tous les flux générés par le module, y compris les variantes par langue et par pays. Il n'existe pas de paramètre de taxe par pays — si vous avez besoin d'un traitement fiscal différent selon les pays, vous aurez besoin de boutiques séparées.
- Les déclinaisons en rupture de stock (variantes de taille/couleur) suivent la même logique que les produits simples : elles sont incluses ou exclues selon le bouton Générer les produits hors stock, à l'exception que si votre boutique PrestaShop autorise les commandes sur les déclinaisons en rupture de stock, ces déclinaisons apparaissent toujours avec le statut
in stock. - Le champ Prix d'achat dans le flux est lu directement depuis le champ prix grossiste du produit/de la déclinaison dans votre catalogue. Si ce champ est vide (zéro), rien n'est exporté pour ce produit.
- La précision du calcul des prix est un paramètre de génération. Sa modification n'a aucun effet tant que vous ne régénérez pas le flux.
Résolution des problèmes
| Problème | Solution |
|---|---|
| Facebook rejette des produits avec « price mismatch » | Vérifiez que Afficher les prix avec taxes correspond à ce que votre boutique affiche (TTC pour l'UE, HT pour les États-Unis). Essayez également d'augmenter Précision dans les calculs de prix de 1 à 2 crans. |
| Les prix soldés n'apparaissent pas dans les annonces | Assurez-vous que Forcer le prix remisé comme prix principal est désactivé. Vérifiez également que le produit possède un prix spécifique actif dans PrestaShop (sous Catalogue > Produits > [produit] > Tarification). |
| Les produits hors stock apparaissent toujours dans le flux | C'est le comportement attendu lorsque Générer les produits hors stock est activé. Désactivez l'option si vous souhaitez exclure ces produits. Si le produit autorise les commandes en rupture de stock, il apparaîtra toujours quel que soit ce paramètre. |
| Les prix du groupe de clients ne sont pas appliqués | Confirmez que Forcer les remises d'un groupe de clients est activé (et pas seulement que le sélecteur de groupe a été modifié), puis régénérez le flux. |
| Les prix du flux ne correspondent pas à la boutique | Vérifiez d'abord le paramètre de taxe, puis contrôlez Précision dans les calculs de prix. Confirmez également que la bonne devise est sélectionnée dans Génération du flux pour ce flux. |
Foire aux questions
Dois-je activer les prix TTC si ma boutique vend dans plusieurs pays avec des taux de TVA différents ?
Le paramètre de taxe utilise le taux associé au contexte pays lors de la génération du flux. Pour les flux spécifiques à un pays (France, Allemagne, etc.), le module applique automatiquement le taux de TVA correct pour chaque flux pays — vous n'avez qu'à décider si les prix doivent être affichés TTC ou HT selon les attentes des consommateurs locaux.
Que se passe-t-il si j'active « Forcer le prix remisé comme prix principal » et qu'un produit n'a pas de remise ?
Rien ne change pour les produits sans remise active. Ce paramètre n'affecte que les produits qui ont un prix spécial ou une réduction promotionnelle configurée dans PrestaShop. Pour les produits au prix plein, price et sale_price sont identiques que cette option soit activée ou non.
Mes prix grossistes sont définis sur les produits, mais le champ Prix d'achat est vide dans le flux — pourquoi ?
Vérifiez que le champ prix grossiste du produit n'est pas à zéro. S'il est à zéro, le module n'exporte pas le champ. Pour les produits avec déclinaisons, assurez-vous que le prix grossiste est défini soit sur la déclinaison elle-même, soit sur le produit parent (le module utilise le parent si le prix grossiste de la déclinaison est à zéro).
Puis-je afficher les prix d'un groupe de clients aux utilisateurs Facebook inscrits et les prix par défaut à tous les autres ?
Non — le flux utilise un seul prix pour tous les visiteurs. Le paramètre Groupe de clients du flux s'applique à tous les produits de l'intégralité du flux. Il n'est pas possible de segmenter les prix au sein d'un même flux selon le type d'audience.
La modification du paramètre de précision des prix affecte-t-elle l'affichage des prix sur ma boutique ?
Non. Le paramètre de précision n'affecte que le calcul interne lors de la génération du flux. La précision d'affichage des prix dans votre boutique, définie dans les paramètres de localisation de PrestaShop, reste inchangée.
J'ai désactivé la génération hors stock mais certains produits épuisés apparaissent toujours — pourquoi ?
Si un produit ou une déclinaison a l'option « Autoriser les commandes en rupture de stock » activée dans PrestaShop, le module le considère comme disponible et l'inclut toujours. Cela reflète le comportement de votre boutique : si vous autorisez les clients à l'acheter malgré un stock à zéro, Facebook doit également pouvoir afficher l'annonce correspondante.