# InfraSDiscount

<span>Saisie de remises pour </span>**Dolibarr**

# 1. PRÉSENTATION DU MODULE

# Présentation du module

![InfraSDiscount.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/cFjwpLUHfgWNpPj4-infrasdiscount.png)***InfraSMultiDiscount***<span style="white-space: pre-wrap;"> est un module optionnel pour Dolibarr ERP &amp; CRM qui simplifie et améliore considérablement la gestion des remises commerciales.</span>

Le module permet :

- La saisie de remises en pourcentage ou en valeur monétaire
- L'application de remises en cascade sur le total du document
- Le calcul dynamique des remises lors de toute modification du document
- La gestion des remises différenciées entre produits et services
- Le respect de la cohérence des marges commerciales
- La gestion des remises en devises étrangères
- L'application automatique de remises selon des règles prédéfinies

#### **DOCUMENTS COMPATIBLES :**

- Devis commerciaux (propositions)
- Commandes clients
- Factures clients

#### **LICENCE :**

Ce module est distribué sous licence GNU General Public License v3+ ou supérieure. Voir le fichier LICENSE pour plus d'informations.

# 10. DÉPANNAGE

# Dépannage

#### **1.LES REMISES N'APPARAISSENT PAS**

**Vérifications :**

- [x] Le module est bien activé (Configuration &gt; Modules)
- [x] Les permissions "use" sont accordées à l'utilisateur
- [x] Les remises sont activées pour le type de document (Configuration du module)
- [x] Le document est en mode "brouillon" (les remises ne peuvent pas être ajoutées sur un document validé)

#### **2.LES MONTANTS NE SE RECALCULENT PAS**

**Causes possibles :**

- Document n'est pas en mode brouillon
- Cache navigateur (rafraîchir avec Ctrl+F5)
- Erreur JavaScript (ouvrir la console développeur)

**Solution :**

1. Rafraîchir la page (Ctrl+F5)
2. Vérifier que le document est en brouillon
3. Si le problème persiste : modifiez manuellement la ligne de remise

#### **3.ERREUR APRÈS MISE À JOUR**

**Symptômes :**

- Erreurs lors de l'ouverture de documents
- Remises qui ne fonctionnent plus
- Champs manquants

**Solution :**

1. Allez dans Configuration &gt; Modules
2. Désactivez InfraSMultiDiscount
3. Réactivez immédiatement InfraSMultiDiscount
4. Videz le cache navigateur (Ctrl+F5)

Cette opération met à jour la base de données.

#### **4.LES MARGES SONT INCORRECTES**

**Vérifications :**

- [x] Les prix d'achat sont bien renseignés sur les fiches produits
- [x] Les articles comptables pour les remises sont correctement paramétrés
- [x] La répartition des remises respecte bien le type d'article (produit/service)

#### **5.REMISES AUTOMATIQUES NON APPLIQUÉES**

**Vérifications :**

