# 07. PRODUITS / SERVICES

# 7.01 Introduction

Ces modules permettent de gérer un catalogue de produits et un catalogue de services.

- ***Un produit est un bien matériel***<span style="white-space: pre-wrap;"> : il peut se stocker dans un entrepôt, se livrer, et sa valeur se déprécie avec le temps.</span>
- ***Un service est une prestation immatérielle*** : il n’est pas stocké (n’apparaît pas dans le module Stock ni dans les expéditions).

# 7.02 Configuration du module

<span style="white-space: pre-wrap;">Les modules Produits et Services se trouvent dans </span>***Configuration &gt; Modules &gt; Gestion des Produits/Services***<span style="white-space: pre-wrap;"> (PM). L'icône engrenage donne accès à la page de paramétrage spécifique.</span>

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/9xfIJ14Sl1DxHUGH-pic-134-002.png)

**Figure 7.1 – Activation et paramétrage du module Produits/Services**

### **Modèle de numérotation**

Choisissez le modèle qui servira de compteur pour les codes produit et service.

- Leopard : code libre sans vérification, modifiable à tout moment.
- Elephant : masque de numérotation personnalisable (mêmes balises que pour les tiers : {000000}, {yy}, {mm}, {dd}…).

### **Paramètres des produits/services**

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/8U6B8aDda9P24BLc-pic-134-003.png)

**Figure 7.2 – Paramétrage général des produits/services**

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/lra1ekEYzHTE2BZg-pic-135-005.png)

**Figure 7.3 – Configuration des règles de prix**

Règles de prix :

- Prix unique par produit/service (identique pour toutes les sociétés en multi-société)
- Plusieurs niveaux de prix par produit (chaque client appartient à un niveau)
- Prix différents pour chaque client (onglet Prix clients + bouton Ajouter prix par client)

Produits virtuels (kits/lots) :

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/6pOPLt1JgdazZo02-pic-135-006.png)

**Figure 7.4 – Configuration des produits virtuels**

Un produit virtuel est un produit père constitué d'autres produits. Il permet de définir des packages vendus comme un seul article, tout en gérant les stocks des composants individuellement.

Règles des produits virtuels :

- Dans un document, seule la ligne du produit virtuel père est affichée.
- Le stock des composants est incrémenté/décrémenté en même temps que le produit virtuel.
- Un produit virtuel peut lui-même contenir d'autres produits virtuels.

<p class="callout danger">**Important :** Ce n'est pas un module de fabrication : les sous-produits ne sont décrémentés du stock qu'au moment de la consommation du produit virtuel, et restent consommables de manière indépendante. Pour la fabrication (BOM), utilisez le module Nomenclatures.</p>

Autres options :

- Activer les variantes (couleur, taille…) — nécessite le module Variantes de produits.
- Base des prix par défaut : HT ou TTC.
- Utiliser le conditionnement/emballage sur les prix fournisseur.

### **Interface utilisateur**

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/ionv2LBKBLfVaIu7-pic-136-008.png)

**Figure 7.5 – Options d'interface pour la recherche de produits**

- Champ avec auto-complétion Ajax plutôt que liste déroulante (recommandé si &gt; 1 000 produits).
- Comportement de la description produit lors de l'ajout dans un document (ne pas remplir / remplir automatiquement / ne jamais ajouter).
- Affichage de la description dans la langue du tiers ou de l'utilisateur.

<p class="callout success">**Astuce :** Pour un très grand nombre de produits (&gt; 100 000), définissez PRODUCT\_DONOTSEARCH\_ANYWHERE = 1 dans Configuration &gt; Divers pour limiter la recherche au début de la chaîne.</p>

### **Nomenclatures (BOM)**

[![test9.png](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/DnPBM9jScf58hhis-test9.png)](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/DnPBM9jScf58hhis-test9.png)

**Figure 7.6 – Configuration du module Nomenclatures (BOM)**

Le module Nomenclatures (BOM) permet de définir la composition des produits pour la planification de fabrication (utilisé avec le module Ordres de fabrication). La numérotation des BOMs suit le même système de masques que les produits ({000000}, {yy}, {mm}…). Le modèle standard génère un numéro de la forme BOMyymm-nnnn.

### **Attributs supplémentaires**

Définissez les champs personnalisés non disponibles en standard sur les fiches Produits/Services. Les types disponibles sont identiques à ceux des tiers (voir chapitre Tiers). Exemple : ajouter un champ Date de péremption de type Date avec le code perem.

# 7.03 Produits

### **Créer un nouveau produit :**

<span style="white-space: pre-wrap;">Allez dans </span>***Produits &gt; Nouveau produit.***<span style="white-space: pre-wrap;"> Les champs Réf, Libellé, État (Vente) et État (Achat) sont obligatoires. Ajouter une image au produit : depuis l'onglet Fichiers joints, utilisez Ajouter un fichier/document puis cliquez sur le + à droite.</span>

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/ARdb8pLqwkSp89zb-pic-138-012.png)**Figure 7.7 – Ajout d'une image via l'onglet Fichiers joints**

