# Vins et spiritueux PrestaShop : documentation DataFirefly Wine & Spirits

> Installation Installez le module depuis Modules > Gestionnaire de modules > Installer un module avec le fichier ZIP. Le module crée ses tables, enregistre ses hooks et ajoute le menu…

- Page: <https://www.datafirefly.com/documentation/dfwinespirits/>
- Langue: fr
- Mis à jour le: 2026-09-24
- Autres langues: [en](https://www.datafirefly.com/en/documentation/dfwinespirits/index.md), [es](https://www.datafirefly.com/es/documentation/dfwinespirits/index.md), [de](https://www.datafirefly.com/de/documentation/dfwinespirits/index.md), [it](https://www.datafirefly.com/it/documentation/dfwinespirits/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfwinespirits/index.md), [nl](https://www.datafirefly.com/nl/documentation/dfwinespirits/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfwinespirits/index.md)
- Index: <https://www.datafirefly.com/documentation/llms.txt>

## Installation

Installez le module depuis **Modules > Gestionnaire de modules > Installer un module** avec le fichier ZIP. Le module crée ses tables, enregistre ses hooks et ajoute le menu **Catalogue > Vins & spiritueux**.

À l'installation, il crée aussi huit caractéristiques natives : Millésime, Cépage, Appellation, Degré d'alcool, Couleur, Région, Pays d'origine et Label. Il préremplit la France (âge légal 18 ans, case d'âge au paiement, mention « L'abus d'alcool est dangereux pour la santé, à consommer avec modération. ») et les taux d'accises français 2026.

Pour une mise à jour depuis une version précédente, installez simplement le nouveau ZIP : les scripts de mise à jour ajoutent les colonnes, les tables et les caractéristiques manquantes sans toucher à vos données.

## Tableau de bord

Premier onglet du menu. Il affiche le nombre de produits gérés, les unités vendues, l'alcool pur et les accises du mois en cours, une liste de contrôle de la configuration, la complétude des données (degré, couleur, millésime, cépages, appellation) et les 30 derniers produits à compléter avec un lien vers leur fiche. La couleur, le millésime et les cépages ne sont contrôlés que pour les vins.

## Réglages

### Mode de calcul des accises

