# Personnalisation Produit (gravure, texte, image) — Guide complet

> Présentation Le module Personnalisation Produit permet à vos clients de personnaliser un article directement depuis la fiche produit : saisie d'un texte / gravure (avec police et couleur) ou upload…

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

## Présentation

Le module **Personnalisation Produit** permet à vos clients de personnaliser un article directement depuis la fiche produit : saisie d'un **texte / gravure** (avec police et couleur) ou **upload d'une image**. La personnalisation s'affiche en **aperçu live sur la photo produit** — positionnement par glisser-déposer, taille et rotation réglables — et chaque option peut appliquer une **surcharge de prix** (montant fixe ou pourcentage) ajoutée automatiquement au panier.

Le module est compatible **PrestaShop 8.x et 9.x**. Il crée ses propres tables et n'écrase pas les fiches produit existantes : la personnalisation est pilotée par des options que vous créez, ciblées par catégorie et affinables produit par produit.

## Installation

1. Zippez le dossier `dfcustomizer` (ou utilisez directement l'archive `dfcustomizer.zip` fournie).
2. Depuis le back-office, ouvrez **Modules > Gestionnaire de modules**.
3. Cliquez sur **Installer un module** et déposez l'archive ZIP.
4. Une fois l'installation terminée, cliquez sur **Configurer** pour créer vos options.

À l'installation, le module crée les tables nécessaires (`dfc_option` et ses tables liées, `dfc_product_override`, `dfc_customization`) et enregistre les hooks d'affichage sur la fiche produit, le panier et la commande.

## Configuration : créer une option

Rendez-vous dans **Modules > dfcustomizer > Configurer** pour créer et gérer vos options de personnalisation. Chaque option définit un type de personnalisation, son impact sur le prix et son périmètre d'application.

### Type de personnalisation

- **Texte / gravure** : le client saisit un texte. Vous pouvez proposer un choix de **police** et de **couleur** (tous deux optionnels).
- **Upload d'image** : le client téléverse un fichier au format **JPG, PNG ou WEBP**.

### Impact prix

Chaque option peut ajouter un supplément au prix du produit :

- un **montant fixe HT**, ou
- un **pourcentage** du prix produit.

Le supplément s'affiche en temps réel côté client et est répercuté dans le panier (voir la section Panier & prix).

### Ciblage par catégorie

Cochez les **catégories** auxquelles l'option doit s'appliquer : l'option n'apparaîtra que sur les produits de ces catégories. Si **aucune catégorie** n'est cochée, l'option s'applique à **l'ensemble du catalogue**.

### Override produit

Sur la **fiche produit** (onglet **Modules**), chaque produit dispose d'un réglage de surcharge. Il peut :

- **hériter** des options définies par les catégories (comportement par défaut) ;
- **choisir ses propres options** spécifiquement pour ce produit ;
- **désactiver** totalement la personnalisation pour ce produit.

## Côté client (front-office)

Sur la fiche produit, le client saisit son texte (police, couleur) ou téléverse son image. La personnalisation s'affiche immédiatement en **aperçu live sur la photo produit** :

- **positionnement** par glisser-déposer sur l'image ;
- **curseurs de taille et de rotation** pour ajuster le rendu.

Le supplément de prix lié aux options choisies s'affiche en direct. À l'ajout au panier, la personnalisation ainsi qu'un **aperçu aplati au format PNG** sont enregistrés pour être retrouvés en commande.

## Panier & prix

Le supplément est ajouté au prix de l'article dans le panier via une règle de prix liée au panier (`SpecificPrice` rattaché à l'`id_cart`). Cette surcharge est **recalculée à chaque sauvegarde du panier** et **supprimée automatiquement** si le produit est retiré du panier.

**À noter :** une seule personnalisation est possible par couple _produit / déclinaison_ et par panier.

## Côté commande

### Back-office

Sur la page d'une commande, un encart **« Personnalisations produit »** récapitule chaque personnalisation : le texte saisi, le **fichier client téléchargeable** et l'aperçu généré. Vous disposez ainsi de tout le nécessaire pour la production (gravure, impression, etc.).

### Front-office

Le client retrouve un rappel de ses personnalisations sur le **détail de sa commande**.

## Notes techniques

- **Tables créées :** `dfc_option` (+ `dfc_option_lang` et `dfc_option_category`), `dfc_product_override`, `dfc_customization`.
- **Surcharge de prix :** appliquée via `SpecificPrice` lié au panier (`id_cart`), recalculée à chaque sauvegarde du panier et supprimée si le produit est retiré.
- **Fichiers clients :** stockés dans `modules/dfcustomizer/uploads/`, dossier dont l'exécution PHP est bloquée par un fichier `.htaccess` pour la sécurité.

**Limitation :** une personnalisation par couple produit/déclinaison et par panier.

## Dépannage

### L'option de personnalisation n'apparaît pas sur la fiche produit

Vérifiez que l'option est bien active et que ses **catégories** incluent la catégorie du produit (ou qu'aucune catégorie n'est cochée pour viser tout le catalogue). Contrôlez ensuite l'**override produit** (onglet Modules de la fiche) : la personnalisation ne doit pas être désactivée pour ce produit. Videz enfin le cache de PrestaShop.

### Le supplément de prix n'apparaît pas dans le panier

La surcharge est recalculée à la sauvegarde du panier. Vérifiez que l'option a bien un impact prix (montant fixe ou pourcentage) et rechargez le panier. Si le produit a été retiré puis réajouté, la personnalisation doit être refaite.

### L'upload d'image est refusé

Seuls les formats **JPG, PNG et WEBP** sont acceptés. Vérifiez le format du fichier ainsi que la taille maximale d'upload autorisée par votre hébergement (`upload_max_filesize` / `post_max_size` PHP).

## Désinstallation

La désinstallation retire les hooks et la configuration du module. Pensez à sauvegarder au préalable les fichiers clients présents dans `modules/dfcustomizer/uploads/` et les données de personnalisation des commandes si vous souhaitez les conserver.

## FAQ

### Le module est-il compatible PrestaShop 9 ?

Oui, le module est compatible PrestaShop 8.x et 9.x.

### Puis-je facturer la personnalisation ?

Oui. Chaque option peut appliquer un supplément, sous forme de montant fixe HT ou de pourcentage du prix produit, ajouté automatiquement au panier.

### Peut-on limiter une option à certains produits ?

Oui, de deux façons : par le **ciblage catégorie** de l'option, et par l'**override produit** qui permet à chaque fiche d'hériter, de choisir ses propres options ou de désactiver la personnalisation.

### Le client peut-il ajouter plusieurs personnalisations sur un même article ?

Une seule personnalisation est enregistrée par couple produit/déclinaison et par panier.