- [x] La fonctionnalité est activée dans la configuration
- [x] Le nombre de commandes du client est inférieur à la limite paramétrée
- [x] Les références concernées sont bien sélectionnées dans la configuration
- [x] La commande a été validée (les remises auto s'appliquent à la validation)

#### **6. PROBLÈME DE COMPATIBILITÉ VERSION PHP**

Le module vérifie la version PHP requise :

- Version minimale : définie dans le changelog.xml
- Version maximale : définie dans le changelog.xml

**Si erreur :**

1. Vérifiez votre version PHP (**phpinfo()**)
2. Mettez à jour PHP si nécessaire
3. Ou téléchargez une version compatible du module

#### **7.PROBLÈME DE COMPATIBILITÉ DOLIBARR**

<span style="white-space: pre-wrap;">Le module vérifie la version minimale de </span>***Dolibarr***<span style="white-space: pre-wrap;"> requise.</span>

**Si le module se désactive automatiquement :**

1. <span style="white-space: pre-wrap;">Vérifiez votre version </span>***Dolibarr*** (**Accueil &gt; À propos**)
2. Mettez à jour **Dolibarr***<span style="white-space: pre-wrap;"> si nécessaire</span>
3. Ou téléchargez une version compatible du module

**Pour désactiver cette vérification (déconseillé) :**

1. <span style="white-space: pre-wrap;">Ajoutez la constante </span>**INFRASDISCOUNT\_DISABLE\_CHECK\_VERSION\_MIN**<span style="white-space: pre-wrap;"> = 1</span>
2. <span style="white-space: pre-wrap;">Dans </span>**Configuration &gt; Autres &gt; Dictionnaires**

#### **8.ERREUR XML MANQUANTE**

**Erreur :**<span style="white-space: pre-wrap;"> "InfraSDiscountChangelogXMLError"</span>

**Cause :**<span style="white-space: pre-wrap;"> Extension PHP XML non installée</span>

**Solution :**

1. Installez l'extension PHP XML  
    <span style="white-space: pre-wrap;">Sur Debian/Ubuntu : </span>`<span class="editor-theme-code">sudo apt-get install php-xml</span>`  
    <span style="white-space: pre-wrap;">Sur Red Hat/CentOS : </span>`<span class="editor-theme-code">sudo yum install php-xml</span>`
2. Redémarrez le serveur web
3. Réactivez le module

---

# 11. SUPPORT ET AIDE

# Support et Aide

#### **DOCUMENTATION**

**Le wiki contient :**

- Tutoriels vidéo
- Exemples d'utilisation
- FAQ détaillée
- Notes de version

#### **CHANGELOG**

Pour consulter l'historique des modifications :  
<span style="white-space: pre-wrap;">Menu : </span>***Outils &gt; InfraS &gt; InfraSDiscount &gt; Changelog***

**Le changelog détaille :**

- Les nouvelles fonctionnalités
- Les corrections de bugs
- Les modifications de compatibilité
- Les instructions de mise à jour

#### **SUPPORT TECHNIQUE**

Pour toute question ou problème :

**Email :**<span style="white-space: pre-wrap;"> </span>[support@infras.fr](https://infras.store/ticket/new?prefill=1&module=infrasmultidiscount)  
**Site web :**<span style="white-space: pre-wrap;"> </span>[https://www.infras.fr/](https://www.infras.fr/)

Avant de contacter le support, préparez :

- <span style="white-space: pre-wrap;">Version de </span>***Dolibarr** utilisée
- <span style="white-space: pre-wrap;">Version du module </span>***InfraSMultiDiscount***
- Version de PHP
- Description détaillée du problème
- Captures d'écran si possible
- Messages d'erreur éventuels

#### **SIGNALER UN BUG**

Pour signaler un bug :

1. Vérifiez que vous utilisez la dernière version du module
2. Consultez le changelog pour voir si le bug est corrigé
3. Contactez le support avec :
    - Étapes détaillées pour reproduire le bug
    - Comportement attendu vs comportement constaté
    - Environnement technique (versions)
    - Logs d'erreur (**htdocs/documents/dolibarr.log**)

#### **DEMANDER UNE FONCTIONNALITÉ**

**Pour suggérer une amélioration :**

1. Vérifiez qu'elle n'existe pas déjà dans une version récente
2. Contactez support@infras.fr avec :
    - Description détaillée de la fonctionnalité souhaitée
    - Cas d'usage concret

#### **MISE À JOUR**

Le module vérifie automatiquement les mises à jour disponibles.

**Pour mettre à jour :**

1. <span style="white-space: pre-wrap;">Téléchargez la nouvelle version depuis le site </span>***InfraS***
2. Sauvegardez votre base de données (précaution)
3. Remplacez le dossier du module
4. **IMPORTANT :**<span style="white-space: pre-wrap;"> Désactivez puis réactivez le module</span>
5. Testez sur un document de test

**URL de vérification des mises à jour :** [https://www.infras.fr/jdownloads/Modules\_Dolibarr/infrasdiscount/infrasdiscount.txt](https://www.infras.fr/jdownloads/Modules_Dolibarr/infrasdiscount/infrasdiscount.txt)

---

# 12. EXEMPLES D'UTILISATION

# Exemples d'Utilisation

### <span style="white-space: pre-wrap;">Exemple 1 : </span>**Devis avec remise en cascade**

**Contexte :**<span style="white-space: pre-wrap;"> Proposer une remise exceptionnelle</span>

```
Document : Devis

Lignes :
- Produit A : 10 × 50 € = 500 € HT
- Produit B : 5 × 100 € = 500 € HT
Sous-total : 1000 € HT

Remises InfraS :
- Remise commerciale : -10% sur tout → -100 € HT
- Remise fidélité : -5% sur tout → -45 € HT (5% de 900 €)

Total HT : 855 € HT
Total remises : 145 € (14,5%)
```

### <span style="white-space: pre-wrap;">Exemple 2 : </span>**Facture avec remise fixe**

**Contexte :**<span style="white-space: pre-wrap;"> Arrondir le total à un montant commercial</span>

```
Document : Facture

Lignes :
- Service consulting : 8h × 75 € = 600 € HT (TVA 20%)
- Produit logiciel : 1 × 250 € = 250 € HT (TVA 20%)
Sous-total : 850 € HT
Total TTC : 1020 € TTC

Objectif : Proposer à 1000 € TTC

Remise InfraS :
- Remise commerciale : -16,67 € HT (calculée pour atteindre 1000 € TTC)

Total HT : 833,33 € HT
Total TTC : 1000 € TTC
```

### <span style="white-space: pre-wrap;">Exemple 3 : </span>**Commande avec remise automatique**

```
Configuration :
- Limite : 3 premières commandes
- Quantité gratuite : 100 unités
- Références : Réf001, Réf002
- Pondérateur : aucun

Commande d'un nouveau client (1ère commande) :
- Réf001 : 50 unités à 2 € = 100 € HT
- Réf002 : 150 unités à 1 € = 150 € HT
- Autres produits : 200 € HT
Sous-total : 450 € HT

Remises automatiques appliquées :
- Réf001 : 50 × 2 € = 100 € (quantité < 100)
- Réf002 : 100 × 1 € = 100 € (quantité ≥ 100)
Total remises auto : 200 € HT

Total HT : 250 € HT
```

### <span style="white-space: pre-wrap;">Exemple 4 : </span>**Devis complexe avec remises mixtes**

**Contexte :**<span style="white-space: pre-wrap;"> Projet avec produits et services, client négociateur</span>

```
Document : Devis

Lignes produits :
- Matériel A : 2000 € HT (TVA 20%)
- Matériel B : 1000 € HT (TVA 20%)
Sous-total produits : 3000 € HT

Lignes services :
- Installation : 500 € HT (TVA 20%)
- Formation : 300 € HT (TVA 20%)
Sous-total services : 800 € HT

Total initial : 3800 € HT / 4560 € TTC

Négociation :
1. Remise générale : -10% sur tout → -380 € HT
   Nouveau total : 3420 € HT

2. Remise spéciale matériel : -5% sur produits uniquement → -142,50 € HT
   (5% de 2850 € = sous-total produits après 1ère remise)
   Nouveau total : 3277,50 € HT

3. Remise fixe finale : -77,50 € HT pour atteindre 3200 € HT rond
   Répartition :
   - Sur produits : -77,50 × (2707,50/3277,50) = -64 € HT
   - Sur services : -77,50 × (570/3277,50) = -13,50 € HT

Total final : 3200 € HT / 3840 € TTC
Économie client : 600 € HT (15,8%)
```

---

---

**Copyright © 2016-2026 InfraS - Sylvain Legrand &amp; Lucky Ranasolonirina**  
support@infras.fr | www.infras.fr | wiki.infras.fr

# 2. INSTALLATION ET ACTIVATION

# Installation et Activation

#### **INSTALLATION**

#####  ***Méthode recommandée :***

1. <span style="white-space: pre-wrap;">Utilisez l'outil de déploiement des modules externes de </span>***Dolibarr***
2. Téléchargez le module depuis le site InfraS
3. Installez via l'interface de gestion des modules

#####  ***Méthode manuelle :***

1. <span style="white-space: pre-wrap;">Placez le dossier </span>`<span class="editor-theme-code">infrasdiscount</span>`<span style="white-space: pre-wrap;"> dans le répertoire </span>`<span class="editor-theme-code">htdocs/custom/</span>`
2. <span style="white-space: pre-wrap;">Accédez à </span>**Accueil &gt; Configuration &gt; Modules**

#### **ACTIVATION**

1. <span style="white-space: pre-wrap;">Allez dans </span>**Accueil &gt; Configuration &gt; Modules**
2. Recherchez "***InfraSMultiDiscount***"
3. Cliquez sur le bouton "Activer"
4. Le module ajoute automatiquement :
    - Les extra Fields nécessaires aux lignes de documents
    - Les constantes de configuration
    - Les permissions utilisateur
    - Les entrées de menu

#### **APRÈS MISE À JOUR**

<p class="callout warning">**IMPORTANT :**<span style="white-space: pre-wrap;"> Après toute mise à jour du module, il est IMPÉRATIF de :</span></p>

1. Désactiver le module
2. Réactiver immédiatement le module**.**

**Cela permet d'appliquer les modifications nécessaires à la base de données**

---

# 3. CONFIGURATION DU MODULE

# Configuration du Module

**Accès à la configuration :**  
<span style="white-space: pre-wrap;">Menu </span>**Outils &gt; InfraS &gt; InfraSDiscount &gt; Paramètres**

[![discount.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/ULns3hjG55j3Ml19-discount.png)](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/ULns3hjG55j3Ml19-discount.png)

#### **1.PARAMÈTRES D'ACTIVATION PAR TYPE DE DOCUMENT**

- - ***DEVIS (PROPOSITIONS COMMERCIALES) : \[Ligne 1\]***

- - - [x] Activer les remises pour les devis
        - [x] Libellé par défaut (Saisir un libellé ou une clé de traduction)

- - ***COMMANDES CLIENTS : \[Ligne 2\]***

- - - [x] Activer les remises pour les commandes clients
        - [x] Libellé par défaut (Saisir un libellé ou une clé de traduction)

- - ***FACTURES CLIENTS : \[Ligne 5\]***

- - - [x] Activer les remises pour les factures
        - [x] Libellé par défaut (Saisir un libellé ou une clé de traduction)

#### **2.ASSOCIATION COMPTABLE**

Pour une gestion comptable correcte, associez :

***CHOIX DU "SERVICE" ASSOCIÉE AUX REMISES : \[Ligne 7\]***

\[**Sélectionner un service**\]

→ Permet de lier un compte comptable spécifique aux remises sur services

***CHOIX DU "PRODUIT" ASSOCIÉS SUR PRODUITS : \[Ligne 8\]***

\[S**électionner un produit**\]

→ Permet de lier un compte comptable spécifique aux remises sur produits

---

# 4. FONCTIONNALITÉS PRINCIPALES

# Fonctionnalités Principales

#### **1.TYPES DE REMISES DISPONIBLES**

<span style="white-space: pre-wrap;"> </span>***REMISES EN POURCENTAGE :***

- - S'appliquent sur le montant total du document
    - Cumulables et appliquées en cascade (ex: 10% puis 5%)
    - Recalculées automatiquement lors de toute modification
    - Peuvent cibler : produits seuls, services seuls, ou les deux

 **Exemple de remises en cascade :**

```
Montant HT initial : 1000 €
Remise 1 : -10% → 1000 - 100 = 900 €
Remise 2 : -5% → 900 - 45 = 855 €
Total remises : 145 € (14,5% du montant initial)
```

 **REMISES EN VALEUR (MONÉTAIRE) :**

- - Montant fixe déduit du total
    - Réparties équitablement entre produits et services (au prorata)
    - Le module préserve la cohérence des calculs de marge
    - Le module est compatible avec le système multidevises

 ***REMISES PAR VALEUR CIBLE :***

- - Définissez un montant TTC cible à atteindre
    - Le module calcule automatiquement les remises nécessaires
    - Répartition équitable par taux de TVA
    - Le module préserve la cohérence des marges

#### **2.CALCUL DYNAMIQUE**

**Les remises en pourcentage sont DYNAMIQUES :**

- Ajout d'une ligne → recalcul automatique
- Suppression d'une ligne → recalcul automatique
- Modification de quantité → recalcul automatique
- Modification de prix → recalcul automatique

#### **3.APPLICATION SÉLECTIVE**

Vous pouvez appliquer les remises :

- [x] Sur les produits uniquement
- [x] Sur les services uniquement
- [x] Sur les deux types d'articles

#### **4.GESTION DES MARGES**

Le module préserve la cohérence des marges commerciales :

- Les remises monétaires sont réparties au prorata
- Les marges restent correctement calculées par ligne
- Les rapports de marge restent exploitables

---

# 5. UTILISATION DU MODULE

# Utilisation du Module

#### **1.AJOUTER UNE REMISE EN POURCENTAGE**

1. Ouvrez un devis, commande ou facture (en mode brouillon)
2. Ajoutez vos lignes de produits/services
3. Cliquez sur le bouton "Remise "
4. Sélectionnez "un pourcentage de remise"
5. Saisissez le pourcentage (ex: 10 pour 10%)
6. Choisissez l'application :
    - Sur les produits uniquement
    - Sur les services uniquement
    - Sur les deux
7. Saisissez un libellé descriptif
8. Validez[![6.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/BMezfMoW8i3kGY31-6.png)](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/BMezfMoW8i3kGY31-6.png)

<p class="callout info">**Remarque :**<span style="white-space: pre-wrap;"> La ligne de remise apparaît dans le document avec un montant négatif. Le total du document est automatiquement mis à jour.</span></p>

#### **2.AJOUTER UNE REMISE EN VALEUR**

1. Ouvrez un devis, commande ou facture (en mode brouillon)
2. Cliquez sur "Remise"
3. Sélectionnez "un montant fixe de remise"
4. Saisissez le montant HT de la remise
5. <span style="white-space: pre-wrap;">Si le module </span>**multidevises** est activé : choisissez la devise
6. Saisissez un libellé descriptif
7. Validez[![9_valeurShow.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/yQ76kVSLE5jrxi2Q-9-valeurshow.png)](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/yQ76kVSLE5jrxi2Q-9-valeurshow.png)

La remise est répartie proportionnellement entre produits et services.

#### **3.UTILISER UNE VALEUR CIBLE**

Utile pour proposer un prix rond ou respecter un budget client.

1. Ouvrez votre document (brouillon)
2. Cliquez sur "<span style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);">un montant total TTC à atteindre</span>"
3. Saisissez le montant TTC souhaité[![10-cible.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/yBrUGYW7qf2QCvXr-10-cible.png)](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/yBrUGYW7qf2QCvXr-10-cible.png)
4. Le module calcule et applique automatiquement les remises nécessaires
5. Les remises sont réparties par taux de TVA pour préserver les marges

![11-cibleShow.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/ZGyKLXiIq9BKDshE-11-cibleshow.png)**Exemple :**

```
Total document : 1247,83 € TTC
Valeur cible : 1200,00 € TTC
→ Le module applique automatiquement 47,83 € de remise
```

#### **4.MODIFIER UNE REMISE**

Les remises InfraS sont modifiables comme des lignes normales :

1. Cliquez sur l'icône "Modifier" de la ligne de remise
2. Modifiez le pourcentage ou le montant
3. Modifiez le libellé si nécessaire
4. Enregistrez

Le document est automatiquement recalculé.

#### **5.SUPPRIMER UNE REMISE**

1. Cliquez sur l'icône "Supprimer" de la ligne de remise
2. Confirmez la suppression
3. Le document est automatiquement recalculé

#### **6.REMISES MULTIPLES**

Vous pouvez cumuler plusieurs types de remises :

- Plusieurs remises en pourcentage (appliquées en cascade)
- Mélanger remises en pourcentage et en valeur
- Chaque remise peut cibler des types d'articles différents

**Exemple d'utilisation avancée :**

```
Ligne 1 : Produits pour 1000 € HT
Ligne 2 : Services pour 500 € HT
Remise 1 : -10% sur tout (cascade) → -150 € HT
Remise 2 : -5% sur produits uniquement (cascade) → -47,50 € HT
Remise 3 : -50 € fixe sur services → -50 € HT
Total HT : 1252,50 €
```

[![12.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/0ESXRLpiBK66xwcF-12.png)](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/0ESXRLpiBK66xwcF-12.png)

---

# 6. REMISES AUTOMATIQUES

# Remises Automatiques

<p class="callout info">**Note :**<span style="white-space: pre-wrap;"> Les remises automatiques sont disponibles </span>**UNIQUEMENT**<span style="white-space: pre-wrap;"> pour les </span>**COMMANDES CLIENTS**. Cette fonctionnalité permet d'appliquer automatiquement des remises selon des règles prédéfinies.</p>

#### **1.CONFIGURATION DES REMISES AUTOMATIQUES**

**Menu :**<span style="white-space: pre-wrap;"> Outils &gt; InfraS &gt; InfraSDiscount &gt; Paramètres (section Remises Auto)</span>[![4.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/G6BWijgiWDpYfn6r-4.png)](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/G6BWijgiWDpYfn6r-4.png)

 **NOMBRE DE COMMANDES CONCERNÉES : \[Ligne 1\]***

- - - [ ] Limiter aux X premières commandes validées du client

<span style="white-space: pre-wrap;"> → Permet d'offrir des remises uniquement aux nouveaux clients ou pour les fidéliser sur les premières commandes</span>

 **QUANTITÉ DE PRODUITS GRATUITS PAR RÉFÉRENCE : \[Ligne 2\]***

 **Règle de calcul :**

- - - Si quantité commandée &lt; cette valeur  
            → **Remise = Quantité commandée × Prix Unitaire**
        - Si quantité commandée ≥ cette valeur  
            <span style="white-space: pre-wrap;">→ </span>**Remise = Cette valeur × Prix Unitaire**

 **Exemple :**

```
Quantité gratuite paramétrée : 100 unités
Commande de 50 unités à 2 € → Remise de 50 × 2 = 100 €
Commande de 250 unités à 2 € → Remise de 100 × 2 = 200 €
```

 **RÉFÉRENCES CONCERNÉES : \[Ligne 3\]***

- - - [ ] <span style="white-space: pre-wrap;">Sélectionner les produits/services concernés </span>

 **ARTICLE PONDÉRATEUR (OPTIONNEL) : \[Ligne 4\]***

 **Rôle du pondérateur :**

- - - Cet article sert de référence pour moduler les remises des autres produits
        - La remise pour cet article s'applique normalement
        - Pour les autres références, la quantité gratuite est ajustée :  
            Quantité gratuite ajustée = Quantité gratuite paramètre - Quantité du pondérateur

 **Exemple complexe :**

```
Article pondérateur : Référence A, quantité commandée : 250
Quantité gratuite paramètre : 650

Pour la Référence A :
  Quantité < 650 → Remise = 250 × PU

Pour les autres références :
  Quantité gratuite ajustée = 650 - 250 = 400
  Référence B : 10000 unités commandées à 0,50 €
  → Remise = 400 × 0,50 = 200 €
```

 ***TEXTE ADDITIONNEL DANS LA DESCRIPTION : \[Ligne 5\]***

<span style="white-space: pre-wrap;"> → Texte ajouté automatiquement dans le libellé de la remise automatique (utile pour mentions légales ou communications commerciales)</span>

#### **2.FONCTIONNEMENT DES REMISES AUTOMATIQUES**

1. Un client passe une commande
2. Le module vérifie si c'est une des X premières commandes du client
3. Si oui, il analyse les lignes de commande
4. Pour chaque référence sélectionnée :
    - Le module calcule la remise selon les règles définies
    - Le module applique la pondération si un article pondérateur est défini
5. Le module ajoute automatiquement les lignes de remise à la commande
6. Le module ajoute le texte descriptif paramétré[![5.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/xMxi24Y8Ycfvpkms-5.png)](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/xMxi24Y8Ycfvpkms-5.png)

<p class="callout success">**IMPORTANT :**<span style="white-space: pre-wrap;"> Les remises automatiques sont appliquées à la validation de la commande. Elles restent modifiables manuellement après application.</span></p>

---

# 7. GESTION DES MARGES

# Gestion des Marges

<span style="white-space: pre-wrap;">Le module </span>***InfraSMultiDiscount** a été conçu pour préserver la cohérence des calculs de marge commerciale.

#### **1.PRINCIPE**

Dans Dolibarr, la marge est calculée ligne par ligne :

**Marge = Prix de vente HT - Prix d'achat HT**

Avec des remises globales, il est crucial de bien répartir le montant de la remise pour que chaque ligne conserve une marge cohérente.

#### **2.RÉPARTITION DES REMISES MONÉTAIRES**

Les remises en valeur fixe sont réparties au PRORATA du montant HT de chaque ligne.

**Exemple :**

```
Total document : 1000 € HT
  - Ligne 1 (produit) : 800 € HT
  - Ligne 2 (service) : 200 € HT
Remise de 100 € HT en valeur

Répartition :
  - Ligne 1 : 100 × (800/1000) = 80 € de remise
  - Ligne 2 : 100 × (200/1000) = 20 € de remise

Chaque ligne conserve ainsi son ratio de marge d'origine.
```

[![3.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/ZrMGNlTvzMoDKUvh-3.png)](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/ZrMGNlTvzMoDKUvh-3.png)

#### **3.DISTINCTION PRODUITS/SERVICES**

Pour une précision comptable maximale, le module permet de :

- Associer des articles comptables différents pour les remises sur les produits et les services
- Calculer des remises sur les produits uniquement
- Calculer des remises sur les services uniquement

<p class="callout success">**Avantages :**</p>

- Comptes comptables corrects
- Marges analysables par catégorie
- Reporting plus précis

#### **4.CONSULTATION DES MARGES**

Après application des remises InfraS :

1. Les marges ligne par ligne restent correctes
2. Le rapport de marge global du document est cohérent
3. Les statistiques de marge par client sont exploitables
4. Les analyses de rentabilité sont fiables

# 8. MULTI-DEVISES

# Multi-Devises

<span style="white-space: pre-wrap;">Si le module natif </span>**Multi-Devises**<span style="white-space: pre-wrap;"> de </span>***Dolibarr*** <span style="white-space: pre-wrap;">est activé, </span>***InfraSMultiDiscount*** est compatible et permet la saisie de remises en devises étrangères.

#### **1.ACTIVATION**

1. <span style="white-space: pre-wrap;">Activez le module natif "Multi-Devises" de </span>***Dolibarr***
2. Configurez les devises et taux de change
3. ***InfraSMultiDiscount***<span style="white-space: pre-wrap;"> détecte automatiquement la fonctionnalité</span>

#### **2.UTILISATION**

Pour un document en devise étrangère :

1. Créez votre document (devis/commande/facture) en devise étrangère
2. Ajoutez vos lignes
3. Ajoutez une remise InfraS :
    - Remise en pourcentage : Le calcul se fait en pourcentage
    - Remise en valeur : saisissez le montant dans la devise du document[![1.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/kXkBakvlAdxMD0ap-1.png)](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/kXkBakvlAdxMD0ap-1.png)
4. Les calculs de conversion sont automatiques[![2.png](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/1NOFrvIRsZh31jET-2.png)](https://wiki.infras.fr/uploads/images/gallery/2026-02/scaled-1680-/1NOFrvIRsZh31jET-2.png)

#### **3.PARTICULARITÉS**

- Les remises en pourcentage : aucune différence, le % s'applique quelle que soit la devise
- Les remises en valeur : le montant est dans la devise du document
- <span style="white-space: pre-wrap;">Les taux de change sont ceux définis dans </span>***Dolibarr***<span style="white-space: pre-wrap;"> au moment de la création du document</span>
- Les factures générées depuis des commandes en devise étrangère conservent les remises InfraS dans la devise du document

# 9. PERMISSIONS

# Permissions

<span style="white-space: pre-wrap;">Le module </span>***InfraSMultiDiscount*** gère 4 niveaux de permissions.

#### **1.LISTE DE PERMISSIONS**

<table id="bkmrk-permissioncodepar-d%C3%A9"><colgroup><col style="width: 194px;"></col><col style="width: 157px;"></col><col style="width: 103px;"></col><col></col></colgroup><tbody><tr style="height: 35px; background-color: rgb(61, 156, 220); color: rgb(255, 255, 255);"><th>Permission

</th><th>Code

</th><th>Par défaut

</th><th>Description

</th></tr><tr><td>**Accès au menu**

</td><td>paramMenu

</td><td>OUI

</td><td>Voir les menus InfraS &gt; InfraSDiscount

</td></tr><tr><td>**Paramètres spécifiques**

</td><td>paramInfrasdiscount

</td><td>NON

</td><td>Accéder à la configuration avancée du module

</td></tr><tr><td>**Sauvegarde/Restauration**

</td><td>paramBkpRest

</td><td>NON

</td><td>Sauvegarder et restaurer la configuration du module

</td></tr><tr><td>**Utilisation des remises**

</td><td>use

</td><td>NON

</td><td>Ajouter, modifier, supprimer des remises InfraS dans les documents

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

#### **2.CONFIGURATION DES PERMISSIONS**

1. <span style="white-space: pre-wrap;">Allez dans </span>**Accueil &gt; Utilisateurs &amp; Groupes**
2. Sélectionnez un utilisateur ou un groupe
3. Onglet "**Permissions**"
4. Cherchez "InfraSDiscount" dans la liste
5. Cochez les permissions souhaitées
6. Enregistrez

#### **3.RECOMMANDATIONS**

 ***Profil administrateur :***

- - - [x] Accès au menu
        - [x] Paramètres spécifiques
        - [x] Sauvegarde/Restauration
        - [x] Utilisation des remises

 ***Profil commercial :***

- - - [x] Accès au menu (optionnel)
        - [ ] Paramètres spécifiques
        - [ ] Sauvegarde/Restauration
        - [x] Utilisation des remises

 ***Profil consultation :***

- - - [x] Accès au menu (pour voir les rapports)
        - [ ] Paramètres spécifiques
        - [ ] Sauvegarde/Restauration
        - [ ] Utilisation des remises

---