Une fois créé, le produit est accessible dans Produits &gt; Liste. La fiche affiche des onglets selon les modules activés.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/jTO34YmvnFyKuFBM-pic-139-014.png)**Figure 7.8 – Fiche produit avec ses onglets (Stock, Codes-barres, Marges, Catégories…)**

<p class="callout success">**Astuce :** <span style="white-space: pre-wrap;">Taux de TVA : pour ajouter ou modifier un taux, allez dans </span>***Configuration &gt; Dictionnaires &gt; Taux de TVA***. Sélectionnez le pays, saisissez le taux, renseignez NPR (Non pour la TVA standard), ajoutez une note et cliquez sur Ajouter. Pour un changement de TVA en masse : Outils d'administration &gt; Changement de TVA en masse.</p>

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/UlXdFAYexro8PsYE-pic-139-015.png)**Figure 7.9 – Modification du taux de TVA dans les dictionnaires**

### **Modifier un produit**

Cliquez sur le bouton Modifier depuis la fiche produit.

### **Supprimer un produit**

Cliquez sur le bouton Supprimer depuis la fiche produit.

### **Options cachées (produits)**

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/HOEWly9q1slHTP7t-pic-140-017.png)**Figure 7.10 – Aperçu des options cachées produits**

<span style="white-space: pre-wrap;">Constantes à définir dans </span>***Configuration &gt; Divers***<span style="white-space: pre-wrap;"> :</span>

<table id="bkmrk-constantedescription" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 320px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(2, 121, 145); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th></tr><tr style="background-color: rgb(220, 241, 245);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">CATEGORY\_GRAPHSTATS\_ON\_PRODUCTS

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Graphique des produits par catégorie dans la zone produits

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_SEARCH\_PRODUCT\_BY\_FOURN\_REF

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Rechercher un produit par référence fournisseur (&gt;= 8.0)

</td></tr><tr style="background-color: rgb(220, 241, 245);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_DISABLE\_FREE\_LINES

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Interdire les lignes libres dans les documents (&gt;= 8.0)

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_PRODUCT\_DISABLE\_CUSTOMCOUNTRYCODE

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Éviter que le code pays d'origine soit ajouté en description

</td></tr><tr style="background-color: rgb(220, 241, 245);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">PRODUCT\_ADD\_TYPE\_IN\_DOCUMENTS

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Ajouter le texte « Produit » ou « Service » devant les lignes PDF

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">PRODUCT\_DONOTSEARCH\_ANYWHERE

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Recherche uniquement sur le début de la référence/libellé

</td></tr><tr style="background-color: rgb(220, 241, 245);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">FOURN\_PRODUCT\_AVAILABILITY

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Activer le délai de disponibilité produit sur les prix fournisseur

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">PRODUIT\_PDF\_MERGE\_PROPAL

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Fusionner les PDF produits avec les propales

</td></tr><tr style="background-color: rgb(220, 241, 245);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">PRODUCT\_USE\_UNITS

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Activer les unités (dictionnaire) sur la fiche produit/service

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">MAIN\_DIRECT\_STATUS\_UPDATE

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Changer le statut vente/achat directement sur la fiche (v4.0+)

</td></tr><tr style="background-color: rgb(220, 241, 245);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">PRODUCT\_CHARGES

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Champ de frais ad hoc sur le prix d'achat (coûts supplémentaires)

</td></tr></tbody></table>

<table id="bkmrk-constantedescription-1" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px; margin-top: 12px;"><colgroup><col style="width: 319px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(2, 121, 145); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th></tr><tr style="background-color: rgb(220, 241, 245);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">PRODUCT\_MAX\_VISIBLE\_PHOTO

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Nombre maximum de vignettes photos sur la fiche produit

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">PRODUCT\_MAX\_LENGTH\_COMBO

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Longueur max du libellé dans les listes déroulantes

</td></tr><tr style="background-color: rgb(220, 241, 245);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">PRODUCT\_ALLOW\_EXTERNAL\_DOWNLOAD

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Partage public des fichiers produit par lien

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">PRODUCT\_SEARCH\_AUTO\_SELECT\_IF\_ONLY\_ONE

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">Auto-sélection si un seul résultat (1=actif par défaut)

</td></tr></tbody></table>

# 7.04 Stock

### **Configurer le module Stock**

<span style="white-space: pre-wrap;">La gestion du stock permet de suivre les états de stock et les correctifs pour chaque produit, éventuellement répartis entre plusieurs entrepôts. Le module se trouve dans </span>***Configuration &gt; Modules &gt; Gestion produits***.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/tGAW1m17z3l30aYL-pic-141-019.png)

**Figure 7.11 – Configuration du module Stock**

<p class="callout warning">**Avertissement :** Quand le module **Lot/Série**<span style="white-space: pre-wrap;"> est activé, le mode de décrémentation est forcé sur Décrémenter les stocks réels sur validation d'expédition et le mode d'incrémentation sur Incrémenter les stocks réels sur ventilation manuelle dans les entrepôts — ces choix ne peuvent pas être modifiés.</span></p>