- **Inclus dans le prix** (par défaut) : vos prix contiennent déjà les accises. Le montant est affiché sur la fiche produit (« Dont droits d'accises ») et dans le panier, puis enregistré dans le registre.
- **Ajoutés à la commande** : une ligne « Droits d'accises » est ajoutée au panier avec les accises du pays de livraison. Elle est portée par un produit technique masqué du catalogue, créé à l'activation de ce mode. Ne supprimez pas ce produit.
- **Désactivé** : aucun montant n'est calculé, le registre enregistre seulement les volumes et l'alcool pur.

**Règle de taxe de la ligne d'accises** : dans l'UE, les accises font partie de la base de TVA. Choisissez votre taux normal.

### Affichage

Chaque élément s'active séparément : résumé du vin sur la fiche produit, montant des accises sur la fiche, mention légale sur la fiche, mention et total des accises au panier, mention en pied de page, accises et mention sur la facture PDF, onglet Fiche dégustation, badges dans les listes de produits.

### Popup de vérification de l'âge

- **Vérification** : boutons Oui / Non, ou saisie de la date de naissance avec calcul de l'âge.
- **Mémoriser pendant** : nombre de jours pendant lesquels le visiteur n'est plus interrogé. 0 redemande à chaque session du navigateur.
- **URL de sortie** : page ouverte quand le visiteur répond non ou n'a pas l'âge requis.
- **Couleur des boutons**, **titre et texte** par langue. Dans le texte, `{age}` est remplacé par l'âge légal du pays du visiteur.

La popup ne s'affiche pas aux robots des moteurs de recherche, sur les pages CMS, ni aux clients connectés dont la date de naissance prouve l'âge. Le contenu de la page reste dans le HTML.

### Caisse panachée

Réglez le nombre de bouteilles requis (6 par défaut), la remise en pourcentage et les produits éligibles : tous les produits alcoolisés gérés par le module, ou seulement ceux cochés dans leur onglet. Dès que le panier atteint le nombre requis, chaque bouteille éligible reçoit la remise. Un produit dont la propre remise caisse s'applique déjà garde sa remise.

### Pays sans règle spécifique

Valeurs utilisées pour les pays que vous n'avez pas configurés : livraison d'alcool autorisée ou non, case d'âge au paiement, âge légal.

### Valeurs par défaut des produits

Volume (75 cl) et taille de caisse (6) proposés sur un nouveau produit.

### Caractéristiques filtrables

Le tableau indique l'état des huit caractéristiques. **Recréer les caractéristiques manquantes** les recrée si l'une a été supprimée. Pour que vos clients filtrent dessus, ajoutez-les à votre modèle de filtres dans **ps_facetedsearch** (bouton **Ouvrir la navigation à facettes**).

## Renseigner un produit

Ouvrez la fiche produit, onglet **Modules**, bloc Wine & Spirits. Cochez **Ce produit est une boisson alcoolisée**. Le bloc s'enregistre avec son propre bouton, indépendamment du formulaire produit.

### Données vins et spiritueux

- **Catégorie** : catégorie fiscale utilisée pour les accises (vin tranquille, mousseux, VDN / VDL, autre produit intermédiaire, spiritueux, bière, cidre).
- **Millésime** ou case **Non millésimé**.
- **Degré d'alcool** en % vol et **volume par unité** en cl.
- **Cépages** séparés par des virgules : chacun devient une valeur de filtre. **Appellation** avec suggestion des valeurs existantes pour éviter les doublons.

### Profil et dégustation

Couleur, région, pays d'origine, température de service (min et max), potentiel de garde, labels (bio, biodynamie, vin nature, vegan, HVE), médailles et notes (une par ligne). Les notes de dégustation et les accords mets-vins se saisissent par langue avec les onglets de langue.

### Vente à la caisse

- **À l'unité uniquement** : comportement standard.
- **À l'unité ou à la caisse** : la fiche produit propose un choix entre la bouteille et la caisse, avec le prix de la caisse et l'économie.
- **À la caisse uniquement** : la quantité minimale devient la taille de la caisse et les quantités du panier sont arrondies à la caisse complète supérieure (inférieure si le stock manque).

La **remise à la caisse**, en % ou en montant par caisse, est créée comme remise sur quantité native à partir d'une caisse complète. La case **Éligible à la caisse panachée** apparaît quand la caisse panachée est activée.

### Volume par déclinaison

Pour un produit à déclinaisons (demi-bouteille, bouteille, magnum), indiquez le volume de chaque déclinaison. Vide, la déclinaison reprend le volume du produit. Les accises, l'alcool pur du registre et la fiche dégustation suivent la déclinaison.

À l'enregistrement, le module réécrit les huit caractéristiques du produit. Ne les modifiez pas à la main dans l'onglet Caractéristiques, vos changements seraient remplacés au prochain enregistrement du bloc.

## Pays et mentions légales

L'onglet liste les pays actifs, avec une recherche. Pour chaque pays, **Modifier** permet de régler :

- **L'alcool peut être livré dans ce pays** : décoché, le client qui a de l'alcool dans son panier est arrêté à l'étape livraison avec un message, et un avertissement s'affiche sur la fiche produit.
- **Case âge légal à la commande** et **âge légal** : la case « Je confirme avoir au moins N ans » est ajoutée aux conditions à accepter à l'étape paiement.
- **Mention légale** par langue. Une langue vide reprend la langue par défaut de la boutique.

Le pays de livraison est lu sur l'adresse de livraison du panier, à défaut sur la première adresse du client connecté, puis sur le pays du visiteur, puis sur le pays par défaut de la boutique.

## Taux d'accises

Un taux se définit par pays, catégorie, plage de degré (bornes incluses, 0 en maximum pour aucune limite), base de calcul et montant dans la devise par défaut, hors taxes. Plusieurs taux peuvent s'appliquer au même produit et s'additionnent.

- **par hectolitre de produit** : vins, mousseux, produits intermédiaires, cidres.
- **par hectolitre d'alcool pur** : spiritueux. Exemple : 70 cl à 40 % = 0,0028 hl d'alcool pur.
- **par hectolitre et par degré** : bières.
- **par litre de produit** et **par unité vendue** pour les autres cas.

Taux français 2026 livrés : vins tranquilles 4,19 €/hl, mousseux 10,38 €/hl, cidres 1,46 €/hl, VDN et VDL 52,39 €/hl, autres produits intermédiaires 209,53 €/hl plus 52,39 €/hl de cotisation au-delà de 18 % vol, alcools 1 932,42 €/hl d'alcool pur plus 620,47 € de cotisation sécurité sociale au-delà de 18 % vol, bières 4,12 €/hl/degré jusqu'à 2,8 % vol puis 8,24 €. Une bouteille de 70 cl à 40 % supporte ainsi 7,15 €.

Les taux changent chaque 1er janvier. Vérifiez-les sur le site des douanes et mettez-les à jour. **Charger les taux français 2026** remplace tous les taux de la France par ceux livrés avec le module.

## Registre des accises

Chaque commande validée enregistre, pour chaque produit alcoolisé, le pays de livraison, la catégorie, la déclinaison, les unités, le volume, le degré, l'alcool pur et le montant des accises au taux du jour. L'onglet Registre filtre par période, par pays et sur les commandes validées, avec deux exports CSV : la synthèse par pays et catégorie, et les lignes de commande. La page de chaque commande affiche aussi un panneau Droits d'accises.

## Import et export CSV

**Exporter les produits alcoolisés** ou **Exporter tout le catalogue** produit un fichier au format de l'import. Complétez-le dans un tableur puis réimportez-le.

- Séparateur `;` ou `,` détecté automatiquement. Produit retrouvé par `id_product`, sinon par `reference`.
- Une colonne absente ou une cellule vide conserve la valeur actuelle. `-` vide le millésime, les cépages, l'appellation et les champs texte.
- `vintage` : année ou `NV`. `product_type` : still_wine, sparkling_wine, vdn_vdl, intermediate, spirits, beer, cider. `sale_mode` : unit, both, case_only. `color` : red, white, rose, orange, amber, clear. `labels` : organic, biodynamic, natural, vegan, hve, séparés par des virgules. `origin_country` : code ISO (FR, IT...). `awards` : une médaille par valeur, séparées par `|`.
- Colonnes par langue : `tasting_notes_fr`, `food_pairing_fr`, `tasting_notes_en`...

Laissez **Simulation uniquement** coché pour un premier passage : le rapport indique les lignes lues, les produits qui seraient mis à jour et les erreurs avec leur numéro de ligne, sans rien enregistrer.

## Ce que voit le client

- **Fiche produit** : résumé du vin, choix bouteille ou caisse, offre de caisse panachée, montant des accises, âge légal et mention légale, avertissement si le pays de livraison est bloqué.
- **Onglet Fiche dégustation** : cartes des caractéristiques, labels, notes de dégustation, accords mets-vins et médailles.
- **Listes de produits** : badges couleur, millésime, labels, médailles et caisse panachée.
- **Panier** : « 2 x caisse de 6 » sous les lignes, progression de la caisse panachée, total des accises et mention légale.
- **Paiement** : case d'âge légal, ligne d'accises en mode ajouté.
- **Facture PDF** : montant des accises, alcool pur et mention légale.

## Dépannage

### Les filtres n'apparaissent pas

Ajoutez les caractéristiques au modèle de filtres de ps_facetedsearch et associez le modèle aux catégories concernées. Les valeurs n'apparaissent qu'une fois au moins un produit enregistré avec ses données.

### Le bloc Fiche dégustation ou les badges ne s'affichent pas

Vérifiez les options d'affichage et que le produit est coché comme boisson alcoolisée. Les badges passent par le hook `displayProductListReviews` et l'onglet par `displayProductExtraContent` : un thème qui ne les appelle pas ne les affichera pas.

### La ligne d'accises n'apparaît pas au panier

Vérifiez le mode Ajoutés à la commande, que le pays de livraison a des taux pour la catégorie du produit, et que le produit technique de la ligne d'accises existe (son ID est indiqué dans les réglages).

### La popup d'âge réapparaît à chaque page

Le navigateur bloque le cookie `dfws_age_ok`. Vérifiez qu'un gestionnaire de cookies ne le supprime pas : c'est un cookie fonctionnel.

## Compatibilité

- PrestaShop 8.0 à 9.x, le même ZIP couvre les deux branches.
- Filtres par caractéristiques natives, compatibles ps_facetedsearch.
- Architecture ModuleAdminController, sans dépendance Composer, PHP 7.2 et plus.
- Interface en français, anglais, espagnol, allemand, italien, néerlandais, polonais et portugais.