***Règles de réduction automatique du stock :***

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/wqpxC0HQZVNELzgK-pic-142-021.png)

**Figure 7.12 – Règles de réduction du stock**

- Lors de la validation de la facture client / note de crédit
- Lors de la validation de la commande client
- Sur validation des expéditions (module Expéditions requis)
- Au classement clôturée de l'expédition (module Expéditions requis)

***Règles d'augmentation automatique du stock :***

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/uIpic3H7cMPOCa4U-pic-142-022.png)

**Figure 7.13 – Règles d'augmentation du stock**

- Lors de la validation de la facture fournisseur / note de crédit
- Lors de l'approbation des bons de commande fournisseur
- Sur ventilation manuelle dans les entrepôts lors de la réception

Règles d'exigence : le stock peut être négatif, ou bloquant à l'ajout en facture/commande. Autres options :

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/7XuP3sSnGC4R1nLp-pic-143-024.png)

**Figure 7.14 – Autres options et entrepôts par défaut**

- Entrepôt par défaut (global, propales, commandes clients)
- Création automatique d'un entrepôt par utilisateur
- Appliquer la gestion de stock aux services (désactivé par défaut)
- Gestion des stocks min/souhaités par paire (produit-entrepôt)

### **Créer un entrepôt**

La création d'un entrepôt est la première étape obligatoire de la gestion de stock. Allez dans Produits/Services &gt; Stock &gt; Nouvel entrepôt dans le menu de gauche.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/yUulSiUZiYHPw9Ag-pic-144-026.png)

**Figure 7.15 – Fiche d'un entrepôt**

Seule la Réf est obligatoire. Un entrepôt fermé ne peut pas être utilisé dans les autres modules — pratique pour préparer ou bloquer pendant un inventaire. Pour chaque produit, utilisez ensuite l'onglet Stock de la fiche produit pour définir un stock de base dans chaque entrepôt.

### **Modifier / Supprimer un entrepôt**

<span style="white-space: pre-wrap;">Depuis </span>**Stock &gt; Liste**<span style="white-space: pre-wrap;"> : cliquez sur le nom de l'entrepôt, puis sur Modifier ou Supprimer (avec confirmation).</span>

### **Stocks par lot/série**

Pour introduire des numéros de lot/série, partez d'une commande fournisseur dont les produits ont l'option Utiliser les numéros de lots/série = Oui.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/wSNDw55Ir5CUzpDL-pic-145-028.png)

**Figure 7.16 – Commande fournisseur avec produits en lot/série**

Lors de la réception, renseignez :

- Numéro de lot/série
- Dates DMD/DLUO (Date Limite d'Utilisation Optimale) et DLC (Date Limite de Consommation)
- Entrepôt de destination

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/DInolEzngSrUGNwj-pic-145-029.png)

**Figure 7.17 – Interface de réception avec saisie des lots/séries**

Cliquez sur Ventiler pour valider l'affectation aux entrepôts.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/aftbrvGcUD04TGgG-pic-146-031.png)

**Figure 7.18 – Ventilation des lots dans les entrepôts**

### **Réapprovisionnement**

L'écran de réapprovisionnement liste les produits dont le stock physique est inférieur au minimum souhaité et permet de créer des commandes fournisseurs pour combler la différence.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/QJqDjhQjA1l6sJMV-pic-146-032.png)

**Figure 7.19 – Écran de réapprovisionnement**

Sélectionnez les références à réapprovisionner, puis cliquez sur Créer commandes.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/IzF4cr3o7uZ8CLMD-pic-147-034.png)

**Figure 7.20 – Commandes fournisseurs créées en brouillon**

Cliquez sur une référence pour valider la commande correspondante, renseignez la méthode et cliquez sur Passer commande.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/Lmx8L3DKwEBAwl7A-pic-147-035.png)

**Figure 7.21 – Formulaire Passer commande**

Pour la réception, choisissez Recevoir produits :

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/K7Bm6jCXaX8fADW2-pic-148-037.png)

**Figure 7.22 – Interface de réception des produits**

Renseignez les numéros de lot, les dates, choisissez le ou les entrepôts, puis cliquez sur Ventiler.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/zvkPPrDbHfAQrGGP-pic-148-038.png)

**Figure 7.23 – Résultat de la ventilation dans les entrepôts**

L'onglet Mouvements de stock de chaque entrepôt affiche les lignes de mouvement avec date, référence produit, numéro de lot et quantité.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/SxGgyo390YGPLCi6-pic-149-040.png)

**Figure 7.24 – Mouvements de stock enregistrés**

### **Transfert de stock**

Après avoir cliqué sur Transférer stock, renseignez la référence produit, la quantité, le numéro de lot/série et les dates, puis enregistrez.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/oCadJbqEsVI4otl3-pic-149-041.png)

**Figure 7.25 – Formulaire de transfert de stock**

### **Prix moyen pondéré (PMP)**

Depuis l'onglet Stock d'un produit, cliquez sur Corriger le stock et renseignez le Prix d'achat unitaire.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/rfYMKvP6YeQRX4Kc-pic-150-043.png)

**Figure 7.26 – Saisie du prix d'achat pour le calcul du PMP**

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/vANt7u8x1NLvI5fR-pic-150-044.png)

**Figure 7.27 – Prix moyen pondéré d'acquisition calculé**

### **Options cachées (stock)**

<table id="bkmrk-constantedescription" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(132, 63, 161); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th></tr><tr style="background-color: rgb(240, 229, 245);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">**STOCK\_SUPPORTS\_SERVICES**

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Les services peuvent être gérés en stock / dans les expéditions</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">**SUPPLIER\_ORDER\_DISABLE\_STOCK\_DISPATCH\_WHEN\_TOTAL\_REACHED**

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Bloquer la ventilation si le total prévu est déjà reçu</span>

</td></tr><tr style="background-color: rgb(240, 229, 245);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">**STOCK\_CALCULATE\_ON\_BILL**

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Stock théorique = stock physique + stock en commande</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">**USER\_DEFAULT\_WAREHOUSE**

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Afficher l'entrepôt dans la fiche utilisateur (v11.0)</span>

</td></tr></tbody></table>

# 7.05 Code-barres

### **Configurer le module Code-barres**

Le module se trouve dans ***Configuration &gt; Modules &gt; Outils multi-modules.***

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/iIwlvdpg74gOnk92-pic-151-046.png)

**Figure 7.28 – Configuration du module Code-barres**

Masque de numérotation (mêmes balises que pour les produits) avec, en plus pour EAN13 : le dernier caractère après } en 13ème position doit être \* ou ? (remplacé par la clé de contrôle calculée). Exemples EAN13 :

<table id="bkmrk-masqueusage020%7B00000" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(125, 128, 0); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Masque

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Usage

</th></tr><tr style="background-color: rgb(242, 242, 224);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">020{000000000}?

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">(usage interne)

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">9771234{00000}?

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">(ISSN avec préfixe 1234)

</td></tr></tbody></table>

Modèles d'encodage : choisissez le type (EAN13, ISBN, QR code…). En positionnant sur Moteur interne, un exemple s'affiche.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/EaO1vg0oDG5nXBGS-pic-152-048.png)

**Figure 7.29 – Modèles d'encodage des codes-barres**

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/CjJVNV1YsOVU7V3n-fixa3.png)

**Figure 7.30 – Options : type par défaut pour produits et tiers**

<p class="callout info">**Note :** <span style="white-space: pre-wrap;">Si genbarcode n'est pas installé, une alarme s'affiche — ce n'est pas bloquant pour les modèles utilisant uniquement PHP </span>**(EAN13, QR code).**</p>

### **Utiliser les codes-barres**

Une fois configuré, un champ code-barres apparaît sur les fiches tiers et/ou produits. Vous pouvez le renseigner via clavier, scanner ou numérotation automatique.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/Y3AJD0BprPc5Xtdw-pic-153-051.png)

**Figure 7.31 – Utilisation d'un scanner de codes-barres**

<p class="callout success">**Astuce :** Pour être compatible avec Keatic ERP, votre scanner doit prendre en charge l'émulation clavier (interface HID / Keyboard Wedge). Exemples compatibles : Motorola DS4208, Datalogic QW2120.</p>

Impression d'étiquettes : depuis Outils &gt; Imprimer le code-barres, choisissez le format de page, le nombre d'étiquettes par planche, sélectionnez un produit par sa référence, récupérez son code-barres puis cliquez sur Générer la page à imprimer.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/ABlj96GXV2viThFk-pic-154-053.png)

**Figure 7.32 – Outil d'impression d'étiquettes de codes-barres**

[![ex1.png](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/SPO2ymmf7HAIT0BF-ex1.png)](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/SPO2ymmf7HAIT0BF-ex1.png)

**Figure 7.33 – Exemple de page d'étiquettes générée**

### **Code-barres avec UltimatePdf**

Le module UltimatePdf permet d'afficher le code-barres du tiers (en haut ou en bas du document) et les codes-barres produits par ligne, sur les propositions, commandes et factures.

# 7.06 Catégories produits

<span style="white-space: pre-wrap;">Le module Tags/Catégories gère des catégories sur les tiers, contacts, produits et services. Il se trouve dans </span>***Configuration &gt; Modules &gt; Outils multi-modules***<span style="white-space: pre-wrap;"> (sans configuration spécifique après activation).</span>

[![ex2.png](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/U5clMKt6kbfHoYmF-ex2.png)](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/U5clMKt6kbfHoYmF-ex2.png)

**Figure 7.34 – Formulaire de création d’une catégorie produit**

<span style="white-space: pre-wrap;">Créez une catégorie depuis </span>***Produits/Services &gt; Tags/catégories &gt; Nouveau tag/catégorie***. Seule la Réf est obligatoire. Vous pouvez créer des sous-catégories en sélectionnant une catégorie parente. Pour modifier : cliquez sur le nom de la catégorie, puis Modifier. Pour supprimer : cliquez sur le nom de la catégorie, puis Supprimer (confirmation demandée).

# 7.07 Expéditions

### **Configurer le module Expéditions**

<span style="white-space: pre-wrap;">Le module se trouve dans </span>***Configuration &gt; Modules &gt; Gestion de la relation client (GRC)***.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/vGigMjXA51tV5bw9-pic-156-058.png)

**Figure 7.35 – Activation du module Expéditions**

Deux fonctionnalités disponibles :

- Bons d'expédition/livraison vers le client
- Bons de réception client (rarement nécessaire, fait double emploi)

Modèles de numérotation des expéditions — balises supplémentaires par rapport aux produits :

<table id="bkmrk-balisedescription%7Bcc" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(63, 97, 0); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Balise

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th></tr><tr style="background-color: rgb(232, 239, 220);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">{cccc}</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Code client sur n lettres</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">{cccc000}</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Code client + compteur propre au client</span>

</td></tr><tr style="background-color: rgb(232, 239, 220);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">{tttt}</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Code type entreprise (voir Dictionnaires)</span>

</td></tr></tbody></table>

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/PlMVYPqprihUEsic-pic-157-060.png)

**Figure 7.36 – Paramétrage de la numérotation des expéditions**

Modèles : Ribera (masque personnalisable) ou Safor (SHyymm-nnnn). Modèles de bordereau d'expédition : Merou, Rouget (standard) et ultimate\_shipment (UltimatePdf).

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/GwLLj5ZXfOFFIMvx-pic-157-061.png)

**Figure 7.37 – Sélection du modèle de bordereau d'expédition**

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/bs5Rt6iLRX9MSMIh-pic-158-063.png)

**Figure 7.38 – Options complémentaires et filigrane**

Bons de réception client (modèles de numérotation) :

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/MuLTO8IV58OOKcvL-pic-158-064.png)

**Figure 7.39 – Configuration des bons de réception client**

- Jade : BLyymm-nnnn
- Saphir : masque personnalisable (mêmes balises que Ribera)

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/v663j7YzEGGIml2K-pic-159-066.png)

**Figure 7.40 – Détail du formulaire bon de réception**

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/pH2ddqEujrxTqNNN-pic-159-067.png)

**Figure 7.41 – Modèle de bon de réception client**

Modèles disponibles : typhon (standard) et ultimate\_receipt (UltimatePdf).

### **Créer une expédition**

<span style="white-space: pre-wrap;">Depuis </span>***Produits/Services &gt; Expéditions***, la partie droite liste les commandes en instance sous Expéditions à valider. Sélectionnez une commande, ouvrez l'onglet Expéditions/réceptions, choisissez l'entrepôt et cliquez sur Nouvelle expédition. Renseignez la date de livraison prévue, la méthode de livraison, la quantité à expédier, puis cliquez sur Créer, Valider et Confirmer.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/oTkdtqevgbaEdanp-pic-160-069.png)

**Figure 7.42 – Formulaire de création d'une expédition**

Depuis le bordereau validé, vous pouvez envoyer par mail ou créer la facture directement.

### **Modifier / Supprimer une expédition**

<p class="callout danger">**Important :** Une expédition ne peut pas être modifiée directement. Il faut la supprimer et en créer une nouvelle.</p>

### **Options cachées (expéditions)**

<table id="bkmrk-constantedescription" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 256px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(63, 97, 0); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">**Constante**</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">**Description**</th></tr><tr style="background-color: rgb(232, 239, 220);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">**DATE\_LIVRAISON\_WEEK\_DELAY**

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Incrémenter automatiquement la date de livraison du nombre de semaines déclarées à la création</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">**STOCK\_SUPPORTS\_SERVICES**

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Intégrer des services dans une expédition (association service + produit)</span>

</td></tr></tbody></table>

# 7.08 Services

## **Créer / Modifier / Supprimer un service**

Le processus est identique à celui des produits. Allez dans Services &gt; Nouveau service. Les champs Réf, Libellé, État (Vente) et État (Achat) sont obligatoires.

## **Options cachées (services)**

<table id="bkmrk-constantedescription" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 258px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(19, 72, 4); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Constante

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th></tr><tr style="background-color: rgb(226, 235, 224);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">**SERVICE\_ARE\_ECOMMERCE\_200238EC**

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">**Traiter les services comme des e-Services (directive EU 2002/38/EC) — TVA basée sur le pays d'achat, non de vente, pour les ventes B2C**

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;">**STOCK\_SUPPORTS\_SERVICES**

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Intégrer des services dans les expéditions et les stocks</span>

</td></tr></tbody></table>

# 7.09 Numéros de Lot/Série

### **Configurer le module**

<span style="white-space: pre-wrap;">Le module se trouve dans </span>***Configuration &gt; Modules &gt; Gestion des Produits/Services***<span style="white-space: pre-wrap;"> (PM). Sa configuration se limite à l’ajout de champs supplémentaires.</span>

[![ex3.png](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/XNf1wvQr4s3wuB5c-ex3.png)](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/XNf1wvQr4s3wuB5c-ex3.png)

**Figure 7.43 – Configuration du module Lot/Série**

Sur chaque fiche produit, activez ou non la gestion par lot/série. Dans la liste des produits (vue Stocks par lot/série), les colonnes Lot/Série, DMD/DLUO et DLC apparaissent.

[![ex4.png](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/KIdsqQn6hFr32BfJ-ex4.png)](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/KIdsqQn6hFr32BfJ-ex4.png)

**Figure 7.44 – Vue liste des stocks par lot/série**

# 7.10 Variantes de produits

Les variantes (couleur, taille…) s'activent via le module Variantes de produits (dans Configuration &gt; Modules).

### **Créer une variante**

<span style="white-space: pre-wrap;">Depuis </span>***Produits | Services &gt; Attributs de variante***<span style="white-space: pre-wrap;"> dans le menu de gauche, cliquez sur Créer.</span>

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/BIAbLntd2q2iuPcj-pic-163-075.png)

**Figure 7.45 – Bouton de création d'une variante**

Étape 1 — Créer l'attribut (ex. : Taille) :

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/0AUPCLbgSbtOCfXr-pic-163-076.png)

**Figure 7.46 – Attribut Taille créé**

Étape 2 — Créer les valeurs (ex. : S, M, L, XL) :

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/wt14ZUoUBAUhaeCZ-pic-163-077.png)

**Figure 7.47 – Valeurs de l'attribut Taille créées**

Étape 3 — Appliquer sur un produit : depuis la fiche produit, choisissez la variante et définissez un éventuel impact sur le prix (valeur absolue ou pourcentage) et/ou sur le poids.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/eT0EeSxpO9FXWRJI-pic-163-078.png)

**Figure 7.48 – Impact de la variante sur le prix**

La liste des variantes apparaît en pied de page de la fiche produit.

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/4nAdWE0MOAh9OsRd-pic-164-080.png)

**Figure 7.49 – Liste des variantes en pied de fiche produit**

[![ex5.png](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/7WzcG0ULdAUcIETi-ex5.png)](https://wiki.infras.fr/uploads/images/gallery/2026-07/scaled-1680-/7WzcG0ULdAUcIETi-ex5.png)

**Figure 7.50 – Vue globale des variantes disponibles**

# 7.11 Nomenclatures (BOM)

### **Configurer le module**

<span style="white-space: pre-wrap;">Le module Nomenclatures (BOM) se trouve dans </span>***Configuration &gt; Modules &gt; Gestion des Produits/Services***<span style="white-space: pre-wrap;"> (PM).</span>

![Figure](https://wiki.infras.fr/uploads/images/gallery/2026-07/pUoTbG1x6SWyOC4C-pic-165-083.png)

**Figure 7.51 – Configuration du module Nomenclatures BOM**

Sa configuration permet principalement d'ajouter des champs supplémentaires et de choisir le modèle de numérotation :

- advanced : masque personnalisable (mêmes balises que pour les produits, plus {cccc} et {tttt})
- standard : format BOMyymm-nnnn

Les BOMs peuvent être utilisées par le module Ordres de fabrication (MO) natif ou par le module tiers Factory pour la planification des ressources et la fabrication.

### **Prérequis**

Avant de créer une nomenclature, les éléments suivants doivent être en place :

- Le module Produits est activé.
- Le module Nomenclatures (BOM) est activé.
- Au moins un entrepôt existe (menu Produits/Services &gt; Stock &gt; Entrepôts).
- Les produits concernés sont créés avec la bonne nature de produit :
- Le produit à fabriquer doit être déclaré comme Produit manufacturé.
- Les composants doivent être déclarés comme Matière première.

<p class="callout danger">**Important :** Le champ Nature de produit (sur la fiche produit) est déterminant pour la fabrication. Un produit fini doit être de nature Produit manufacturé, et les composants de nature Matière première. Sans ce paramétrage, les nomenclatures et ordres de fabrication ne fonctionneront pas correctement.</p>

### **Préparer les produits**

##### **Créer le produit fini :**

<span style="white-space: pre-wrap;">Allez dans </span>***Produits &gt; Nouveau produit*** et renseignez les champs suivants :

<table id="bkmrk-champvaleur-attendue" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(126, 140, 141); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Champ

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Valeur attendue

</th></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Référence</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Référence unique du produit fini (ex. : MACHINE\_A)</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Libellé</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Description du produit (ex. : Machine Assemblée Type A)</span>

</td></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Type</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Produit</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Nature de produit</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Produit manufacturé</span>

</td></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">En vente</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Oui</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">À l'achat</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Non (car on le fabrique)</span>

</td></tr></tbody></table>

##### **Créer les composants :**

Répétez l'opération pour chaque composant nécessaire :

<table id="bkmrk-champvaleur-attendue-1" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(126, 140, 141); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Champ

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Valeur attendue

</th></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Nature de produit</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Matière première</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">En vente</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Non (généralement)</span>

</td></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">À l'achat</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Oui (on achète les matières premières)</span>

</td></tr></tbody></table>

<p class="callout success">**Astuce :** Les matières premières sont en général positionnées À l'achat = Oui (on les achète auprès des fournisseurs) et En vente = Non (on ne les vend pas directement aux clients).</p>

Exemple concret : pour fabriquer une machine assemblée, les composants peuvent être :

<table id="bkmrk-r%C3%A9f%C3%A9rencelibell%C3%A9natu" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(126, 140, 141); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Référence

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Libellé

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Nature

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">À l'achat

</th></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">COMP\_MOTEUR</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Moteur électrique 220V</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Matière première</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Oui</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">COMP\_CHASSIS</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Châssis métallique</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Matière première</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Oui</span>

</td></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">COMP\_VIS</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Kit visserie M8</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Matière première</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Oui</span>

</td></tr></tbody></table>

### **Créer une nomenclature**

##### **Renseigner l'en-tête :** 

1. <span style="white-space: pre-wrap;">Allez dans </span>***GPAO &gt; Nomenclatures (BOM) &gt; Nouvelle nomenclature***.
2. Renseignez les champs de l'en-tête :

<table id="bkmrk-champdescriptionr%C3%A9f%C3%A9" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(126, 140, 141); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Champ

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Référence</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Générée automatiquement selon le modèle choisi, ou saisie libre</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Libellé</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Description de la nomenclature (ex. : Nomenclature Machine A)</span>

</td></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Produit</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Le produit fini à fabriquer (ex. : MACHINE\_A)</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Quantité</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Quantité de produit fini obtenue par cette nomenclature (en général 1)</span>

</td></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Type de BOM</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Fabrication (type par défaut)</span>

</td></tr></tbody></table>

1. Cliquez sur Créer. La nomenclature est créée en statut Brouillon.

### **Ajouter les lignes de composants**

Une fois la BOM créée, ajoutez les composants dans la section Lignes :

1. Cliquez sur le champ produit et recherchez le composant souhaité.
2. Indiquez la quantité nécessaire pour fabriquer une unité du produit fini.
3. Cliquez sur Ajouter pour chaque ligne.

Exemple : pour la nomenclature de MACHINE\_A :

<table id="bkmrk-composantquantit%C3%A9sig" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(126, 140, 141); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Composant

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Quantité

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Signification

</th></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">COMP\_MOTEUR</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">1</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">1 moteur par machine</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">COMP\_CHASSIS</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">1</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">1 châssis par machine</span>

</td></tr><tr style="background-color: rgb(234, 237, 238);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">COMP\_VIS</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">4</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">4 kits de vis par machine</span>

</td></tr></tbody></table>

La structure finale de la nomenclature se présente ainsi :

- Produit fabriqué : MACHINE\_A (quantité : 1)
- Ligne 1 : COMP\_MOTEUR × 1
- Ligne 2 : COMP\_CHASSIS × 1
- Ligne 3 : COMP\_VIS × 4

### **Valider une nomenclature**

<p class="callout warning">**Avertissement :** Étape obligatoire. Une BOM en brouillon n'est pas utilisable pour créer un Ordre de Fabrication. Elle doit impérativement être validée.</p>

1. Sur la fiche de la BOM, cliquez sur le bouton Valider.
2. Confirmez la validation.
3. Le statut passe de Brouillon à Validé.

Après validation, la nomenclature est disponible dans les modules de fabrication (Factory, Ordres de fabrication natifs).

# 7.12 Ordres de fabrication avec Factory

### **Présentation du module Factory**

Le module Factory (module tiers développé par Charlene BENKE / patas-monkey.com) permet de gérer les Ordres de Fabrication (OF) dans Keatic ERP. Il s'intègre au menu GPAO et s'appuie sur les nomenclatures (BOM) pour déterminer les composants à consommer lors de la fabrication.

### **Prérequis**

<table id="bkmrk-moduleemplacementobl" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(44, 95, 138); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Module

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Emplacement

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Obligatoire

</th></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Produits</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Produits / Services</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Oui</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">BOM / Nomenclatures</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">GPAO</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Oui</span>

</td></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Stock</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Produits / Services</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Oui</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Factory</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">GPAO (module tiers)</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Oui</span>

</td></tr></tbody></table>

L'utilisateur doit disposer des permissions Factory (Lire, Créer OF) ainsi que des permissions Produits et BOM.

### **Créer un Ordre de Fabrication**

##### **Accéder au formulaire**

Deux méthodes sont possibles :

- <span style="white-space: pre-wrap;">Depuis le menu Factory : </span>***accédez à GPAO &gt; Factory***. La page affiche directement le formulaire Nouvel Ordre de Fabrication.
- Depuis la fiche produit : ouvrez la fiche du produit à fabriquer, cliquez sur l'onglet Factory, puis sur le sous-onglet Ordre de Fabrication (OF).

##### **Renseigner le formulaire**

Le formulaire de création comporte les champs suivants :

<table id="bkmrk-champdescriptionboml" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 253px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(44, 95, 138); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">**Champ**

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">**Description**

</th></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">BOMList</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Liste déroulante des BOM validées. Format affiché : Réf BOM / Réf Produit</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Produits</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Liste déroulante des produits ayant une composition Factory ou une BOM validée</span>

</td></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Entrepôt</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Entrepôt de destination des produits fabriqués</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Quantité à produire</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Nombre d'unités à fabriquer</span>

</td></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Date de début planifiée</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Date prévue de début de fabrication</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Date de fin planifiée</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Date prévue de fin de fabrication</span>

</td></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Durée planifiée</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Durée estimée de fabrication (heures : minutes)</span>

</td></tr></tbody></table>

1. Sélectionnez la BOM correspondant au produit à fabriquer.
2. Sélectionnez le produit fini dans la liste.
3. Choisissez l'entrepôt de destination.
4. Saisissez la quantité à produire.
5. Renseignez les dates de début et de fin planifiées.

### **Vérifier les quantités en stock**

Avant de créer l'OF, cliquez sur le bouton Vérifier les quantités nécessaires à la Fabrication dans l'entrepôt. Cette action :

- Redirige vers la fiche produit, onglet Factory.
- Affiche un récapitulatif des stocks disponibles pour chaque composant dans l'entrepôt choisi.
- Permet d'ajuster la quantité ou l'entrepôt si nécessaire.

### **Confirmer la création**

Après vérification, cliquez sur Créer l'Ordre de Fabrication. L'OF est créé en statut Brouillon. Les informations de l'OF créé sont visibles dans l'onglet OF En cours de la fiche produit :

<table id="bkmrk-informationexempler%C3%A9" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col></col><col></col></colgroup><tbody><tr style="background-color: rgb(44, 95, 138); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Information

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Exemple

</th></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Référence OF</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">OF2606-00001 (format : OFmmaa-nnnnn)</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Entrepôt</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">B7</span>

</td></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Quantité planifiée</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">5</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Date début</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">22/06/2026</span>

</td></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Date fin</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">22/06/2026</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">État</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Brouillon</span>

</td></tr></tbody></table>

### **Cycle de vie d'un OF**

Un Ordre de Fabrication passe par les étapes suivantes :

<table id="bkmrk-%C3%89tapeactionr%C3%A9sultat1" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 208px;"></col><col style="width: 212px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(44, 95, 138); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Étape

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Action

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Résultat

</th></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">1. Brouillon</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">L'OF est créé</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Modifiable, non engageant</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">2. Validé</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Cliquer sur Valider</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">L'OF est activé, la fabrication peut commencer</span>

</td></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">3. En production</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Lancer la production</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Les composants sont consommés depuis l'entrepôt</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">4. Clos</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Clore l'OF</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">La fabrication est terminée, le produit fini est en stock</span>

</td></tr></tbody></table>

<p class="callout success">**Astuce :** Un OF en Brouillon peut être supprimé sans conséquence. Une fois validé, il engage les stocks et doit être clos proprement.</p>

### **Flux complet BOM → OF**

Le processus complet de la nomenclature à la fabrication suit ce flux :

1. Créer les produits : produit fini (Manufacturé) et composants (Matière première).
2. Créer la BOM : lier le produit fini à ses composants avec les quantités.
3. Valider la BOM : étape obligatoire pour rendre la BOM disponible dans Factory.
4. Créer l'OF via Factory : sélectionner la BOM, le produit, l'entrepôt et la quantité.
5. Vérifier les stocks : s'assurer que les composants sont disponibles.
6. Valider et lancer l'OF : consommer les composants et produire le produit fini.
7. Clore l'OF : terminer la fabrication.

##### **Important**

Points de vigilance :

- Toujours valider la BOM avant de créer un OF — une BOM en brouillon n'apparaît pas dans Factory.
- Vérifier la nature de produit : Manufacturé pour le produit fini, Matière première pour les composants.
- Contrôler les stocks des composants dans l'entrepôt choisi avant de lancer la fabrication.

### **Sous-onglets Factory sur la fiche produit**

Lorsque le module Factory est activé, un onglet Factory apparaît sur la fiche de chaque produit. Il contient les sous-onglets suivants :

<table id="bkmrk-sous-ongletdescripti" style="border-collapse: collapse; width: 100%; font-family: Consolas, monospace; font-size: 14px;"><colgroup><col style="width: 223px;"></col><col></col></colgroup><tbody><tr style="background-color: rgb(44, 95, 138); color: rgb(255, 255, 255);"><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Sous-onglet

</th><th class="align-left" style="border: 1px solid rgb(153, 153, 153); padding: 8px; text-align: left;">Description

</th></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Composition</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Affiche les composants liés au produit (composition Factory native). Le badge indique le nombre de composants (ex. : 0 / 1)</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Fabrication Directe</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Permet de lancer une fabrication sans passer par un OF formel</span>

</td></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Ordre de Fabrication (OF)</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Formulaire de création d'un nouvel OF pour ce produit</span>

</td></tr><tr style="background-color: rgb(255, 255, 255);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">OF En cours</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Liste des OF en cours pour ce produit, avec état et quantités</span>

</td></tr><tr style="background-color: rgb(234, 242, 248);"><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Historique des OF</span>

</td><td style="border: 1px solid rgb(153, 153, 153); padding: 8px;"><span style="color: rgb(0, 0, 0);">Historique complet de tous les OF passés pour ce produit</span>

</td></tr></tbody></table>