Guide Dolibarr V24 Dolibarr the Book 01. NOUVEAUTÉ POUR LES UTILISATEURS ET LES DEVELOPPEURS. 1.1 Compatibilité – Mise à jour des librairies INTRODUCTION : La vingt-huitième édition de ce livre paraît, alors que la réputation de Dolibarr™ est déjà bien établie. Vingt-quatre ans après les premières lignes de code réalisées par Rodolphe Quiédeville, sous la conduite de Laurent Destailleur et avec l’aide de nombreux contributeurs, l’ERP/CRM Dolibarr™ est devenu un incontournable dans le monde du logiciel Open Source. La session 2026 qui a eu lieu à Noisy-Le-Grand (France – Seine-Saint-Denis) a permis aux développeurs de Dolibarr™ de se retrouver physiquement pour s’imprégner des dernières fonctionnalités de la version 24, présentées par Laurent Destailleur (Aka eldy), qui a mis en valeur les points suivants : Plus de 170 nouvelles fonctionnalités signalées par le fichier ChangeLog, dont une trentaine pour les développeurs. LIGNES DE CODE : Soit près de 2 millions de lignes de code, incluant 40 % de dépendances. +6 500 ÉTOILES GITHUB COMPATIBILITÉ - MISE À JOUR DES LIBRAIRIES Compatible avec les versions PHP >= 7.2 et <= 8.4.* (8.5 ?) Déplacement des librairies JavaScript dans htdocs/public/includes (au lieu de htdocs/includes) pour mieux séparer les ressources publiques des ressources internes. Suppression du modèle PDF « crabe » (legacy) : ce vieux modèle de facture n’est plus proposé. Suppression de la librairie JavaScript jeditable (édition inline non utilisée par le core Dolibarr). La dette technique a une nouvelle fois fortement diminué : Phan : 39 935 (v18) → 3 410 (v22) → 1 812 (v23) → 494 (v24) PHPStan : 915 (v22) → 760 (v23) → 190 (v24) QUALITÉ DU CODE Poursuite de l’effort sur les tests PHPUnit pour la sécurité, les fonctions de date et la vérification des mauvaises pratiques. Le cron déverrouille automatiquement les tâches bloquées après un arrêt inattendu du serveur. La debugbar capture maintenant la backtrace lors des échecs de requêtes SQL, facilitant le diagnostic. Le compteur d’impression est maintenant calculé de façon synchrone dans documents.php et receipt.php. PERFORMANCES Mode d’import CSV/XLSX avec désactivation des triggers : option pour importer des données sans déclencher les automatismes, idéal pour les migrations massives de données. Les chaînes de caractères sont automatiquement nettoyées (trim) lors de l’import : les espaces en début et fin de chaque valeur sont supprimés. Simplification du processus d’import en supprimant certaines étapes redondantes. Refonte visuelle de l’outil d’import/export (look and feel v24) : interface plus moderne et plus claire. ASTUCE : Rappel pour les développeurs : la désactivation des triggers lors de l’import est utile pour les migrations de données volumineuses. Attention à réactiver les triggers ensuite pour que les automatismes fonctionnent normalement. 1.2 Sécurité Restriction IP par plage CIDR : il est désormais possible de limiter l’accès à Dolibarr à des plages d’adresses IP spécifiques (ex : 192.168.1.0/24), plutôt que seulement à des adresses IP uniques. Le niveau de protection CSRF passe de 2 à 3 ( MAIN_SECURITY_CSRF_WITH_TOKEN ), renforçant la vérification des tokens anti-falsification sur les formulaires. L’option MAIN_DISALLOW_UNSECURED_SELECT_INTO_EXTRAFIELDS_FILTER est activée par défaut et déplacée dans le fichier conf.php, bloquant les filtres non sécurisés sur les extrachamps et évitant des injections SQL potentielles. L’éditeur riche ( WYSIWYG ) est désactivé par défaut sur les pages publiques pour limiter les risques XSS sur les formulaires ouverts à l’extérieur. Début d’implémentation de MAIN_RESTRICTHTML_ONLY_VALID_HTML =2 pour bloquer les balises HTML dangereuses dans les zones de contenu riche. Amélioration des outils de vérification d’intégrité des fichiers Dolibarr (contrôle des checksums des fichiers du core). L’API de connexion (/login) est désactivée par défaut : l’API doit être utilisée avec un Bearer token (token API utilisateur). Pour réactiver les endpoints de login, ajouter API_ENABLE_LOGIN_API=1 dans la configuration. NOTE : Zone IA et vulnérabilités : l’intégration de l’IA dans Dolibarr nécessite une vigilance particulière sur les données transmises aux fournisseurs d’IA tiers. L’utilisateur du serveur MCP doit impérativement avoir des droits minimaux (lecture seule). 1.3 Apparence et ergonomie (v24) Fusion des deux étapes de création d’une intervention en un seul formulaire unifié, simplifiant l’expérience utilisateur. Le numéro de téléphone des tiers est affiché directement dans la liste des contrats. Les catégories affichent leur libellé court par défaut, le libellé complet étant disponible au survol (infobulle). Quand il n’y a qu’un seul modèle de document, la sélection de modèle n’est plus affichée lors de la création : le modèle est appliqué automatiquement. Glisser-déposer pour gérer l’ordre des lignes d’une expédition en brouillon. Prise en charge du format d’image AVIF (successeur du WebP, meilleure compression) pour les téléchargements d’images. Ajout d’une nouvelle icône de vue graphique à côté des icônes liste et kanban, pouvant remplacer le menu latéral « Statistiques ». Ajout d’un séparateur visuel entre les statuts Gagné/Perdu et les autres statuts d’opportunité dans les listes. Affichage du nom du tiers avec sa référence dans les blocs d’objets liés de tous les types de documents, pour une identification plus précise. Les interrupteurs on/off peuvent utiliser des couleurs personnalisées dans les pages de configuration. 1.4 Nouvelles fonctionnalités INTELLIGENCE ARTIFICIELLE ET SERVEUR MCP : Serveur MCP expérimental et assistant IA intégrés directement dans Dolibarr. MCP (Model Context Protocol) permet à Dolibarr d’exposer ses données à un assistant IA externe (tel que Claude Desktop), afin que celui-ci puisse interagir avec l’ERP en langage naturel. Vérification orthographique assistée par IA sur les zones de texte : une action IA peut relire et corriger automatiquement la rédaction d’un document ou d’un email. Les outils IA sont disponibles directement dans l’éditeur de messages des tickets. Figure 1.6 – Assistant IA intégré dans Dolibarr 24 — interrogation en langage naturel Figure 1.7 – Configuration du serveur MCP — accès externe et intégration Claude Desktop Astuce : Le serveur MCP expérimental ouvre la voie à une utilisation de Dolibarr en langage naturel : « Crée-moi un devis pour le client Dupont », « Donne-moi les factures impayées de ce mois », etc. COMPATIBILITÉ AVANCÉE : Bilan comparatif avec instantané de clôture : la balance comparative peut afficher un exercice clos comme référence, permettant de comparer l’exercice courant avec le bilan de clôture de l’exercice précédent. Système de multi-rapports comptables : il est possible de créer et de gérer plusieurs formats de rapports comptables différents. Modèles de transactions comptables : des gabarits d’écritures peuvent être définis pour saisir rapidement des opérations récurrentes. Lettrage sur le compte général : le rapprochement entre écritures peut se faire directement sur un compte comptable général (pas seulement sur le compte auxiliaire). Recherche AJAX sur les comptes auxiliaires dans la liste des écritures. Option de dissociation des ventes comptant : les ventes au comptant peuvent être comptabilisées séparément des ventes à crédit. TIERS ET CONTACTS : Ajout du champ numéro EUID (European Unique Identifier) sur les fiches tiers, l’identifiant européen unique des entreprises utilisé dans le registre des sociétés européen. Auto-création d’utilisateurs via OpenID Connect (OIDC) : si un utilisateur s’authentifie via un fournisseur OIDC et qu’il n’existe pas encore dans Dolibarr, son compte peut être créé automatiquement. Affichage du nom alias entre parenthèses dans les listes déroulantes de sélection de tiers. FACTURES ET PAIEMENTS : Envoi automatique de la facture générée depuis un modèle récurrent. Action de masse pour annuler des factures via avoir : depuis la liste des factures, il est possible de sélectionner plusieurs factures et de créer les avoirs correspondants. Sélecteur select2 multiselection pour le filtre de statut dans les listes de factures clients et fournisseurs. Affichage du total en devise secondaire sur les paiements. PORTAIL WEB ET INTERVENTIONS : Le Portail Web supporte maintenant les interventions et les tickets : les clients peuvent consulter et soumettre des tickets/interventions depuis le portail. Ajout des tags et catégories sur les interventions. Glisser-déposer de fichiers directement sur la fiche intervention. Génération de PDF pour les fiches de salaires : le module Salaires peut maintenant produire des bulletins en PDF. AUTRES NOUVEAUTÉS : Installation directe des modules communautaires et gratuits depuis le DoliStore en un clic, sans téléchargement manuel. - Module Transfert de stock stabilisé avec couverture fonctionnelle complète. - Possibilité de forcer un changement de mot de passe à la prochaine connexion. - Total consolidé sur les contrats et nouvelles statistiques sur les contrats. - Ajout de colonnes « Compte bancaire » dans les listes de factures clients et fournisseurs. 1.5 Nouveaux modules et modules dépréciés Nouveau module expérimental « Quick Memo » : permet de coller des post-it sur n’importe quelle page de Dolibarr, idéal pour laisser des notes contextuelles sur un écran particulier. Le module « Transfert de stock » passe du statut expérimental au statut stable avec une couverture fonctionnelle complète. Le modèle Fichinter (interventions) passe en version stable. Suppression du module « PayBox » (obsolète). Le module « Politique de confidentialité des données » (RGPD) continue d’évoluer avec une troisième étape : la colonne personal_data dans les extrachamps permet de marquer chaque champ comme « données personnelles » pour faciliter les procédures RGPD (droit à l’oubli, anonymisation). 1.6 Améliorations légales Modifications préparatoires pour être conforme à des lois plus strictes dans certains pays. Exemple pour la certification française « Loi de Finance » : Le module « Logs Inaltérables » passe en version 3.0.0 avec un algorithme de hachage v2 basé sur SHA-256/HMAC, renforçant considérablement la résistance aux falsifications du journal d’audit certifiable. Affichage de la valeur cumulée (lifetime amount) sur la liste des logs inaltérables pour vérifier en un coup d’œil la cohérence des montants enregistrés. Amélioration visuelle significative des pages de logs inaltérables (meilleure présentation, couleurs, navigation). Ajout de la colonne einvoice_vatex dans le dictionnaire de TVA : permet d’associer un code d’exemption TVA aux formats de facturation électronique (E-Invoice VATEX). - Ajout d’une section d’aide pour trouver les modules de facturation électronique (e-invoice) dans la page de configuration, selon le pays. - Ajout des cotisations sociales pour la Suisse. 1.7 Dolibarr 24.0 : IA, sécurité renforcée et maturité fonctionnelle La version 24.0 de Dolibarr™ marque un tournant dans l’évolution de cet ERP & CRM de référence pour les TPE, PME et associations. Cette version met l’accent sur l’intelligence artificielle, la sécurité et la maturité fonctionnelle des modules existants. Intelligence artificielle au cœur de l’ERP L’IA fait son entrée native dans Dolibarr avec le serveur MCP (Model Context Protocol) expérimental et l’assistant conversationnel intégré. Pour la première fois, un assistant IA externe comme Claude Desktop peut interagir avec les données Dolibarr en langage naturel : créer des devis, consulter des factures, analyser des tendances. La vérification orthographique assistée par IA, les outils IA dans les tickets et les emails complètent ce dispositif. Une sécurité renforcée à chaque niveau La sécurité progresse considérablement : La restriction d’accès par plages CIDR permet un contrôle fin des adresses IP autorisées. Le niveau CSRF passe à 3, avec des tokens renforcés sur tous les formulaires. Les filtres non sécurisés sur les extrachamps sont bloqués par défaut. L’API de connexion est désactivée par défaut au profit des Bearer tokens. Le module Logs Inaltérables v3.0.0 avec hachage SHA-256/HMAC garantit l’intégrité du journal d’audit. Comptabilité : un bond en avant Le module de comptabilité bénéficie de nombreuses avancées : bilan comparatif avec instantané de clôture, multi-rapports, modèles de transactions, lettrage sur compte général, recherche AJAX sur les comptes auxiliaires, et des options avancées d’export (Quadra, dissociation des ventes comptant). Modules stabilisés et nouvelle ergonomie Le module Transfert de stock et le modèle Fichinter passent en version stable. Le nouveau module Quick Memo permet d’annoter n’importe quelle page Dolibarr. L’installation directe des modules communautaires depuis le DoliStore simplifie la gestion des extensions. L’interface gagne en clarté avec les libellés courts de catégories, la fusion des étapes de création d’interventions et la refonte visuelle de l’import/export. Pour les développeurs : API et hooks enrichis Nouveaux endpoints API : historique des prix produit, catégories, remises, pays avec régions Nouveaux hooks : opérations comptables, portail web, réceptions, prélèvements SEPA, tickets Support renforcé des extrachamps : flag RGPD personal_data, infobulle, performances sur grandes listes Le Module Builder permet de spécifier si un objet gère des lignes Une stabilité consolidée Les versions de maintenance 24.0.x continueront à garantir la robustesse et la sécurité du logiciel, avec un focus permanent sur la correction rapide des éventuels bugs remontés par la communauté. Astuce : Dolibarr 24.0 franchit un cap décisif en intégrant l’intelligence artificielle au cœur de l’ERP, tout en poursuivant son effort constant sur la sécurité, la comptabilité avancée et la stabilisation des modules. C’est un choix incontournable pour toute organisation à la recherche d’une solution ERP & CRM moderne, ouverte et prête pour l’avenir. 1.8 Traductions et communauté Avec Transifex, le nouveau processus de traduction, aider à la traduction de Dolibarr™ n’a jamais été aussi simple. Aucune connaissance technique n’est requise : créez simplement un compte sur transifex.com et traduisez depuis l’interface. L’association Dolibarr™ a de plus lié le système au service de traduction de Google, ce qui permet si besoin d’avoir des propositions automatiquement suggérées. Les traductions soumises sur Transifex seront fréquemment synchronisées avec les sources officielles du projet Dolibarr™. Note Ce nouveau système doit être utilisé pour tous les langages, sauf en_US (langue source), fr_FR, es_ES et es_CA (dont les contributeurs continuent d’utiliser majoritairement GitHub). De même pour les « langues alternatives » (par exemple es_MX, es_PR, es_PY). Les fonctionnalités et règles de développement ont également été enrichies afin d’améliorer la qualité et l’efficacité de la plate-forme de plugins complémentaires DoliStore, ainsi la plupart des modules de cette plate-forme ont aussi été mis à jour en parallèle et sont disponibles en même temps que la sortie de Dolibarr™. Notez que depuis la version 3.4.0, Dolibarr™ est diffusé sous licence GPLv3+. 1.9 Objectifs et contenu de ce livre L’auteur Philippe GRAND (aka grandoc), y participant lui-même, s’est largement inspiré du wiki de Dolibarr. Le contenu de ce livre est soumis à une licence Creative Commons (CC-BY-SA). Dolibarr™ étant par essence modulaire, ce document décrit module par module les étapes à suivre pour réaliser les processus minimaux à travers Dolibarr™. Ce guide d’instructions prétend donner à l’utilisateur une vision globale, rapide et non spécifique de chacun des différents processus et fonctionnalités, afin que celui-ci puisse en cas d’oubli facilement s’éclairer de manière simple et pratique. Il ne s’agit pas d’un manuel complet, seulement d’un guide rapide. Avertissement : Avertissement : les explications et démonstrations du livre sont actuellement faites sur une version 24.0 de Dolibarr™, il ne s’agit pas d’une version finale. De version en version de Dolibarr™, ce guide est en constante actualisation. Nous vous recommandons de porter toute votre attention aux nouvelles versions qui suivront l’évolution de Dolibarr™ et qui seront proposées sur le DoliStore. 02. CHANGELOG DOLIBARR 24 2.1 Nouvelles fonctionnalités pour les utilisateurs INTELLIGENCE ARTIFICIELLE ET ASSISTANT MCP : NOUVEAU : Serveur MCP expérimental et assistant IA intégrés directement dans Dolibarr (#37888). MCP (Model Context Protocol) permet à Dolibarr d’exposer ses données à un assistant IA externe (tel que Claude), afin que celui-ci puisse interagir avec l’ERP en langage naturel. NOUVEAU : Outil vérification orthographique assistée par IA sur les zones de texte (#37692). Une action IA peut relire et corriger automatiquement la rédaction d’un document ou d’un email. NOUVEAU : Les outils IA sont disponibles directement dans l’éditeur de messages des tickets. NOUVEAU : Des exemples de modèles IA sont affichés dans la page de configuration, pour aider au paramétrage des différents fournisseurs (OpenAI, Ollama, etc.). NOUVEAU : Ajout d’un outil de comptage pour l’IA (utilisé par le serveur MCP pour dénombrer des objets Dolibarr). NOUVEAU : Ajout du picto “Assistant IA” dans l’interface pour identifier les zones et boutons liés à l’IA. Astuce : Ce que ça apporte : Le serveur MCP expérimental ouvre la voie à une utilisation de Dolibarr en langage naturel : « Crée-moi un devis pour le client Dupont », « Donne-moi les factures impayées de ce mois », etc. C’est une révolution dans la façon d’interagir avec l’ERP, sans nécessiter de formation à l’interface. SÉCURITÉ ET LOGS INALTÉRABLES : NOUVEAU : Utilisation d’un algorithme de hachage v2 basé sur SHA-256/HMAC pour les logs inaltérables (#37725). Cette évolution renforce la résistance aux falsifications du journal d’audit certifiable. NOUVEAU : Affichage de la valeur cumulée (lifetime amount) sur la liste des logs inaltérables. Il est ainsi possible de vérifier en un coup d’œil la cohérence des montants enregistrés. NOUVEAU : Amélioration visuelle significative des pages de logs inaltérables (meilleure présentation, couleurs, navigation). NOUVEAU : Restriction IP par plage CIDR (#36855) : il est désormais possible de limiter l’accès à Dolibarr à des plages d’adresses IP spécifiques (ex : 192.168.1.0/24), plutôt que seulement à des adresses IP uniques. NOUVEAU : Le niveau de protection CSRF passe de 2 à 3 (MAIN_SECURITY_CSRF_WITH_TOKEN), renforçant la vérification des tokens anti-falsification sur les formulaires. NOUVEAU : L’option MAIN_DISALLOW_UNSECURED_SELECT_INTO_EXTRAFIELDS_FILTER est activée par défaut et déplacée dans le fichier conf.php. Cela bloque les filtres non sécurisés sur les extrachamps, évitant des injections SQL potentielles. NOUVEAU : Début d’implémentation de MAIN_RESTRICTHTML_ONLY_VALID_HTML=2 pour bloquer les balises HTML dangereuses dans les zones de contenu riche. NOUVEAU : L’utilisation de l’éditeur riche (WYSIWYG) est désactivée par défaut sur les pages publiques, pour limiter les risques XSS sur les formulaires ouverts à l’extérieur. NOUVEAU : Amélioration des outils de vérification d’intégrité des fichiers Dolibarr (contrôle des checksums des fichiers du core). COMPATIBILITÉ : NOUVEAU : Bilan comparatif avec instantané de clôture (#37382) : la balance comparative peut afficher un exercice clos comme référence, permettant de comparer l’exercice courant avec le bilan de clôture de l’exercice précédent. NOUVEAU : Message de confirmation avec lien après la validation d’une écriture comptable (#37383) : une fois une transaction validée, Dolibarr affiche un lien direct vers l’écriture créée pour faciliter la navigation. NOUVEAU : Options d’export par défaut dans la comptabilité (#37938) : les préférences d’export comptable (format, colonnes, plage de dates) peuvent être sauvegardées. NOUVEAU : Système de multi-rapports comptables (#37248) : il est possible de créer et de gérer plusieurs formats de rapports comptables différents. NOUVEAU : Modèles de transactions (système complet, partie SQL incluse) (#37286, #36807) : des gabarits d’écritures comptables peuvent être définis pour saisir rapidement des opérations récurrentes. NOUVEAU : Choix entre comptabilité d’engagement et comptabilité de trésorerie (#37050) : l’option permet de basculer entre les deux méthodes de comptabilisation. NOUVEAU : Lettrage sur le compte général (#38040) : le rapprochement entre écritures peut désormais se faire directement sur un compte comptable général (pas seulement sur le compte auxiliaire). NOUVEAU : Recherche AJAX sur les comptes auxiliaires dans la liste des écritures (#37570) : un champ de recherche à la saisie permet de filtrer rapidement les comptes auxiliaires. NOUVEAU : Option de dissociation des ventes comptant (#38160) : les ventes au comptant peuvent être comptabilisées séparément des ventes à crédit. NOUVEAU : Export Quadra – option pour n’exporter le compte tiers que s’il n’existe pas déjà (#38208), évitant les doublons lors de l’import dans les logiciels compatibles Quadra. NOUVEAU : Hook sur le libellé d’une opération comptable (#37838), permettant aux modules tiers de personnaliser le libellé des écritures générées. NOUVEAU : Les codes comptables d’un produit peuvent être réduits/masqués dans la fiche produit, pour gagner de la place lorsque de nombreux codes sont définis. NOUVEAU : Rapport TVA – Bouton pour tout réduire / tout développer par taux de TVA (#36946), utile lorsque de nombreux taux coexistent. NOUVEAU : Ajout de la colonne einvoice_vate dans le dictionnaire de TVA : permet d’associer un code TVA aux formats de facturation électronique. NOUVEAU : Ajout d’une section d’aide pour trouver les modules de facturation électronique (e-invoice) dans la page de configuration, selon le pays. NOUVEAU : Ajout des cotisations sociales pour la Suisse (#38236). FACTURES ET PAIEMENTS : NOUVEAU : Envoi automatique de la facture générée depuis un modèle récurrent (#36967). Une option permet d’envoyer la facture par email automatiquement au moment de sa création par le cron. NOUVEAU : Colonne “Compte bancaire” dans les listes de factures clients et fournisseurs (#36718), permettant de voir d’un coup d’œil le compte associé à chaque facture. NOUVEAU : Action de masse pour annuler des factures via avoir (#37852) : depuis la liste des factures, il est possible de sélectionner plusieurs factures et de les annuler en créant les avoirs correspondants. NOUVEAU : La liste des factures utilise un sélecteur select2 multiselection pour le filtre de statut (#36834) : on peut filtrer simultanément sur plusieurs statuts (brouillon, validé, payé…). NOUVEAU : La liste des factures fournisseur utilise également le sélecteur select2 multiselection pour le filtre de statut (#36887). NOUVEAU : Envoi d’email en masse depuis la liste des factures d’un produit donné (#37937) : on peut sélectionner toutes les factures contenant un produit spécifique et envoyer un email groupé. NOUVEAU : Protection contre la modification du total d’une facture validée : un message d’erreur est affiché si une action tente de modifier le total d’une facture déjà validée. NOUVEAU : Option pour masquer le prix unitaire de la remise exceptionnelle sur les lignes de facture (#37066). NOUVEAU : Suppression du modèle PDF “crabe” (legacy) : ce vieux modèle de facture n’est plus proposé dans Dolibarr. NOUVEAU : Affichage du total en devise secondaire sur le paiement (#37070) : lorsqu’un paiement est effectué dans une devise autre que la devise principale, le montant en devise secondaire est affiché. NOUVEAU : Ajout d’un champ “Commentaires” dans la popup de confirmation lors de l’ajout d’un paiement en action de masse (#37594). NOUVEAU : Variables de substitution pour les acomptes (dépôts) (#37546), permettant de personnaliser les emails liés aux factures d’acompte. NOUVEAU : Extrachamps sur les paiements divers (#38260) : les champs personnalisés sont maintenant disponibles sur les paiements divers (pas seulement sur les factures). NOUVEAU : Nouveau statut “Annulé” sur les prélèvements directs (direct debit). NOUVEAU : Filtre sur le statut des prélèvements directs dans la liste. NOUVEAU : Possibilité de choisir les demandes de paiement à inclure dans un virement bancaire (#36814) : lors de la constitution d’un fichier de virements, on peut sélectionner unitairement les lignes à inclure. NOUVEAU : Augmentation de la longueur de la description : 12 caractères pour les paiements par carte, 22 pour le SEPA. NOUVEAU : Raccourci vers les prélèvements à clôturer sur la page d’accueil (widget/vignette). PRÉLÈVEMENTS ET VIREMENTS (SEPA) : NOUVEAU : Hook dans BonPrelevement::EnregDestinataireSEPA() (#37419) : les modules tiers peuvent modifier le contenu des fichiers SEPA générés. NOUVEAU : Possibilité de choisir les demandes à inclure dans un fichier de virement bancaire (#36814). VENTES, ACHATS ET COMMANDES : NOUVEAU : Gestion des remises sur toutes les lignes pour les éléments fournisseur (#36954) : la remise peut être appliquée en masse sur toutes les lignes d’une commande ou facture fournisseur. NOUVEAU : Indicateurs visuels sur la fiche commande client (#37460) : des icônes et codes couleur signalent l’état de chaque ligne (livrée, à livrer, etc.). NOUVEAU : Ajout du champ libellé dans la méthode addline des commandes fournisseur (#36544). NOUVEAU : Liens de téléchargement externes activables pour les documents fournisseur, avec exposition des variables de substitution correspondantes (#37386). NOUVEAU : Possibilité de lier une proposition commerciale à un participant de conférence ou à un exposant (#38359). NOUVEAU : Affichage du nom du tiers avec sa référence dans les objets liés de toutes les commandes fournisseur (#36952) et de tous les types de documents (#37906). NOUVEAU : Ajout de la date de livraison prévue dans le bloc des objets liés d’une commande fournisseur (#38351). NOUVEAU : Répertoire de sortie (dir_output) mis à jour pour les factures fournisseur (#37841) et les commandes fournisseur (#37858). EXPÉDITIONS ET RÉCEPTIONS : NOUVEAU : Glisser-déposer pour gérer l’ordre des lignes d’une expédition en brouillon (#36311). NOUVEAU : Option cachée STOCK_EXPEDITION_NO_MORE_THAN_ORDER (#37604) : empêche de créer une expédition avec une quantité supérieure à celle commandée. NOUVEAU : Hooks dans la fiche réception (#37214) pour permettre aux modules tiers de personnaliser l’affichage ou le traitement des réceptions. TIERS ET CONTACTS : NOUVEAU : La fiche compte bancaire d’un tiers demande maintenant le pays, l’état/région, la devise et le statut du compte (#38031), pour une meilleure conformité bancaire internationale. NOUVEAU : La valeur par défaut du type de tiers passe à “Particulier” (au lieu de “Société”) si aucune donnée ne permet de deviner (#Dolibarr). Cela évite de créer de faux “Sociétés” sans raison. NOUVEAU : Limite de taille de la liste déroulante des tiers (THIRDPARTY_LIMIT_SIZE) : option pour éviter les ralentissements sur les bases avec de nombreux tiers. NOUVEAU : Liste des contacts – Ajout des colonnes Région et État/Province (#37553). NOUVEAU : Import/export des tiers – Ajout de la localisation Incoterm et possibilité d’importer avec le code incoterm (#37969). NOUVEAU : Ajout du champ numéro EUID (European Unique Identifier) sur les fiches tiers (#37222, #36997). L’EUID est l’identifiant européen unique des entreprises, utilisé dans le registre des sociétés européen. NOUVEAU : Affichage du nom alias entre parenthèses dans les listes déroulantes de sélection de tiers (#37997), facilitant l’identification des entités avec des noms commerciaux différents. NOUVEAU : Infobulle et meilleure traduction sur le champ référence côté tiers lors de la création d’un objet. NOUVEAU : La fiche tiers affiche un nouvel onglet avec les événements (agenda) auxquels le tiers participe comme attendee (participant) ou booth (exposant) (#37743). NOUVEAU : Champ “compte bancaire par défaut” sur le formulaire de création de tiers (#37866) : on peut directement associer un RIB lors de la création du tiers. NOUVEAU : Le numéro de téléphone du tiers est disponible dans la liste des contrats. PRODUITS, STOCKS ET NOMENCLATURES : NOUVEAU : Module Transfert de stock stabilisé avec couverture fonctionnelle complète (#37557) : le module expérimental de transfert de stock passe en version stable. NOUVEAU : Ajout des miniatures et de la valeur de stock dans la liste des catégories produit (#37510). NOUVEAU : Affichage d’une image externe liée sur la fiche produit (#37574) : si un produit a une URL d’image externe, elle est affichée directement sur sa fiche. NOUVEAU : Support des sous-totaux sur plus d’objets (#34125) : les lignes de type sous-total (product_type = 9) sont maintenant gérées sur davantage de types de documents. NOUVEAU : La vue arborescente des besoins nets de la BOM est affichée par position de ligne (#37459), facilitant la lecture des nomenclatures complexes. NOUVEAU : Export des prix multi-tarifs (multiprices) d’un produit avec les extrachamps (#37595). NOUVEAU : Options d’impression des étiquettes code-barres des produits (#36656) : format, taille, nombre d’exemplaires configurables. NOUVEAU : Possibilité d’enregistrer un mouvement de stock à 0 (#36812) : utile pour justifier formellement l’absence de mouvement sur une période. NOUVEAU : Tags et catégories sur les OFs (ordres de fabrication / Manufacturing Orders) (#36816). INTERVENTIONS : NOUVEAU : Ajout des tags et catégories sur les interventions (#38158) : les interventions peuvent maintenant être classées par catégorie, comme les autres objets Dolibarr. NOUVEAU : Glisser-déposer de fichiers directement sur la fiche intervention (#38138). NOUVEAU : Bouton “Déplacer vers” dans l’administration des fiches d’intervention (#38314) : permet de réassigner une intervention à un autre contexte. NOUVEAU : Fusion des deux étapes de création d’une intervention en un seul formulaire unifié (#38284) : l’UX de création est simplifiée. NOUVEAU : Le modèle Fichinter passe en version stable (#36873) : le modèle de génération PDF pour les interventions n’est plus expérimental. TICKETS : NOUVEAU : Le Portail Web supporte maintenant les interventions et les tickets (#37538) : les clients peuvent consulter et soumettre des tickets/interventions depuis le portail. NOUVEAU : Possibilité d’ajouter des contacts externes sur les événements des tickets (#37870). NOUVEAU : Les outils IA sont disponibles dans l’éditeur de messages des tickets. NOUVEAU : Le message initial de création d’un ticket est affiché comme un message normal dans la vue Événements/Agenda (#37713), uniformisant la lecture de l’historique. NOUVEAU : La date de lecture d’un ticket est mise à jour automatiquement lorsque son statut change (#37470). CONTRATS : NOUVEAU : Ajout d’un total consolidé sur les contrats (#38249) : la fiche contrat affiche un récapitulatif des montants totaux des lignes de services. NOUVEAU : Ajout de statistiques sur les contrats (#38136) : une page de statistiques est accessible depuis les contrats pour analyser les tendances. NOUVEAU : Le numéro de téléphone du tiers est affiché dans la liste des contrats. RESSOURCES HUMAINES ET SALAIRES : NOUVEAU : Génération de PDF pour les fiches de salaires (#36785) : le module Salaires peut maintenant produire des bulletins de salaire en PDF. NOUVEAU : Raccourcis rapides de navigation sur les dates dans le module Salaires (#37704) : boutons “Mois précédent / Mois en cours / Mois suivant” pour naviguer rapidement entre les périodes. NOUVEAU : Import du solde de congés (#37011) : le solde initial de congés d’un employé peut être importé via l’outil d’import. NOUVEAU : La date de création peut être renseignée lors de la mise à jour d’une note de frais (#36936). NOUVEAU : Ajout d’un traitement batch pour l’envoi d’informations RH (#37542). NOUVEAU : La classe Holiday gère maintenant le champ date_create (#36918). ADHÉRENTS : NOUVEAU : Affichage de la date de fin d’adhésion dans la liste des partenariats. NOUVEAU : Affichage du membre dans la liste des partenariats. NOUVEAU : Ajout d’une colonne libellé dans la liste des cotisations d’un adhérent (#38289). NOUVEAU : Action de masse pour les abonnements adhérents – libellé de type textline (#38288). NOUVEAU : L’infobulle sur la cotisation d’un adhérent inclut maintenant le libellé (#38291). NOUVEAU : Filtre sur les dates de début et de fin d’adhésion (#38309) : dans la liste des adhérents, on peut filtrer par période d’adhésion. NOUVEAU : Il est maintenant possible de lier les cotisations d’adhésion à des factures, des commandes ou des propales (#37712). NOUVEAU : Bouton “Plus” sur la page des statistiques adhérents. NOUVEAU : Champ texte de recherche sur le libellé (#38306) dans les listes d’adhérents. PORTAIL WEB : NOUVEAU : Le portail web supporte les interventions et les tickets (#37538). NOUVEAU : Ajout d’un captcha sur les formulaires du portail web (#37726), pour se protéger des soumissions automatisées. NOUVEAU : Hooks sur les formulaires de liste du portail web (#36844) : les modules tiers peuvent personnaliser l’affichage des listes dans le portail. NOUVEAU : L’éditeur riche est désactivé par défaut sur les pages publiques (sécurité XSS). AGENDA ET COMMUNICATIONS : NOUVEAU : Possibilité d’activer ou désactiver les calendriers externes individuellement par calendrier. NOUVEAU : Prise en charge de la variable __AUTHOREMAIL__ dans les notifications fixes (#37285) : l’email de l’auteur de l’action peut être utilisé dans les templates de notification. NOUVEAU : Option globale pour désactiver les emails directement sur chaque page de configuration d’emails. Utile pour les environnements de test. NOUVEAU : Nouvelle constante MAIL_MASS_ACTION_SEARCH_MOST_RECENT_FILE_IF_NOT_FOUND (#36813) : lors d’un envoi d’email en masse, si le fichier joint attendu n’est pas trouvé, Dolibarr peut chercher automatiquement le fichier le plus récent portant le même nom. NOUVEAU : Le premier message d’un ticket est affiché dans la vue Agenda comme n’importe quel autre message, pour uniformiser l’historique (#37713). INTERFACE UTILISATEUR ET ERGONOMIE : NOUVEAU : Refonte visuelle de l’outil d’import/export (look and feel v24) : interface plus moderne et plus claire. NOUVEAU : Les catégories affichent leur libellé court par défaut, le libellé complet étant disponible au survol (infobulle). Améliore la lisibilité des longues arborescences. NOUVEAU : Les interrupteurs on/off peuvent utiliser des couleurs personnalisées dans les pages de configuration (setup factory). NOUVEAU : Lors de la création d’une catégorie, le type de catégorie est sélectionnable directement dans le formulaire (#38206). NOUVEAU : Quand il n’y a qu’un seul modèle de document, la sélection de modèle n’est plus affichée lors de la création : le modèle est appliqué automatiquement. NOUVEAU : Un séparateur visuel distingue les statuts Gagné/Perdu des autres statuts d’opportunité dans les listes. NOUVEAU : Prise en charge du format d’image AVIF (#37014) : le format AVIF (successeur du WebP, meilleure compression) est accepté dans les téléchargements d’images. NOUVEAU : Affichage du nom du tiers avec sa référence dans les blocs d’objets liés de tous les types de documents (#37906), pour une identification plus précise. NOUVEAU : Ajout d’un texte d’aide (helptext) dans la fonction formconfirm (#38435) : les popups de confirmation peuvent maintenant afficher un texte explicatif supplémentaire. NOUVEAU : Forçage de l’affichage des formulaires d’ajout et de liaison de fichiers dans l’onglet “Fichiers liés” (#38100), même si aucun fichier n’est encore présent. NOUVEAU : Le compteur d’impression est maintenant calculé de façon synchrone dans documents.php et receipt.php (refactorisation). NOUVEAU : Affichage du lien des modules en liste noire dans une infobulle. IMPORT / EXPORT : NOUVEAU : Mode d’import CSV/XLSX avec désactivation de l’exécution des triggers (#37367) : option pour importer des données sans déclencher les automatismes (utile pour les migrations massives). NOUVEAU : Les chaînes de caractères sont automatiquement nettoyées (trim) lors de l’import : les espaces en début et fin de chaque valeur sont supprimés. NOUVEAU : Simplification du processus d’import en supprimant certaines étapes redondantes (#36811). NOUVEAU : Meilleur aspect visuel de l’outil d’import/export (v24 look and feel). CONNEXION ET AUTHENTIFICATION : NOUVEAU : Auto-création d’utilisateurs via OpenID Connect (OIDC) (#37314) : si un utilisateur s’authentifie via un fournisseur OIDC et qu’il n’existe pas encore dans Dolibarr, son compte peut être créé automatiquement. NOUVEAU : Nouvelle règle MAIN_BUILD_LOGIN_RULE = 'flastname' pour construire automatiquement le login d’un utilisateur à partir de la première lettre du prénom + le nom de famille. NOUVEAU : Possibilité de demander et forcer un changement de mot de passe à la prochaine connexion (#37196). DOLISTORE ET MODULES : NOUVEAU : Installation directe des modules communautaires et gratuits depuis le DoliStore (#38357) : il est possible d’installer un module en un clic depuis l’interface Dolibarr, sans passer par un téléchargement manuel. NOUVEAU : Nouveau module expérimental “Quick memo” : permet de coller des post-it sur n’importe quelle page de Dolibarr (#37422). Idéal pour laisser des notes contextuelles sur un écran particulier. 2.2 Nouvelles fonctionnalités pour les développeurs et intégrateurs API REST : NOUVEAU : Endpoint API pour l’historique des prix d’un produit (#38420) : /products/{id}/pricelogs retourne l’historique des prix de vente. NOUVEAU : L’API GET /countries/{id} peut maintenant charger les régions et les états en option (#37715), évitant des appels supplémentaires. NOUVEAU : API Catégories – endpoint pour lister les types de catégories (#38207). NOUVEAU : API Remises – création d’une remise en montant fixe (#37091). NOUVEAU : Meilleure compatibilité API pour les utilisateurs, les tâches et les pièces jointes des tickets (#37644). NOUVEAU : Le champ default_rib (RIB par défaut) est maintenant inclus dans les réponses API des tiers (#38355). HOOKS : NOUVEAU : Hook dans le label d’une opération comptable (#37838) : hookmanager->executeHooks('addMor ...). NOUVEAU : Hook dans les formulaires de liste du portail web (#36844) : webportal_formlist. NOUVEAU : Hook selectForFormsListUrl dans Form::selectForForms (#37447) : permet de modifier l’URL d’une liste de sélection. NOUVEAU : Hooks dans la fiche réception (#37214). NOUVEAU : Hook dans BonPrelevement::EnregDestinataireSEPA() (#37419). NOUVEAU : Hook dans le formulaire email/message des tickets généré par FormTicket (#37580). NOUVEAU : Hook dans Add Hook for adapting virtual stock dans l’écran de réapprovisionnement (#37290). Avertissement : Renommage de hook : le hook info_admin a été renommé en messageOfTheDay. Mettez à jour vos modules si vous l’utilisez. EXTRACHAMPS (extrafields) : NOUVEAU : [RGPD] Ajout de la colonne personal_data dans llx_extrafields (#38194, #38133) : troisième étape du chantier d’anonymisation des extrachamps. Chaque extrachamp peut maintenant être marqué comme “données personnelles” pour faciliter les procédures RGPD (droit à l’oubli, anonymisation). NOUVEAU : L’interface d’administration des extrachamps affiche le flag personal_data et permet de le configurer. NOUVEAU : Option infobulle sur les extrachamps dans getNomUrl (#37431) : un extrachamp peut avoir une infobulle au survol. NOUVEAU : Utilisation du libellé du select (et non de la valeur technique) pour la substitution des extrachamps dans les emails (#37005). NOUVEAU : Support des extrachamps de type chkbxlst (checkbox list) avec des tables contenant jusqu’à 200 000 éléments (#37691) : amélioration des performances pour les très grandes listes. NOUVEAU : L’option MAIN_DISALLOW_UNSECURED_SELECT_INTO_EXTRAFIELDS_FILTER est activée par défaut (sécurité). MODULE BUILDER : NOUVEAU : Possibilité de spécifier si l’objet gère des lignes dans le Module Builder (#32664) : paramètre pour indiquer qu’un objet personnalisé a des lignes associées. NOUVEAU : Remplacement automatique des occurrences MyObject / MyModule lors de la génération (#38370) : le module builder substitue correctement ces tokens lors de la création du code. MÉTHODES ET UTILITAIRES : NOUVEAU : Nouvelle méthode calculateVATNumberFromProperties() : calcule automatiquement le numéro de TVA à partir des propriétés d’un objet. NOUVEAU : Nouvelle méthode dolOutputDates() pour afficher des dates de façon normalisée. NOUVEAU : Nouvelle méthode formatLogObject() pour formater un log en une seule ligne (#37135), facilitant la lecture des journaux. NOUVEAU : Méthode addMoreTagsToDefaultTagsInDolPrintHTML() : les modules tiers peuvent ajouter des balises HTML autorisées dans les sorties contrôlées. NOUVEAU : Le cron déverrouille automatiquement les tâches bloquées après un arrêt inattendu du serveur (#37332). NOUVEAU : La debugbar capture maintenant la backtrace lors des échecs de requêtes SQL (#36612), facilitant le diagnostic des erreurs de base de données. NOUVEAU : Déplacement des librairies JS dans htdocs/public/includes (au lieu de htdocs/includes) pour mieux séparer les ressources publiques. NOUVEAU : Le Module Builder peut indiquer qu’un objet gère des lignes (#32664). SÉCURITÉ DÉVELOPPEURS : NOUVEAU : Une page peut forcer sa propre valeur pour MAIN_SECURITY_CSRF_WITH_TOKEN, permettant à certaines pages de surcharger le niveau de protection CSRF globalement configuré. 2.3 Avertissements – Changements pouvant créer des régressions Avertissement Les changements suivants peuvent créer des régressions pour certains modules externes, mais ils étaient nécessaires pour améliorer Dolibarr. Universal Search Syntax (USF) obligatoire : tous les filtres passés aux fonctions de liste doivent utiliser la syntaxe USF. Les anciens filtres non conformes ne sont plus acceptés. Si votre module utilise des filtres personnalisés sur des listes Dolibarr, vérifiez qu’ils respectent la syntaxe array('customsql'=>'...'). Suppression de l’option PAYMENT_SECURITY_TOKEN_UNIQUE : cette ancienne option de sécurité pour les paiements en ligne a été retirée. Le token de signature en ligne est désormais configurable via XXX_ONLINE_SIGNATURE_SECURITY_TOKEN dans la configuration du module concerné. Sel par défaut pour les signatures en ligne : Dolibarr utilise maintenant un sel par défaut pour générer les clés de sécurité des liens de signature en ligne. Si aucun sel n’était défini auparavant, les anciens liens de signature peuvent ne plus fonctionner. API de connexion désactivée par défaut : les endpoints d’API de login (/login) sont désactivés par défaut. L’API doit être utilisée avec un Bearer token (token API utilisateur). Pour réactiver les endpoints de login, ajouter API_ENABLE_LOGIN_API=1 dans la configuration. Variable de substitution __MYCOUNTRY_ID__ supprimée : c’était un doublon de __MYCOMPANY_COUNTRY_ID__ . Remplacez toute occurrence par la variable standard. Hook renommé : le hook info_admin() a été renommé en messageOfTheDay() . Mettez à jour les modules qui utilisent ce hook. Librairie jeditable supprimée : cette librairie JavaScript d’édition inline n’était plus utilisée par le core Dolibarr (uniquement par une option cachée sans règles de sécurité). Si un module externe l’utilise, il devra l’embarquer lui-même. Renommage de la variable interne DEPOSIT_AS_CREDIT_AVAILABLE_EVEN_UNPAID en DEPOSIT_CAN_BE_CONVERTED_AS_AVAILABLE_CREDIT_EVEN_IF_NOT_YET_PAID . Si votre code ou vos modules référencent directement cet ancien nom de constante, mettez-le à jour. 03. INSTALLATION 3.1 Introduction Dolibarr™ est installable sur un serveur LAMP (Linux, Apache, MySQL, PHP). Ce chapitre présente deux méthodes d’installation en local sous Windows : Via l’installeur DoliWamp (méthode recommandée pour débuter) Via les sources GitHub avec XAMPP (méthode pour les développeurs) 3.2 Installation via DoliWamp TÉLÉCHARGEMENT : Commencez par récupérer les sources sur SourceForge : https://sourceforge.net/projects/dolibarr/files/ Cliquez sur le lien Dolibarr installer for Windows (DoliWamp), puis sur le tag de la dernière version stable. Figure 3.1 – Page de téléchargement sur SourceForge ÉTAPES DE L'INSTALLATION : Récupérez et lancez l’exécutable DoliWamp. Suivez toutes les étapes de l’assistant d’installation pas à pas, en cliquant sur les boutons Oui, Suivant ou Installer. Étape 1 — Démarrage de l’assistant Figure 3.2 – Étape 1 : démarrage de l’assistant DoliWamp Étape 2 — A ccord de licence Figure 3.3 – Étape 2 : accord de licence Étape 3 — Dossier d'installation Figure 3.4 – Étape 3 : dossier d’installation Étape 4 — Composants à installer Figure 3.5 – Étape 4 : composants à installer Étape 5 — Dossier dans le menu Démarrer Figure 3.6 – Étape 5 : dossier dans le menu Démarrer Étape 6 — Résumé avant installation Figure 3.7 – Étape 6 : résumé avant installation Étape 7 — Autorisation d’accès réseau Autorisez l’accès naturellement lorsque le pare-feu Windows vous le demande. Figure 3.8 – Étape 7 : autorisation du pare-feu Windows Étape 8 — Fin de l’installation Windows Figure 3.9 – Étape 8 : installation DoliWamp terminée SUITE DE L'INSTALLATIONDANS L'INTERFACE WEB : Le reste de l’installation se déroule dans l’interface web. DoliWamp ouvre automatiquement le navigateur sur l’assistant d’installation Dolibarr™. 3.3 Installation à partir des sources GitHub (XAMPP) Cette méthode est destinée aux développeurs qui souhaitent travailler directement avec les sources du projet. PRÉREQUIS : Un serveur LAMP local, par exemple XAMPP (https://www.apachefriends.org/) Git Bash installé (https://git-scm.com/) CLONNAGE DU DÉPOTS : Placez-vous dans le dossier htdocs de XAMPP, faites un clic droit et lancez Git Bash. Figure 3.11 – Lancement de Git Bash via le menu contextuel Utilisez la ligne de commande suivante pour cloner le dépôt : git clone git@github.com:Dolibarr/dolibarr.git Figure 3.12 – Commande git clone dans Git Bash Figure 3.13 – Progression du clonage SÉLÉCTION DE LA VERSION : Une fois le téléchargement terminé, déplacez-vous dans le dossier dolibarr et basculez sur la version souhai- tée : cd dolibarr git checkout 23.0 Renommez ensuite le dossier pour le distinguer des autres versions, par exemple dolibarr-230. CONFIGURATION D'UN VirtualHost XAMPP : Pour accéder directement à Dolibarr™ sans ajouter /htdocs/ dans l’URL, créez un VirtualHost Apache. Éditez le fichier C:\xampp\apache\conf\extra\httpd-vhosts.conf et ajoutez : ServerName dolibarr-230.local DocumentRoot "C:/xampp/htdocs/dolibarr-230/htdocs" AllowOverride All Require all granted Éditez le fichier hosts C:\Windows\System32\drivers\etc\hosts et ajoutez : 127.0.0.1 dolibarr-230.local Redémarrez Apache depuis le panneau de contrôle XAMPP. Vous pouvez maintenant accéder à votre instance via : http ://dolibarr-230.local PAGE D'INDEX XAMPP PERSONNALISÉE (bonus) : Pour avoir une page d’accueil XAMPP listant automatiquement vos VirtualHosts, remplacez le contenu de index.php à la racine de htdocs par : Accueil XAMPP

Accueil XAMPP

Outils

Mes projets (VirtualHosts)

Figure 3.14 – Page d’accueil XAMPP personnalisée avec liste des VirtualHosts CRÉATION DE LA BASE DE DONNÉES : Ouvrez phpMyAdmin (http://localhost/phpmyadmin/) et créez une nouvelle base de données, par exemple dolibarr-230. Figure 3.15 – Création de la base de données dans phpMyAdmin Figure 3.16 – Base de données créée 3.4 Assistant d’installation web de Dolibarr™ Que vous ayez utilisé DoliWamp ou l’installation depuis les sources, la suite de la configuration se déroule dans l’interface web de Dolibarr™. Étape 1 — Vérification de l’environnement L’assistant vérifie automatiquement la compatibilité de votre environnement (version PHP, extensions re- quises, droits sur les dossiers…). Figure 3.17 – Étape 1 de l’assistant web : vérification de l’environnement Passez à l’étape suivante une fois toutes les vérifications validées. Étape 2 — Configuration de la base de données Important : Le nom de la base de données doit correspondre exactement à celle créée précédemment (ici : dolibarr-230). Figure 3.18 – Étape 2 : configuration de la connexion à la base de données Étape 3 — Installation des tables L’installation des tables SQL peut prendre quelques minutes. Attendez l’affichage complet de la page suivante avant de poursuivre. Figure 3.19 – Étape 3 : installation des tables en cours Figure 3.20 – Progression de l’installation des tables Étape 4 — Ping anonyme Dolibarr™ vous propose d’effectuer un ping anonyme pour permettre à la fondation de comptabiliser le nombre d’installations actives. Cette étape est facultative. Figure 3.21 – Option de ping anonyme pour la fondation Dolibarr Étape 5 — Création du compte administrateur Renseignez un identifiant et un mot de passe pour le compte administrateur de votre instance Dolibarr™. Figure 3.22 – Création du compte administrateur Figure 3.23 – Installation terminée — accès à Dolibarr Astuce : Notez bien vos identifiants administrateur. En cas de perte, il est possible de les réinitialiser directement en base de données, mais cela nécessite un accès à phpMyAdmin ou à la ligne de commande MySQL. 04. PREMIERS PARAMÉTRAGES 4.01 Configuration initiale Avertissement : Sécurité post-installation : une fois l’installation terminée, les outils d’installation et de migration doivent être désactivés en créant un fichier install.lock dans le répertoire documents/ de votre instance Dolibarr™ (par exemple C:/xampp/htdocs/dolibarr-230/documents/ ). L’absence de ce fichier constitue une faille de sécurité. Les alertes restent visibles pour les administrateurs tant que la vulnérabilité est avérée, ou jusqu’à ce que la constante MAIN_REMOVE_INSTALL_WARNING soit définie dans Configuration > Divers. Une fois l’installation réalisée, il est nécessaire de procéder à un paramétrage pour adapter Dolibarr™ à vos besoins. Figure 4.1 – Page d’accueil Dolibarr™ après installation 4.02 Société / Organisation Rendez-vous dans le menu Configuration > Société/Organisation et éditez toutes les informations connues sur la société ou association à gérer (cliquez sur le bouton Enregistrer en bas de page). Onglet 1 – Informations générales : Figure 4.2 – Onglet principal : informations de la société Important : Définissez votre pays dès le départ : de nombreuses options en dépendent (TVA, formats de documents, etc.). Un message d’alerte vous le rappellera tant que ce champ est vide. Renseignez votre adresse, téléphone, e-mail et importez le logo de votre société (format PNG ou JPG). Astuce : Logo : évitez les images trop grandes qui pourraient déstructurer la présentation de vos modèles de documents et les alourdir inutilement. Dolibarr™ 24 propose désormais deux champs logo distincts : Logo : le logo standard utilisé dans les en-têtes de documents Logo (carré) : format carré pour les contextes où un rapport 1 :1 est nécessaire (icône d’application, notifications…) Figure 4.3 – Champs Téléphone, Email, Logo et Logo (carré) Figure 4.4 – Prévisualisation des deux logos après import La section Identifiants société/organisation permet de renseigner les données légales : nom du gestionnaire, Délégué à la protection des données (DPO/RGPD), capital social, objet, numéro de TVA et identifiants professionnels (SIREN, SIRET…). Figure 4.5 – Identifiants société : DPO, Capital, TVA, type d’entité légale Note : Le champ DPO (Délégué à la protection des données) est nouveau en v24. Il permet de renseigner le contact RGPD de votre organisation, visible dans certains documents et exports. Renseignez le mois de début d’exercice (les rapports du module Compta/Tréso s’afficheront à partir du mois choisi) et définissez si vous êtes assujetti ou non à la TVA — ce réglage conditionne le comportement de l’ensemble de votre instance Dolibarr™. Dolibarr™ 24 gère également un 2ème et 3ème type de taxe pour les pays qui en ont besoin (hors France métropolitaine). Figure 4.6 – Exercice fiscal et paramétrage TVA Onglet 2 – Réseaux sociaux Figure 4.7 – Gestion des réseaux sociaux de la société Onglet 3 – Heures d’ouverture Renseignez vos heures d’ouverture si vous avez une activité en présentiel. Figure 4.8 – Paramétrage des heures d’ouverture Informations comptable : Vous pouvez également renseigner les coordonnées de votre comptable. Figure 4.9 – Informations du comptable 4.03 Modules Le choix des modules à activer est important — il dépend de l’utilisation prévue et du type de structure : Une société de services n’a pas forcément besoin des modules Produits et Stocks. Une PME revendeuse en aura besoin. Les modules Adhérents et Don n’intéressent que les associations. Chaque module peut être activé ou désactivé à tout moment en fonction de l’évolution de votre usage. La page Configuration > Modules/Applications propose en v24 quatre onglets : Modules/applications disponibles — liste des modules natifs à activer/désactiver Rechercher un module/application externe — recherche en ligne dans le catalogue de modules Déployer/Installer un module externe — installation par fichier ZIP Développer son propre module/application — accès aux outils du Module Builder Figure 4.10 – Page Modules/Applications avec les catégories disponibles Deux modes d’affichage sont disponibles : vue Kanban (par défaut, avec les modules regroupés par catégorie) et vue liste. Cliquez sur l’icône en haut à droite de la liste pour basculer. Figure 4.11 – Modules GRC et GRF avec toggles d’activation Note : Le menu de Configuration dispose en v24 de nouvelles entrées dédiées : Limites et précision, PDF, SMS — des sections auparavant imbriquées dans d’autres pages. Installation d’un module externe : Pour installer un module externe, utilisez l’onglet « Déployer/Installer un module externe » en téléchargeant directement le fichier ZIP. Avertissement : Par défaut, tous les droits sur les dossiers et fichiers d’un module externe installé sont en lecture seule. Si vous intervenez dans le code, pensez à passer vos fichiers en écriture. Pensez également à augmenter la taille maximale des fichiers envoyés si les modules externes que vous souhaitez installer dépassent la limite par défaut. 4.04 Menus Les gestionnaires de menu définissent le contenu des deux barres de navigation (horizontale et verticale). Il est possible de définir un gestionnaire différent selon que l’utilisateur est interne ou externe. Figure 4.12 – Gestionnaires de menu L’éditeur de menu permet de définir des entrées personnalisées. Figure 4.13 – Éditeur de menu personnalisé Certains modules ajoutent automatiquement des entrées dans le menu Tous. En cliquant sur Nouveau, il est possible d’ajouter une entrée de menu personnalisée (par exemple un lien vers l’administration d’un module externe). Figure 4.14 – Ajout d’une entrée de menu personnalisée Astuce : Il est conseillé d’utiliser le menu Eldy, qui est le mieux maintenu. Si vous constatez un comportement anormal avec un autre gestionnaire, repassez au menu Eldy pour vérifier si le problème persiste. Si vous supprimez accidentellement des entrées de menu ajoutées par un module, vous pouvez les récupérer en désactivant puis réactivant le module concerné. 4.05 Affichage La page Configuration > Affichage propose en v24 cinq onglets : Langue et présentation — langue, multi-langue, raccourcis, longueur des listes Thème et couleurs — thème visuel, couleurs, logos dans le menu Tableau de bord — message du jour, vignettes de la page d’accueil Page de connexion — message et image de fond personnalisés Style CSS (nouveau v24) — injection de CSS personnalisé sans modifier le core Langue et présentation : Choisissez ici tous les paramètres liés à l’affichage de Dolibarr™. L’option multi-langue permet de gérer différentes traductions pour l’affichage des produits et de choisir la langue par défaut des tiers pour l’édition des documents PDF. Figure 4.15 – Options de la page Langue et présentation Thème et couleurs : Dolibarr™ 24 propose deux thèmes visuels natifs : eldy — thème historique, le mieux maintenu md — thème Material Design, interface plus moderne Astuce : Il est conseillé d’utiliser le thème Eldy, qui est le mieux maintenu. Si vous constatez un comportement anormal avec un autre thème, repassez sur Eldy pour vérifier si le problème persiste. Dolibarr™ permet une personnalisation poussée de l’interface : Mode thème sombre (toujours désactivé / auto / toujours activé) Icône ou texte dans le menu supérieur Affichage du logo de la société dans le menu Afficher les images du menu principal en couleur (nouveau v24) Affichage des bordures gauche-droite des tableaux avec rayon de courbure configurable (nouveau v24) Afficher une bordure aux champs de saisie du formulaire (nouveau v24) Couleur de fond (page, menu haut, menu gauche) Couleur du texte des titres, des liens, des lignes paires/impaires Couleur de la ligne de surbrillance au survol Couleur de la ligne cochée dans les listes Figure 4.16 – Onglet Thème et couleurs : options de personnalisation Tableau de bord et page de connexion : Sous l’onglet Tableau de bord, vous pouvez renseigner le message du jour et désactiver certaines vignettes de la page d’accueil. Sous l’onglet Page de connexion, vous pouvez afficher un message personnalisé à l’aide des constantes de substitution, et définir une image de fond pour la page de connexion. Style CSS (nouveau v24) : L’onglet Style CSS permet d’injecter du CSS personnalisé directement depuis l’interface, sans modifier les fichiers du core ni d’un thème. Pratique pour ajuster l’apparence sans risque de régression lors des mises à jour. Note L’icône d’accès à l’aide en ligne est située en haut à droite de chaque page 4.06 Traduction Chemin : Administration > Configuration > Traduction (/admin/translation.php) Cette page permet de rechercher les chaînes de traduction chargées par Dolibarr™ et de définir des remplacements personnalisés sans modifier les fichiers sources. Un interrupteur global en haut à droite active ou désactive la réécriture des traductions (constante MAIN_ENABLE_OVERWRITE_TRANSLATION). Lorsqu’il est désactivé, les surcharges enregistrées ne sont plus appliquées et le formulaire d’ajout est grisé. Onglet 1 – Rechercher une traduction : Cet onglet permet d’explorer toutes les chaînes de traduction actuellement chargées par Dolibarr™ (fichiers .lang du cœur et des modules installés). Trois filtres sont disponibles : Langue, Clé de traduction (recherche partielle ou exacte, avec préfixe ^ ou suffixe $), et Chaîne de traduction. Le compteur en en-tête indique le nombre de résultats, le total de chaînes chargées et le nombre de fichiers .lang analysés. Pour chaque entrée du tableau, vous pouvez : - Cliquer sur l’icône crayon pour basculer vers l’onglet Remplacer avec la clé pré-remplie - Cliquer sur l’icône corbeille pour supprimer une surcharge existante - Au survol de la valeur traduite : voir la valeur en_US de référence Onglet 2 – Remplacer une chaîne de traduction : Cet onglet permet de créer, modifier ou supprimer des surcharges de traduction stockées en base de données (table llx_overwrite_trans). Ces surcharges prennent priorité sur les fichiers .lang. Avertissement : Si le module Memcached est actif ou si la constante MAIN_USE_CACHE_FOR_TRANSLATION est activée, un avertissement s’affiche : les modifications peuvent ne pas être visibles immédiatement. Un rechargement manuel du cache peut être nécessaire. Priorité de résolution des traductions La priorité de résolution dans Dolibarr™ est la suivante : Priorité Source 1 (maximale) Surcharges en base (llx_overwrite_trans) 2 Fichiers .lang du module custom (htdocs/custom/monmodule/langs/fr_FR/) 3 Fichiers .lang du cœur Dolibarr (htdocs/langs/fr_FR/) 4 (fallback) Langue en_US Astuce : Les surcharges créées ici sont spécifiques à l’entité Dolibarr courante (compatible multicompany). Les modifications s’appliquent à tous les utilisateurs dès la prochaine page chargée. 4.07 Valeurs / Filtres / Tris par défaut Chemin : Administration > Configuration > Valeurs/filtres/tris par défaut (/admin/defaultvalues.php) Cette page permet de définir des comportements par défaut pour les formulaires de création, les listes et les champs de saisie, sans modifier les fichiers sources. Un interrupteur global active ou désactive l’ensemble du mécanisme (constante MAIN_ENABLE_DEFAULT_VALUES). Lorsqu’il est désactivé, aucune règle n’est appliquée. La page est organisée en 5 onglets. Toutes les règles sont stockées en base de données et s’appliquent globalement à tous les utilisateurs de l’entité. Note : Règle importante pour l’URL relative : pour les modules dans le répertoire custom/, n’incluez pas le préfixe custom/. Utilisez monmodule/mapage.php et non custom/monmodule/mapage.php. Vous pouvez aussi restreindre une règle à une URL avec paramètres spécifiques : societe/card.php?abc=val1&def=val2 — la règle ne s’applique alors que si tous ces paramètres sont présents. Onglet 1 – Valeurs par défaut sur les formulaires de création : Permet de pré-remplir automatiquement des champs dans les formulaires de création d’enregistrements. Condition d’activation : le remplacement ne fonctionne que pour les pages qui reçoivent le paramètre action=create ou action=presend dans leur URL. Variables de substitution disponibles dans le champ Valeur : Variable Description __USER_ID__ Identifiant de l’utilisateur connecté __USER_LOGIN__ Login de l’utilisateur connecté __USER_LASTNAME__ Nom de l’utilisateur connecté __USER_FIRSTNAME__ Prénom de l’utilisateur connecté __DATE_TODAY__ Date du jour __ENTITY_ID__ Identifiant de l’entité courante Exemple pratique : pour pré-remplir automatiquement un extrafield liste déroulante d’utilisateurs nommé options_signature avec l’utilisateur connecté, saisissez la valeur __USER_ID__. Pour retrouver le nom du champ HTML, faites un clic droit sur l’élément dans le navigateur et choisissez Inspecter. Figure 4.18 – Configuration d’une valeur par défaut avec constante de substitution Onglet 2 – Filtres de recherche par défaut : Permet de pré-remplir les champs de filtre dans les pages de liste, afin qu’une recherche prédéfinie soit active à l’ouverture de la liste. Cas d’usage type : afficher uniquement les tiers actifs à l’ouverture de la liste clients, sans que l’utilisateur ait à saisir le filtre manuellement. Renseignez societe/list.php comme URL et search_status comme champ. Les mêmes variables de substitution que l’onglet 1 sont disponibles pour les valeurs de filtre. Onglet 3 – Ordre de tri par défaut : Permet de définir le tri appliqué par défaut à l’ouverture d’une page de liste. Avertissement : Le réglage d’un ordre de tri par défaut peut provoquer une erreur technique si le champ indiqué n’existe pas dans la liste. En cas d’erreur, revenez dans cet onglet pour supprimer la règle et restaurer le comportement natif. Pour les colonnes issues de jointures SQL, utilisez la syntaxe alias.champ (ex. s.nom, datec). Onglet 4 – Champs par défaut ayant le focus : Permet de définir quel champ reçoit automatiquement le focus (curseur actif) à l’ouverture d’une page. Cas d’usage type : placer le curseur automatiquement sur le champ « Nom » lors de la création d’un tiers. Cet onglet ne comporte pas de colonne Valeur : seul l’identifiant HTML du champ est nécessaire. Onglet 5 – Champs de formulaire obligatoires : Permet de rendre obligatoire un champ qui ne l’est pas nativement dans Dolibarr™. Dolibarr™ bloque la soumission du formulaire si le champ est vide, de la même façon que pour les champs obligatoires natifs. Note : Cette fonctionnalité est supportée uniquement sur les champs de type texte. 4.08 Widgets Chemin : Administration > Configuration > Widgets (/admin/boxes.php) Les widgets sont des composants d’information que les utilisateurs peuvent afficher sur leurs pages pour les personnaliser. Seuls les widgets liés à un module actif sont présentés. La page affiche un tableau unique regroupant deux catégories : 1. Widgets disponibles — non encore activés, proposés en haut du tableau 2. Widgets activés — actifs par défaut pour tous les utilisateurs, avec leur position et leurs contrôles de gestion Note : Les widgets activés définissent l’affichage par défaut pour tous les utilisateurs. Chaque utilisateur peut ensuite personnaliser sa propre vue depuis son tableau de bord — ces choix personnels ne sont pas affectés par les modifications du tableau de bord par défaut. Pour activer un widget : repérez-le dans la partie haute du tableau, sélectionnez la page cible dans la liste déroulante, puis cliquez sur Activer. Les widgets signalés par une icône d’avertissement peuvent ralentir l’interface s’ils effectuent des requêtes lourdes. À activer avec précaution sur des bases volumineuses. Liste des widgets disponibles dans Dolibarr™ 24 # Widget Graphique 1 Informations de connexion 2 Commandes fournisseurs par mois � 3 Plus anciennes factures fournisseurs impayées 4 Dernières commandes fournisseur 5 Plus anciennes factures clients impayées 6 Factures clients par mois � 7 Balance des comptes ouverts 8 Produits en alerte de stock 9 Dernières interventions 10 Anniversaires de ce mois (utilisateurs) 11 Événements les plus anciens à faire 12 Derniers clients modifiés 13 Derniers contacts/adresses 21 Dernières factures clients 22 Clients dont l’en-cours de facturation est dépassé 23 Les derniers produits/services enregistrés 24 Répartition des produits/services � 25 Plus anciens services expirés 26 Statistiques sur les principaux objets métier 27 Les prochains événements à venir 28 Derniers prospects modifiés 29 Proposition par mois � 30 Dernières commandes clients 31 Dernières expéditions clients 32 Les derniers produits/services contractés Cache des fichiers widgets En bas de page, une option permet d’activer la mise en cache du contenu des widgets dans des fichiers temporaires (constante MAIN_ACTIVATE_FILECACHE , durée : 900 secondes soit 15 minutes). Réduit la charge serveur pour les widgets affichant des données calculées. 4.09 Alertes Chemin : Administration > Configuration > Alertes (/admin/delais.php) Cette page permet de définir les délais de tolérance au-delà desquels une icône d’alerte est affichée sur chaque élément en retard dans l’interface. Seuls les éléments liés à un module actif sont présentés. Valeur 0 : l’alerte s’affiche dès le premier jour de retard, sans délai de grâce. Tableau des délais de tolérance Élément Constante Défaut Événements planifiés MAIN_DELAY_ACTIONS_TODO 7j (agenda) non terminés Projets à fermer MAIN_DELAY_PROJECT_TO_CLOSE — Tâches à faire MAIN_DELAY_TASKS_TODO — Proposition non fermée MAIN_DELAY_PROPALS_TO_CLOSE 31 j Proposition non facturée MAIN_DELAY_PROPALS_TO_BILL 7j Commande non traitée MAIN_DELAY_ORDERS_TO_PROCESS 2j Facture client impayée MAIN_DELAY_CUSTOMER_BILLS_UNPAYED 31 j Commande fournisseur non MAIN_DELAY_SUPPLIER_ORDERS_TO_PROCESS 7j traitée Facture fournisseur impayée MAIN_DELAY_SUPPLIER_BILLS_TO_PAY 2j Fournisseur devis non fermé MAIN_DELAY_SUPPLIER_PROPALS_TO_CLOSE 0j Fournisseur devis pas MAIN_DELAY_SUPPLIER_PROPALS_TO_BILL 0j facturé Service à activer MAIN_DELAY_NOT_ACTIVATED_SERVICES 0j Service expiré MAIN_DELAY_RUNNING_SERVICES 0j Rapprochement bancaire en MAIN_DELAY_TRANSACTIONS_TO_CONCILIATE 62 j attente Dépôt de chèque non MAIN_DELAY_CHEQUES_TO_DEPOSIT 0j effectué Adhérents MAIN_DELAY_MEMBERS 0j Notes de frais MAIN_DELAY_EXPENSEREPORTS — Congés MAIN_DELAY_HOLIDAYS — Fabrication (MRP) MAIN_DELAY_MRP — Vignette météo La vignette météo est un indicateur visuel affiché sur le tableau de bord qui reflète l’état global de l’activité en fonction du nombre (ou du pourcentage) d’éléments en retard. Option Constante Désactiver la vignette (Non / Oui / Sur mobile MAIN_DISABLE_METEO uniquement) Deux modes de calcul sont disponibles : Mode Constante Standard (nombre absolu d’éléments en retard) MAIN_USE_METEO_WITH_PERCENTAGE = 0 Pourcentage d’éléments en retard MAIN_USE_METEO_WITH_PERCENTAGE = 1 Seuils en mode standard : Icône Condition Constante Défaut � Soleil Nombre en retard � MAIN_METEO_LEVEL0 0 seuil 0 � Soleil voilé Nombre en retard � MAIN_METEO_LEVEL1 10 seuil 1 � Nuageux Nombre en retard � MAIN_METEO_LEVEL2 20 seuil 2 � Pluie Nombre en retard � MAIN_METEO_LEVEL3 30 seuil 3 � Orage Nombre en retard > — — seuil 3 4.10 Sécurité Chemin : Administration > Configuration > Sécurité Accès : Administrateurs uniquement Cette page regroupe l’ensemble des paramètres de sécurité de Dolibarr™, organisés en 8 onglets depuis la v24. Important : Chaque onglet dispose de son propre bouton de sauvegarde (MODIFIER ou ENREGISTRER). Les modifications sont effectives immédiatement pour tous les utilisateurs. Onglet 1 – Divers Paramètre Constante Défaut Utiliser les autorisations MAIN_USE_ADVANCED_PERMS Off avancées des modules Délai expiration des MAIN_SESSION_TIMEOUT 1440 s sessions (secondes) Nombre max. d’images MAIN_SECURITY_MAX_IMG_IN_HTML_CONTENT 0 dans un champ HTML Nombre max. de 200 MAIN_SECURITY_MAX_POST_ON_PUBLIC_PAGES_BY_IP_ADDRESS publications par IP en un mois Nombre max. de fichiers MAIN_SECURITY_MAX_ATTACHMENT_ON_FORMS 10 joints dans un formulaire Nombre max. d’échecs MAIN_SECURITY_MAX_NUMBER_FAILED_AUTH 100 d’authentification en 24h Comment configurer le délai d’expiration des sessions ? Rendez-vous dans Administration > Configuration > Sécurité > Onglet 1 — Divers et renseignez le champ Délai expiration des sessions (constante MAIN_SESSION_TIMEOUT ). La valeur par défaut est 1440 secondes (24 minutes). Si ce champ n’est pas surchargé, Dolibarr™ suit la valeur session.gc_maxlifetime définie dans la configuration PHP de votre serveur. Cliquez sur MODI- FIER pour appliquer immédiatement le nouveau délai à tous les utilisateurs. Comment configurer les autorisations avancées dans l’onglet Divers ? Activez l’option Utiliser les autorisations avancées des modules (constante MAIN_USE_ADVANCED_PERMS ) dans l’onglet Divers. Cela débloque un niveau de droits supplémentaire et plus granulaire : les permissions standard se limitent à « Lire », « Créer/Modifier », « Supprimer », tandis que les permissions avancées ajoutent des droits précis comme « Valider », « Envoyer par email », « Clôturer »… Une fois activée, rendez-vous dans Accueil > Utilisateurs & Groupes pour attribuer ces nouvelles permissions fines depuis l’onglet Permissions de chaque utilisateur ou groupe. Onglet 2 – Captcha Protège les formulaires publics de Dolibarr™ contre les robots. Les options disponibles dépendent des modules actifs. Formulaire protégé Constante Page de connexion MAIN_SECURITY_ENABLECAPTCHA Formulaire public de contact tiers MAIN_SECURITY_ENABLECAPTCHA_THIRDPARTY Création de ticket public MAIN_SECURITY_ENABLECAPTCHA_TICKET Adhésion publique MAIN_SECURITY_ENABLECAPTCHA_MEMBER Formulaire de don public MAIN_SECURITY_ENABLECAPTCHA_DONATION Formulaire de recrutement public MAIN_SECURITY_ENABLECAPTCHA_RECRUITMENT Si au moins un CAPTCHA est activé, une seconde section permet de choisir le moteur de génération (handler). Le moteur disponible par défaut est Standard (image générée en interne — la bibliothèque PHP GD est requise). Constante du handler : MAIN_SECURITY_ENABLECAPTCHA_HANDLER . Quelles sont les limites contre les attaques par force brute ? Dolibarr™ propose plusieurs mécanismes complémentaires : Limitation des échecs : après 100 échecs en 24h (constante MAIN_SECURITY_MAX_NUMBER_FAILED_AUTH, onglet Divers), la connexion est systématiquement refusée pour le compte concerné. CAPTCHA : activez-le sur la page de connexion pour bloquer les soumissions automatisées par des scripts malveillants. Complexité des mots de passe : forcez des règles dans l’onglet Mots de passe pour rendre les attaques par dictionnaire beaucoup plus longues. Délégation OIDC : en utilisant OpenID Connect, vous déléguez l’authentification à un fournisseur externe (Google, Keycloak…) qui dispose de ses propres systèmes de détection de force brute. Journal d’audit : l’onglet Événements de sécurité trace les échecs de connexion (USER_LOGIN_FAILED), permettant de surveiller et analyser les tentatives d’attaque. Onglet 3 – Mots de passe Règle de génération — un seul handler actif à la fois (interrupteur radio) : Handler Description Longueur min. Constante Perso Règles Selon config USER_PASSWORD_GENERATED personnalisables = Perso Standard 12 caractères, 12 USER_PASSWORD_GENERATED algorithme interne = Standard None Aucune suggestion 0 USER_PASSWORD_GENERATED saisie libre = None Configuration du handler Perso (constante USER_PASSWORD_PATTERN, format : longueur;majMin;numMin;speMin;consec Champ Description Longueur minimale Nombre minimum de caractères (min 1) Nb min. majuscules/minuscules Nombre de changements de casse requis Nb min. chiffres Nombre de chiffres requis Nb min. caractères spéciaux Nombre de symboles requis Nb max. caractères consécutifs identiques Limite les répétitions (ex. « aaa ») Pas de caractères ambigus Exclut les caractères difficiles à distinguer (0/O, 1/l…) Paramètres de chiffrement : Paramètre Description Chiffrer les mots de passe en base Hash MD5/bcrypt — irréversible une fois activé Masquer le mot de passe BDD dans conf.php Chiffre dolibarr_main_db_pass dans le fichier de configuration Cacher le lien « Mot de passe oublié » Masque le lien de réinitialisation sur la page de connexion (MAIN_SECURITY_DISABLEFORGETPASSLINK) Comment définir des règles de complexité pour les mots de passe ? Rendez-vous dans Administration > Configuration > Sécurité > Onglet 3 — Mots de passe. Activez le handler Perso pour définir vos propres critères via la constante USER_PASSWORD_PATTERN. Renseignez : longueur minimale, nb min. de majuscules, de chiffres, de caractères spéciaux, nombre max. de caractères consécutifs identiques, et si vous souhaitez exclure les caractères ambigus (0/O, 1/l…). Il est fortement recommandé d’activer aussi Chiffrer les mots de passe en base (hash bcrypt) attention, cette action est irréversible. Cliquez sur le bouton de sauvegarde pour que ces nouvelles règles s’appliquent immédiatement à tous les utilisateurs. Comment activer le chiffrement de la base de données dans conf.php ? Rendez-vous dans Administration > Configuration > Sécurité > Onglet 3 — Mots de passe. Localisez la ligne Masquer le mot de passe BDD dans conf.php et cliquez sur Activer. Dolibarr™ transforme la variable $dolibarr_main_db_pass de votre fichier htdocs/conf/conf.php en une version chiffrée. Note importante : avant d’effectuer cette opération, assurez-vous que votre fichier conf.php est temporairement accessible en écriture par le serveur web. Une fois l’activation terminée, remettez le fichier en lecture seule. Onglet 4 – Fichiers Paramètre Constante Défaut Taille maximale des fichiers MAIN_SECURITY_MAXFILESIZE_DOWNLOADED — téléchargés (Ko) Taille maximale des fichiers MAIN_UPLOAD_DOC 2048 Ko envoyés (Ko) Masque des nouveaux MAIN_UMASK 0660 fichiers (Unix/Linux) Extensions interdites au htm,html,php,js,py,cgi… MAIN_FILE_EXTENSION_UPLOAD_RESTRICTION téléversement Utiliser l’antivirus sur les MAIN_ANTIVIRUS_UPLOAD_ON Off fichiers téléversés Astuce : La taille maximale des fichiers envoyés ne peut pas dépasser la limite définie dans votre php.ini (paramètre upload_max_filesize). Quelles sont les extensions de fichiers interdites au téléversement ? Par défaut, les extensions suivantes sont refusées pour empêcher l’envoi de scripts malveillants : Web et Scripts : htm, html, js Programmation et Exécutables : php, py (Python), cgi Extensions supplémentaires (selon les versions récentes) : shtml, phar, php3, php4, php5 La liste est stockée dans la constante MAIN_FILE_EXTENSION_UPLOAD_RESTRICTION. L’administrateur peut la personnaliser en ajoutant ou supprimant des extensions, séparées par des virgules. Comment fonctionne l’antivirus pour les fichiers téléversés ? Lorsqu’un utilisateur ajoute un document, Dolibarr™ intercepte le fichier avant son enregistrement définitif et l’envoie pour analyse au logiciel de sécurité configuré. Si le moteur antivirus détecte une menace, le téléversement est immédiatement refusé. Configuration (onglet 4 — Fichiers) : Activation : basculez MAIN_ANTIVIRUS_UPLOAD_ON sur ON. Commande antivirus : indiquez le chemin complet vers l’exécutable (ex. /usr/bin/clamscan pour ClamAV sous Linux, ClamWin sous Windows). Paramètres antivirus : saisissez les arguments nécessaires (ex. --no-summary -r). Test : un formulaire de test d’envoi de fichier est disponible en bas de la page pour vérifier la configuration en conditions réelles. Dolibarr™ ne fournit pas son propre moteur de détection — il pilote l’appel à l’outil système lors de chaque téléversement. Onglet 5 – Accès externes (Proxy) Si le serveur Dolibarr™ doit passer par un proxy pour accéder à Internet (mises à jour, cours des devises, météo…), configurez ici les paramètres de connexion. Paramètre Constante Défaut Timeout de connexion MAIN_USE_CONNECT_TIMEOUT 10 (secondes) Délai expiration de réponse MAIN_USE_RESPONSE_TIMEOUT 30 (secondes) Utiliser un serveur proxy MAIN_PROXY_USE Non Nom/Adresse du proxy MAIN_PROXY_HOST — Port du proxy MAIN_PROXY_PORT 0 Identifiant proxy MAIN_PROXY_USER — Mot de passe proxy MAIN_PROXY_PASS — Onglet 6 – Événements de sécurité Active l’enregistrement d’un journal d’audit pour les événements de sécurité sensibles. Chaque événement s’active individuellement. Avertissement : Cette fonctionnalité peut générer un volume important de données en base selon le nombre d’événements activés et l’activité de votre instance. Événement Description Constante USER_LOGIN Connexion réussie MAIN_LOGEVENTS_USER_LOGIN USER_LOGIN_FAILED Échec de connexion MAIN_LOGEVENTS_USER_LOGIN_FAILED USER_LOGOUT Déconnexion MAIN_LOGEVENTS_USER_LOGOUT USER_CREATE Création d’un utilisateur MAIN_LOGEVENTS_USER_CREATE USER_MODIFY Modification d’un utilisateur MAIN_LOGEVENTS_USER_MODIFY USER_NEW_PASSWORD Nouveau mot de passe généré MAIN_LOGEVENTS_USER_NEW_PASSWORD USER_ENABLEDISABLE Activation/désactivation d’un MAIN_LOGEVENTS_USER_ENABLEDISABLE compte USER_DELETE Suppression d’un utilisateur MAIN_LOGEVENTS_USER_DELETE USERGROUP_CREATE Création d’un groupe MAIN_LOGEVENTS_USERGROUP_CREATE USERGROUP_MODIFY Modification d’un groupe MAIN_LOGEVENTS_USERGROUP_MODIFY USERGROUP_DELETE Suppression d’un groupe MAIN_LOGEVENTS_USERGROUP_DELETE Où consulter le journal d’audit des événements de sécurité ? Le journal d’audit est consultable dans Accueil > Outils d’administration > Événements de sécurité. L’activation de l’enregistrement se fait dans Administration > Configuration > Sécurité > Onglet 6 — Événements de sécurité (/admin/events.php). Dans les versions récentes (v23 et v24), le journal consigne également l’installation (ou la tentative d’installation) d’un module. Note : si vous utilisez le module Archives/Logs Inaltérables (conformité Loi Finance), les événements liés aux factures et paiements sont gérés dans un journal spécifique et distinct, accessible via le menu dédié à ce module. Onglet 7 – Paramètres d’authentification OpenID Connect Permet à Dolibarr™ de déléguer l’authentification à un fournisseur d’identité OpenID Connect pour mettre en place du SSO (Single Sign-On). Lorsque l’option est activée (toggle ON/OFF), des champs de configuration supplémentaires apparaissent pour saisir les paramètres du fournisseur (URL, client ID, secret, etc.). Exemples de fournisseurs compatibles : Keycloak, Google, Microsoft Entra ID. Note : L’intégration native OpenID Connect est une nouveauté v24, remplaçant les anciens modules externes. Elle permet une authentification déléguée sans installation de module tiers. Onglet 8 – En-têtes de sécurité HTTP Réservé aux utilisateurs avancés. Un en-tête mal configuré peut rendre Dolibarr™ inaccessible ou bloquer des ressources légitimes. En-tête HTTP Description Constante Referer-Policy Contrôle les informations de MAIN_SECURITY_FORCERP référencement transmises lors des navigations Strict-Transport-Security (HSTS) Force l’utilisation de HTTPS MAIN_SECURITY_FORCESTS Permissions-Policy Contrôle l’accès aux API MAIN_SECURITY_FORCEPP navigateur (caméra, micro…) Content-Security-Policy (CSP) Déclare les sources autorisées MAIN_SECURITY_FORCECSP pour scripts, styles, images… Astuce : Le bouton + sur le champ CSP ouvre un assistant visuel pour ajouter des directives et sources sans saisie manuelle. Dolibarr™ injecte automatiquement script-src 'self' 'unsafe-inline' et style-src 'self' 'unsafe-inline' pour ne pas bloquer son propre fonctionnement. Permissions par défaut Sous l’onglet Permissions par défaut, vous définissez les droits automatiquement attribués à chaque nouvel utilisateur créé. Cliquez sur + pour accorder une permission par défaut, et sur − pour la retirer. Avertissement : Ces réglages ne s’appliquent qu’aux nouveaux utilisateurs. Pour modifier les permissions d’un utilisateur ou groupe existant, allez sur sa fiche dans Accueil > Utilisateurs & Groupes. Comment gérer les permissions par défaut des nouveaux utilisateurs ? Rendez-vous dans Accueil > Configuration > Sécurité > Permissions par défaut. L’interface présente tous les modules activés avec leurs actions possibles. Cliquez sur + pour qu’une permission soit donnée par défaut à tous les futurs utilisateurs. Cliquez sur - pour supprimer cette permission de la configuration par défaut. Points importants : - Ces réglages n’ont aucun effet sur les utilisateurs déjà existants. - Configurez cette section après avoir activé tous les modules souhaités — la liste des droits disponibles dépend des modules actifs. - Si vous avez activé les autorisations avancées (onglet Divers), des permissions plus fines (valider, envoyer par mail…) apparaissent également dans cette liste. 4.11 Sauvegarde Anticipez les problèmes (plantage serveur, mise à jour échouée) en utilisant les outils de sauvegarde intégrés. Chemin : Configuration > Outils d’administration > Sauvegarde Gardez les réglages par défaut et cliquez sur Générer Sauvegarde. Figure 4.19 – Outil de sauvegarde de la base de données Á Avertissement Pensez à récupérer le fichier et à le placer ailleurs que sur le serveur, sinon la sauvegarde n’aura servi à rien ! La sauvegarde complète inclut : La base de données (via l’outil de sauvegarde) Le dossier documents/ — contient vos logos et tous les documents générés ou uploadés Le fichier conf/conf.php — fait le lien avec votre base de données ; sans lui, vous repartez de zéro Le dossier custom/ — contient vos modules externes Accès HTTPS local (pour les Logs Inaltérables) Pour utiliser les Archives/Logs Inaltérables, Dolibarr™ doit être accessible via HTTPS. Voici les étapes pour configurer HTTPS en local avec XAMPP et mkcert. Figure 4.20 – Commandes mkcert pour générer un certificat local Déclarer le domaine local Éditez C:\Windows\System32\drivers\etc\hosts et ajoutez : 127.0.0.1 dolibarr-230.local Installer mkcert Téléchargez mkcert.exe depuis les releases officielles GitHub et placez-le dans C:\tools\mkcert\. Installer l’autorité locale (CA) cd C:\tools\mkcert .\mkcert.exe -install Générer le certificat SSL mkdir C:\xampp\apache\conf\ssl-dolibarr cd C:\xampp\apache\conf\ssl-dolibarr C:\tools\mkcert\mkcert.exe dolibarr-230.local Fichiers générés : dolibarr-230.local.pem et dolibarr-230.local-key.pem Activer SSL dans Apache Dans C:\xampp\apache\conf\httpd.conf, vérifiez que ces lignes sont actives : LoadModule ssl_module modules/mod_ssl.so LoadModule socache_shmcb_module modules/mod_socache_shmcb.so Include conf/extra/httpd-ssl.conf Include conf/extra/httpd-vhosts.conf Ajouter le VirtualHost HTTPS Dans C:\xampp\apache\conf\extra\httpd-vhosts.conf : ServerName dolibarr-230.local DocumentRoot "C:/xampp/htdocs/dolibarr-230/htdocs" AllowOverride All Require all granted SSLEngine on SSLCertificateFile "C:/xampp/apache/conf/ssl-dolibarr/dolibarr-230.local.pem" SSLCertificateKeyFile "C:/xampp/apache/conf/ssl-dolibarr/dolibarr-230.local-key.pem" ServerName dolibarr-230.local Redirect permanent / https://dolibarr-230.local/ Redémarrer Apache Depuis le panneau de contrôle XAMPP : Stop Apache puis Start Apache. Vérifier HTTPS côté PHP Créez tests_https.php dans votre DocumentRoot : Configuration > Limites et précision (/admin/limits.php) Cette page permet de définir le nombre de décimales utilisé par Dolibarr™ lors des calculs et de l’affichage des prix, ainsi que la règle d’arrondi appliquée aux totaux. Une section d’exemples live permet de vérifier immédiatement l’impact de chaque réglage avant de valider. Paramètre Constante Défaut Description Décimales prix MAIN_MAX_DECIMALS_UNIT 5 Précision des prix unitaires unitaires (max 8) Décimales prix MAIN_MAX_DECIMALS_TOT 2 Précision des prix totaux totaux HT/TVA/TTC (max 8) Décimales affichées à MAIN_MAX_DECIMALS_SHOWN 8 Décimales visibles l’écran par l’utilisateur Pas d’arrondi MAIN_ROUNDING_RULE_TOT vide Pour les pays sans monnaie décimale en base 10 Ĺ Note La constante MAIN_MAX_DECIMALS_SHOWN accepte une valeur étendue sous la forme x... (ex. 2...). Dans ce cas, Dolibarr™ affiche les x premières décimales puis remplace les suivantes par des points de suspension, indiquant que la valeur est tronquée pour l’affichage sans perte de précision interne. Contraintes de validation : - Aucune valeur ne peut être négative ni dépasser 8 - MAIN_MAX_DECIMALS_SHOWN ne peut pas être 0 - MAIN_MAX_DECIMALS_SHOWN doit être supérieur ou égal à MAIN_MAX_DECIMALS_UNIT et MAIN_MAX_DECIMALS_TOT Ď Astuce Pour la France, les valeurs standard recommandées sont : Constante Valeur recommandée MAIN_MAX_DECIMALS_UNIT 5 MAIN_MAX_DECIMALS_TOT 2 MAIN_MAX_DECIMALS_SHOWN 8 (ou 2...) MAIN_ROUNDING_RULE_TOT vide Á Avertissement Un mauvais réglage de ces paramètres peut provoquer des écarts d’arrondi sur les totaux de factures (ex. : total TTC � HT + TVA). Vérifiez toujours les exemples affichés en bas de page après toute modification. Support multidevise : lorsque le module Multi-devise est activé avec MULTICURRENCY_USE_LIMIT_BY_CURRENCY, la page affiche un onglet par devise configurée. Les quatre constantes prennent alors un suffixe avec le code ISO de la devise (ex. MAIN_MAX_DECIMALS_UNIT_EUR, MAIN_MAX_DECIMALS_TOT_USD…). 4.13 PDF Chemin : Administration > Configuration > PDF (/admin/pdf.php) Cette page regroupe tous les paramètres globaux de génération des documents PDF dans Dolibarr™. Elle est divisée en deux onglets. Onglet URL Description Paramètres globaux /admin/pdf.php Options communes à tous les PDF générés Paramètres spécifiques /admin/pdf_other.php Options propres à chaque module Onglet 1 – Paramètres globaux Format papier et marges : Paramètre Constante Défaut Format papier MAIN_PDF_FORMAT A4 (210×297 mm) Marge gauche (mm) MAIN_PDF_MARGIN_LEFT 10 Marge droite (mm) MAIN_PDF_MARGIN_RIGHT 10 Marge haute (mm) MAIN_PDF_MARGIN_TOP 10 Marge basse (mm) MAIN_PDF_MARGIN_BOTTOM 10 Règles pour les sections Adresse : Paramètre Constante Défaut Masquer le numéro de TVA MAIN_TVAINTRA_NOT_IN_ADDRESS Off intracommunautaire Afficher Id. prof. 1 (SIREN) MAIN_PROFID1_IN_ADDRESS Off Afficher Id. prof. 2 (SIRET) MAIN_PROFID2_IN_ADDRESS Off Afficher Id. prof. 3 MAIN_PROFID3_IN_ADDRESS Off (NAF/APE) Afficher Id. prof. 4 MAIN_PROFID4_IN_ADDRESS Off (RCS/RM) Afficher Id. prof. 5 (numéro MAIN_PROFID5_IN_ADDRESS Off EORI) Afficher Id. prof. 6 (numéro MAIN_PROFID6_IN_ADDRESS Off RNA) Afficher la forme juridique MAIN_LEGALFORM_IN_ADDRESS Off Masquer les bordures du MAIN_PDF_NO_SENDER_FRAME Off cadre expéditeur Masquer les bordures du MAIN_PDF_NO_RECIPIENT_FRAME Off cadre destinataire Inverser expéditeur et MAIN_INVERT_SENDER_RECIPIENT Off destinataire Paramètre Constante Défaut Position standard française MAIN_PDF_USE_ISO_LOCATION Off (La Poste) Règles TVA : Paramètre Constante Défaut Masquer toutes les MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT Off informations TVA Masquer la taxe locale 1 MAIN_PDF_MAIN_HIDE_SECOND_TAX Off (LT1) Masquer la taxe locale 2 MAIN_PDF_MAIN_HIDE_THIRD_TAX Off (LT2) Autres options globales : Paramètre Constante Défaut Afficher les libellés en 2 PDF_USE_ALSO_LANGUAGE_CODE vide langues Hauteur du logo (mm) MAIN_DOCUMENTS_LOGO_HEIGHT 20 Cadres aux coins arrondis MAIN_PDF_FRAME_CORNER_RADIUS 0 (0, 1, 2 ou 3) Cacher le code client MAIN_PDF_HIDE_CUSTOMER_CODE Off Cacher la référence des MAIN_GENERATE_DOCUMENTS_HIDE_REF Off produits Cacher la description des MAIN_GENERATE_DOCUMENTS_HIDE_DESC Off produits Cacher les détails des prix MAIN_GENERATE_DOCUMENTS_HIDE_DETAILS Off sur lignes Informations dans le pied MAIN_GENERATE_DOCUMENTS_SHOW_FOOT_DETAILS 0 de page (0/1/2/3) Format des documents PDF_USE_A 0 PDF (1.7 / PDF/A-1b / PDF/A-3b) Ĺ Note Le format PDF/A-3b permet d’embarquer des pièces jointes XML (ex. : Factur-X pour la facturation électronique). La fonctionnalité de concaténation PDF (CGV en fin de document) nécessite la bibliothèque FPDI ou TCPDI. Onglet 2 – Paramètres spécifiques Chaque section n’apparaît que si le module correspondant est activé. Les principaux paramètres disponibles par type de document : Factures — options notables : Paramètre Constante Afficher la colonne Prix TTC PDF_INVOICE_SHOW_PRICE_INCL_TAX Afficher le code QR ZATCA (Arabie Saoudite) INVOICE_ADD_ZATCA_QR_CODE Afficher le code QR EPC (virement SEPA INVOICE_ADD_EPC_QR_CODE instantané) Afficher le QR-Bill suisse INVOICE_ADD_SWISS_QR_CODE Mention « catégorie d’opérations » (décret français INVOICE_CATEGORY_OF_OPERATION 2022) Á Avertissement Les QR codes ZATCA et Swiss QR sont mutuellement exclusifs : activer l’un désactive automatiquement l’autre. Chaque type de document (propositions, commandes clients, contrats, factures, commandes fournisseur, expéditions, réceptions) dispose de ses propres options : affichage du prix TTC, image des produits sur les lignes, adresse de livraison, et concaténation d’un PDF CGV en fin de document. 4.14 Emails Chemin : Administration > Configuration > Emails (/admin/mails.php) Cette page centralise la configuration de l’envoi et de la réception des emails dans Dolibarr™. Elle est divisée en cinq onglets. Onglet URL Description E-mails sortants /admin/mails.php Configuration principale du transport email Emails sortants (Réinitialisation /admin/mails_passwordreset.php Transport dédié aux emails de mdp) réinitialisation Expéditeur des e-mails Liste des profils expéditeurs /admin/mails_senderprofile_list.php réutilisables Modèles des courriels /admin/mails_templates.php Bibliothèque de modèles d’emails E-mails entrants /admin/mails_ingoing.php Configuration de la réception (collecteur) Onglet 1 – E-mails sortants Interrupteur global : MAIN_DISABLE_ALL_MAILS — bloque tous les envois d’emails. Utile pour les environnements de test. Méthodes d’envoi disponibles : Méthode Description PHP mail function Fonction native PHP — non recommandée en production SMTP/SMTPS socket library Connexion SMTP directe Swift Mailer socket library Bibliothèque Swift Mailer avec support DKIM Á Avertissement La méthode PHP mail function est déconseillée en production car elle dépend de la configuration locale du serveur, peut être bloquée par les filtres antispam et ne supporte pas l’authentification SMTP. Dolibarr™ affiche un avertissement si cette méthode est sélectionnée. Paramètres de transport SMTP : Paramètre Constante Défaut Méthode d’envoi MAIN_MAIL_SENDMODE mail Serveur SMTP MAIN_MAIL_SMTP_SERVER (valeur php.ini) Port SMTP MAIN_MAIL_SMTP_PORT 25 Type d’authentification MAIN_MAIL_SMTPS_AUTH_TYPE LOGIN (NONE/LOGIN/PLAIN/XOAUTH2) Identifiant SMTP MAIN_MAIL_SMTPS_ID vide Mot de passe SMTP MAIN_MAIL_SMTPS_PW vide Service OAuth (si MAIN_MAIL_SMTPS_OAUTH_SERVICE vide XOAUTH2) Chiffrement TLS (port 465) MAIN_MAIL_EMAIL_TLS Off Chiffrement STARTTLS MAIN_MAIL_EMAIL_STARTTLS Off (port 587) Autoriser les certificats MAIN_MAIL_EMAIL_SMTP_ALLOW_SELF_SIGNED Off autosignés Ĺ Note TLS et STARTTLS sont mutuellement exclusifs : activer l’un désactive l’autre automatiquement. DKIM n’est disponible qu’avec la méthode Swift Mailer. Options DKIM (uniquement avec Swift Mailer) : Paramètre Constante Activer DKIM MAIN_MAIL_EMAIL_DKIM_ENABLED Domaine DKIM MAIN_MAIL_EMAIL_DKIM_DOMAIN Sélecteur DKIM MAIN_MAIL_EMAIL_DKIM_SELECTOR Clé privée DKIM (format PEM) MAIN_MAIL_EMAIL_DKIM_PRIVATE_KEY Autres options : Paramètre Constante Défaut Rediriger tous les emails MAIN_MAIL_FORCE_SENDTO vide vers une adresse test E-mail de l’expéditeur MAIN_MAIL_EMAIL_FROM robot@domain.com automatique Expéditeur par défaut (user MAIN_MAIL_DEFAULT_FROMTYPE user / company / profil) E-mail pour les retours MAIN_MAIL_ERRORS_TO vide d’erreur (bounces) Copie cachée systématique MAIN_MAIL_AUTOCOPY_TO vide (Bcc) Ď Astuce Le bouton TESTER DISPONIBILITÉ SERVEUR teste si le serveur SMTP est joignable (connexion TCP sur le port configuré). Les boutons TESTER ENVOI et TESTER ENVOI HTML permettent d’envoyer un email de test. Un lien en bas de page permet de vérifier les enregistrements DNS SPF et DMARC des domaines utilisés. Onglet 2 – Emails de réinitialisation du mot de passe Permet de définir une configuration SMTP distincte utilisée exclusivement pour les emails de réinitialisation de mot de passe. Pratique pour utiliser un serveur transactionnel à haute délivrabilité pour ces emails critiques. Lorsque la méthode est default, Dolibarr™ utilise la configuration de l’onglet principal. Les constantes sont identiques à l’onglet 1 avec le suffixe _PASSWORDRESET (ex. MAIN_MAIL_SENDMODE_PASSWORDRESET, MAIN_MAIL_SMTP_SERVER_PASSWORDRESET…). Onglet 3 – Expéditeur des e-mails Gère la liste des profils expéditeurs de la table llx_c_email_senderprofile. Chaque profil est une identité d’envoi réutilisable qui apparaît dans la liste déroulante de l’expéditeur lors de la composition d’un email. Colonne Description Libellé Nom du profil (ex. « Service commercial », « Support ») Email Adresse email de l’expéditeur Utilisateur Si renseigné, le profil est privé et réservé à cet utilisateur Position Ordre d’affichage dans la liste déroulante État Actif / Inactif Chaque profil peut inclure une signature HTML qui sera utilisée à la place de la signature personnelle de l’utilisateur lors de l’envoi avec ce profil. Onglet 4 – Modèles des courriels Liste les modèles d’emails définis dans Dolibarr™, utilisés pour pré-remplir le sujet et le corps des emails envoyés depuis les différents modules. Les modèles peuvent utiliser des variables de substitution du type __MAIN_INFO_SOCIETE_NOM__, __REF__, __LASTNAME__… qui sont remplacées dynamiquement au moment de l’envoi. Colonne Description Libellé Nom du modèle Langue Langue du modèle (vide = toutes langues) Type de modèle Type de document associé (Factures, Propositions…) Propriétaire Utilisateur propriétaire si modèle privé Joindre le fichier Indique si le PDF lié doit être joint automatiquement Défaut Si activé, ce modèle est présélectionné par défaut Onglet 5 – E-mails entrants La réception des emails est gérée par le module Collecteur de courrier électronique. Activez et configurez ce module si vous avez besoin de prendre en charge les messages entrants. Le module Collecteur permet de connecter Dolibarr™ à une boîte IMAP/POP3 et de traiter automatiquement les emails entrants : création de tickets, liaison aux objets existants (commandes, factures…). Authentification SPF et DKIM Pour éviter que les emails envoyés par Dolibarr™ soient classés en spam, configurez les protocoles d’authentification. SPF (Sender Policy Framework) Ajoutez un enregistrement TXT dans votre zone DNS. Exemple pour Google Workspace : v=spf1 include:_spf.google.com ~all DKIM (DomainKeys Identified Mail) Activez la signature DKIM depuis votre service de messagerie (Google Workspace, Microsoft 365…) Récupérez l’enregistrement DNS fourni (type TXT, avec sélecteur et clé publique) Ajoutez-le dans la zone DNS de votre domaine La valeur ressemble à : v=DKIM1; k=rsa; p=MIGfM... 4.15 Dictionnaires Définissez ici les données de référence. Vous pouvez compléter ou modifier les données prédéfinies. Seuls les éléments en rapport avec un module actif sont présentés. Cette page permet d’éditer les listes de valeurs des objets Dolibarr™ : Catégorie Exemples Géographie Monnaies, Pays, Régions, Départements/Provinces Tiers Formes juridiques, Types de tiers, Effectifs, Niveaux de prospection, Statuts de prospection, Titres de civilité, Types de contacts Agenda Types d’événements Projets Statuts d’opportunités Comptabilité Types de charges sociales/fiscales Commercial Conditions de règlement, Modes de paiement, Origines des propales, Méthodes de commandes Logistique Méthodes d’expédition, Délais de livraison, Incoterms, Formats papier, Unités Fiscal Taux de TVA (et taxes de ventes US) Divers Types de déplacement, Types de ressource, Montants des timbres fiscaux Ĺ Note Les entrées UltimatepdfLine et UltimatepdfTitle sont ajoutées par le module externe Ultimatepdf pour créer des lignes de texte spécifiques ou renommer des documents (ex. « Commande » → « Facture Proforma »). 4.16 Utilisateurs La dernière étape consiste à créer les utilisateurs et à leur attribuer des permissions. Presque tous les modules, même activés, ne sont accessibles que si les permissions correspondantes ont été accordées. Rendez-vous dans Accueil > Utilisateurs & Groupes. ĺ Important Configurez les utilisateurs et leurs droits après avoir activé tous les modules souhaités — la liste des droits disponibles dépend des modules activés. Pour donner des droits à un utilisateur, allez sur sa fiche et cliquez sur l’onglet Permission. Pour éviter de reconfigurer chaque nouvel utilisateur manuellement, définissez des permissions par défaut (dans Configuration > Sécurité). Ces permissions sont automatiquement attribuées aux nouveaux utilisateurs créés ; elles n’affectent pas les utilisateurs existants. Á Avertissement Les permissions qui apparaissent comme « héritées » sur la fiche d’un utilisateur proviennent d’un groupe auquel il appartient. 4.17 Options cachées (constantes avancées) Quelques options non visibles dans l’interface standard sont disponibles via des constantes à définir dans Accueil > Configuration > Divers. Dans la plupart des cas, leur utilisation n’est pas nécessaire et peut rendre l’application instable. Constante Description ADD_UNSPLASH_LOGIN_BACKGROUND Image d’arrière-plan aléatoire (Unsplash) sur la page de connexion MAIN_FILESYSTEM_ENCODING Forcer l’encodage du système de fichiers (utf-8 sur certains Windows) MAIN_SHOW_TECHNICAL_ID Afficher les identifiants techniques sur les fiches MAIN_COUNTRIES_IN_EEC Liste des pays dans la zone européenne (TVA) MAIN_MAXTABS_IN_CARD Nombre maximum d’onglets visibles (les autres en liste déroulante) MAIN_ONLY_LOGIN_ALLOWED Restreindre l’accès à un seul login (mode maintenance) MAIN_AUTO_TIMESTAMP_IN_PUBLIC_NOTES Horodatage automatique dans les notes publiques MAIN_AUTO_TIMESTAMP_IN_PRIVATE_NOTES Horodatage automatique dans les notes privées MAIN_SECURITY_CSRF_WITH_TOKEN Protection anti-CSRF renforcée par token (>= v5.0) MAIN_DOC_UPLOAD_NOT_RENAME_BY_DEFAULT Désactiver le renommage automatique des fichiers uploadés MAIN_LANGUAGES_ALLOWED Restreindre les langues proposées (ex. fr_FR,en_US,de_DE) MAIN_APPLICATION_TITLE Changer le titre de l’application (attention : casse DoliDroid) MAIN_AUTOFILL_DATE Préremplir automatiquement les dates (fortement déconseillé) MAIN_DISABLE_FULL_SCANLIST Désactiver le comptage total pour la pagination (grands volumes) MAIN_FIRST_TO_UPPER Mettre en majuscule la première lettre des noms de tiers MAIN_ALL_TO_UPPER Mettre entièrement en majuscule les noms de tiers (v11.0) MAIN_DONT_KEEP_NOTE_ON_CLONING Supprimer les notes lors du clonage (v11.0) Constante Description MAIN_DOC_SORT_FIELD Champ de tri par défaut sur la page documents (v11.0) MAIN_DOC_SORT_ORDER Ordre de tri par défaut (ASC ou DESC) sur la page documents (v11.0) MAIN_ENABLE_LOG_TO_HTML Activer les logs dans les pages via &logtohtml=1 dans l’URL MAIN_USE_HOURMIN_IN_DATE_RANGE Ajouter heure et minutes aux champs date début/fin des lignes MAIN_REMOVE_INSTALL_WARNING Supprimer les avertissements de sécurité post-installation MAIN_OPTIMIZE_SPEED Activer les optimisations de performance MAIN_REPLACE_TRANS_xx_XX Remplacer des chaînes de traduction pour une langue spécifique MAIN_REPEATCONTACTONEACHTAB Afficher les contacts sur tous les onglets MAIN_DISABLE_JQUERY_JNOTIFY Désactiver JNotify pour les messages de confirmation/erreur MAIN_USE_JQUERY_MULTISELECT Activer le multiselect Ajax (multiselect, select2…) MAIN_HELPCENTER_LINKTOUSE Lien personnalisé pour « J’ai besoin d’aide » sur la page de connexion MAIN_MODULES_FOR_EXTERNAL Limiter les modules accessibles aux utilisateurs externes MAIN_SHOW_TUNING_INFO Afficher les informations de réglage dans la console JavaScript MAIN_DOL_SCRIPTS_ROOT Répertoire contenant le dossier scripts MAIN_MIN_NB_ENABLED_MODULE_FOR_WARNING Seuil d’avertissement si trop peu de modules sont activés MAIN_ADD_SALE_REP_SIGNATURE_IN_NOTE Ajouter la signature du commercial dans les notes publiques des documents MAIN_DISABLE_AJAX_COMBOX Désactiver l’autocomplétion Ajax sur les listes de tiers/produits MAIN_FORCELANGDIR Chemin du répertoire langs personnalisé MAIN_DEFAULT_LANGUAGE_FILTER Masquer en_US des listes déroulantes de langues MAIN_VAT_DEFAULT_IF_AUTODETECT_FAILS Taux de TVA par défaut si la détection automatique échoue (ex. 20) MAIN_HTML_TITLE Contrôler le formatage du titre HTML (noapp, thirdpartynameonly…) MAIN_LANDING_PAGE Première page affichée après connexion (>= v3.9) 05. ADHÉRENTS 5.1 Introduction Le module Adhérents permet de gérer les adhérents d’une association. Dolibarr™ fait de la gestion de trésorerie mais ne fait pas de comptabilité analytique. Cette limitation suffit à dire que Dolibarr™ n’est pas adapté aux très grandes associations (plus de 5 000 adhérents). Il n’offre pas non plus de module de gestion de la paie, ce qui limite son utilisation aux associations sans salariés. Le module Adhérents est orienté vers les petites associations — dont fait d’ailleurs partie l’association Dolibarr™ elle-même. 5.2 Configuration du module Le module est livré en standard avec Dolibarr™ : il est déjà installé. Vous le trouverez dans la famille Modules disponibles > Gestion des Ressources Humaines (RH). Le pictogramme d’état doit être vert pour signifier son activation ; l’icône en forme d’engrenage donne accès à la page de paramétrage spécifique. Figure 5.1 – Activation du module Adhérents et accès au paramétrage Figure 5.2 – Page de paramétrage du module Adhérents Onglet Divers — Options principales Figure 5.3 – Configuration des options principales (onglet Divers) Les principaux réglages disponibles sont : Gérer un identifiant pour chaque adhérent : Oui ou Non (l’association Dolibarr™ a configuré Oui). E-mail obligatoire pour créer un nouvel adhérent : Oui ou Non (l’association Dolibarr™ a configuré Oui). Envoyer un mail de confirmation (validation ou nouvelle cotisation) aux adhérents : Oui par défaut (l’association Dolibarr™ a configuré Oui). Action complémentaire à l’enregistrement de l’adhésion : Aucun, Création d'une écriture directe, Création facture sans paiement, ou Créer une facture avec paiement sur compte bancaire ou caisse (l’association Dolibarr™ utilise cette dernière option). Taux de TVA pour les adhésions : avec ou sans TVA (l’association Dolibarr™ a configuré Pas de TVA sur les adhésions). Produit/Service utilisé pour la ligne de cotisation dans la facture : liste déroulante des produits et services du module Produits/Services. Cartes d’adhérent Figure 5.4 – Paramétrage des cartes d’adhérent Les options disponibles pour les cartes : Format pages cartes d’adhérent : liste déroulante (l’association Dolibarr™ a choisi Dolibarr Business cards (A4)). Texte imprimé sur le haut des cartes : les constantes de substitution disponibles sont __DOL_MAIN_URL_ROOT__, __ID__, __FIRSTNAME__, __LASTNAME__, __FULLNAME__, __LOGIN__, __PASSWORD__, __COMPANY__, __ADDRESS__, __ZIP__, __TOWN__, __COUNTRY__, __EMAIL__, __BIRTH__, __PHOTO__, __TYPE__, __YEAR__, __MONTH__, __DAY__ (l’association utilise __FIRSTNAME__ __LASTNAME__). Texte aligné à gauche : l’association utilise EMail: __EMAIL__ __ADDRESS__ __ZIP__ __TOWN__. Texte aligné à droite : l’association utilise __LOGO__ pour afficher le logo de l’association. Texte sur le bas des cartes : nom de votre association. Étiquettes d’adhérents Figure 5.5 – Paramétrage des étiquettes d’adhérents Format pages étiquettes : l’association Dolibarr™ a choisi L7163 (A4). Texte imprimé sur les planches d’adresses : l’association utilise __FULLNAME__, __ADDRESS__, __ZIP__ , __TOWN__, __COUNTRY__. Autre — Formulaires d’auto-inscription Quatre couples sujet/corps de mail configurables : Sujet/Email reçu en cas d’auto-inscription d’un invité Sujet/Email envoyé en cas d’auto-inscription d’un invité Figure 5.6 – Paramétrage du rappel automatique par e-mail Emails de validation et rappels Activer le rappel automatique par e-mail des adhésions expirées. Avertissement Le module Travaux planifiés doit être activé et correctement configuré pour que les rappels automatiques soient envoyés. Deux emails de validation configurables : Sujet/Email de validation adhérent : envoyé lors de l’enregistrement de la demande d’adhésion. Sujet/Email de validation adhésion : envoyé lors de la confirmation du règlement de la cotisation. Modèles d’emails Figure 5.7 – Modèles d’emails disponibles pour le module Adhérents Figure 5.8 – Modèles d’emails — rappel d’expiration et auto-adhésion Figure 5.9 – Modèles d’emails — validation et nouvelle cotisation Il est possible de définir un modèle d’email pour chacun des événements suivants : Rappel lorsque l’adhésion est sur le point d’expirer Auto-adhésion d’un adhérent Validation d’un membre Enregistrement d’une nouvelle cotisation Annulation d’adhésion Figure 5.10 – Modèles d’emails supplémentaires Figure 5.11 – Modèle d’email de nouvelle cotisation Figure 5.12 – Modèle d’email de résiliation L’email de résiliation par défaut de l’association Dolibarr™ indique que l’adhésion a été résiliée (motif le plus courant : non renouvellement de la cotisation annuelle) et invite l’adhérent à contacter le trésorier en cas d’erreur. L’email émetteur pour les mails automatiques est également configurable (exemple : contact@dolibarr.org). Attributs supplémentaires (adhérents) Figure 5.13 – Gestion des attributs supplémentaires sur les fiches adhérents Si vous avez besoin de gérer des attributs particuliers non prévus en standard, vous pouvez les définir ici. Par exemple, pour ajouter des champs Twitter et Facebook : Cliquez sur Nouvel attribut Dans Libellé : saisissez Twitter Dans Code de l’attribut : saisissez twitter (uniquement des caractères alphanumériques en minuscule, sans espace) Type : Chaîne, Taille : 255 Répétez l’opération pour Facebook Ces champs apparaîtront ensuite sur la fiche de vos adhérents. Attributs supplémentaires (type d’adhérents) Figure 5.14 – Attributs supplémentaires sur les types d’adhérents Dans l’onglet Attributs supplémentaires (type d’adhérents), définissez les attributs non standard que vous souhaitez voir apparaître sur les fiches Types d’Adhérents. Formulaire public d’auto-inscription Figure 5.15 – Formulaire public d’auto-inscription Dolibarr™ peut proposer une URL publique permettant à des visiteurs externes de postuler à une adhésion. Si un module de paiement en ligne est actif, un formulaire de paiement sera automatiquement proposé. Options disponibles lorsque l’option est activée : Montant par défaut de la cotisation (l’association Dolibarr™ a configuré 20 €) Le visiteur peut modifier le montant : Oui ou Non (l’association a configuré Non) Rediriger sur la page intégrée de paiement en ligne : l’association utilise PayPal Email à avertir en cas de retour de paiement validé : renseignez généralement l’adresse du trésorier Note L’URL du formulaire public de l’association Dolibarr™ est : https://asso.dolibarr.org/dolibarr/public/members/NOUVEAU.php 5.3 Types d’adhérent Avant toute chose, il est nécessaire de définir les profils d’adhérents en créant des types d’adhérent. Créer un nouveau type d’adhérent Rendez-vous dans le menu Type d’adhérents > Nouveau depuis la page d’accueil du module Adhérents, puis cliquez sur Nouveau type d’adhérent. Figure 5.16 – Formulaire de création d’un type d’adhérent L’association Dolibarr™ a défini deux types : Standard Champ Valeur Libellé Standard Soumis à cotisation Oui Vote autorisé Oui Description Voir wiki dolibarr.org Email d’accueil néant Preferred Partners Champ Valeur Libellé Preferred Partners Soumis à cotisation Oui Vote autorisé Oui Description Voir wiki dolibarr.org Email d’accueil néant Note Un Dolibarr Preferred Partner est un fournisseur de service autour de Dolibarr™ ERP-CRM qui s’est engagé à prouver sa crédibilité et sa compétence, offrant une garantie de qualité dans ses prestations. Modifier un type d’adhérent Cliquez sur le bouton Modifier et effectuez vos changements dans les différents champs avant d’enregistrer. Supprimer un type d’adhérent Cliquez sur le bouton Supprimer. Une demande de confirmation vous sera présentée. 5.4 Nouvelle adhésion Création d’un adhérent Rendez-vous dans le menu Adhérents > Nouvel adhérent. Un formulaire de création s’affiche. Renseignez tous les champs et cliquez sur Ajouter adhérent. Avertissement Si vous n’avez pas encore défini de type d’adhérent, vous verrez cette alerte : « Aucun type d’adhérent défini. Allez dans Configuration - Types d’adhérents » Figure 5.17 – Formulaire de création d’un adhérent Ensuite, le processus complet d’adhésion est le suivant : Valider l’adhérent : cliquez sur le bouton Valider sur la fiche adhérent. Une confirmation est demandée. Créer un compte utilisateur (facultatif) : si vous souhaitez offrir un accès Dolibarr™ à ce membre, cliquez sur Créer un compte utilisateur depuis sa fiche. Lier un tiers : pour facturation, devis, etc., cliquez sur Créer un tiers ou sélectionnez un tiers existant via le lien Lien tiers Dolibarr. Envoyer la fiche par mail : cliquez sur Envoyer fiche par mail pour adresser la fiche à votre adhérent. L’état passe à Validé (attente cotisation). Cliquez sur l’onglet Adhésions/cotisations, puis sur Ajouter adhésion/cotisation. La fiche de cotisation s’ouvre avec la date pré-remplie. Si vous laissez le champ Date fin adhésion vide, il sera automatiquement renseigné à J+1 an. Renseignez le montant, choisissez l’action complémentaire (par défaut : Création facture avec paiement sur compte bancaire ou caisse), sélectionnez le compte et le mode de règlement, puis cliquez sur Ajouter adhésion/cotisation. L’état de l’adhérent passe à Adhésion à jour. Figure 5.18 – Statut d’adhésion mis à jour Cliquez sur le Lien tiers Dolibarr pour accéder à la fiche du tiers, puis sur l’onglet Client : vous y retrouverez la facture à l’état Commencée. Cliquez dessus et passez-la à l’état Payée via le bouton Classer payée. Votre adhérent apparaît maintenant dans la liste Adhérents à jour. Modification d’un adhérent Cliquez sur le bouton Modifier et effectuez vos changements dans les différents champs avant d’enregistrer. Suppression d’un adhérent Cliquez sur le bouton Supprimer. Une confirmation est demandée avant la suppression définitive : Important « Êtes-vous sûr de vouloir effacer ce membre (Effacer un membre efface aussi toutes ses cotisations) ? » 06. TIERS 6.1 Introduction Le module Tiers permet de gérer les entités clients, prospects et/ou fournisseurs. C’est un prérequis in- dispensable pour de nombreux autres modules (factures, commandes, contrats, propositions commerciales, etc.). Un Tiers est une entité métier : client, prospect ou fournisseur (une SARL, un commerce, une asso- ciation, un particulier). Un Contact représente une personne physique rattachée à un tiers (PDG, ouvrier, président d’asso- ciation…). Dolibarr™ gère de la même manière les tiers particuliers et les entreprises. Pour les particuliers, on créera en général un Contact qui contient les mêmes caractéristiques que l’objet Société. 6.2 Configuration du module Le module est livré en standard dans la famille Gestion de la relation client (GRC). L’icône en forme d’engrenage donne accès à sa page de paramétrage. Figure 6.1 – Paramétrage du module Tiers Codes tiers — Modèle de numérotation Choisissez ici le modèle qui servira de compteur pour les codes client et fournisseur. Avertissement Réfléchissez bien au choix de configuration avant de saisir vos données. Un changement ultérieur obligera à reprendre manuellement chaque fiche — elles afficheront (Code client incorrect) tant qu’elles ne seront pas corrigées. Figure 6.2 – Configuration du codage Elephant avec masques de numérotation Modèle Elephant — masques de numérotation personnalisables : Balise Description {000000} Compteur incrémental (autant de zéros que la longueur souhaitée) {000000+100} Idem avec un offset de départ {000000@x} Idem avec remise à zéro le xème mois de l’année (0 = mois fiscal, 99 = mensuel) {dd} Jour (01 à 31) {mm} Mois (01 à 12) {yy} / {yyyy} Année sur 2 ou 4 chiffres Figure 6.3 – Exemples de masques Elephant Exemples pour un tiers créé le 31/03/2021 : ABC{yy}{mm}-{000000} → ABC2103-000099 {0000+100}-XXX-{dd}-YYY → 0199-XXX-31-YYY Modèle Leopard — code libre sans vérification, modifiable à tout moment. Modèle Monkey — format automatique CUyymm-nnnn (clients) / SUyymm-nnnn (fournisseurs). Codes comptables — Génération automatique Figure 6.4 – Modèles de documents disponibles Figure 6.5 – Configuration des codes comptables Modèle Aquarium : génère 401 + code fournisseur pour les fournisseurs, 411 + code client pour les clients. Modèle Panicum : renvoie un code comptable vide. Modèles de documents ODT Le modèle Générique ODT permet de générer des documents à partir de templates LibreOffice/OpenOffice. Les tags entre {} sont remplacés automatiquement lors de la génération. Important Les tags doivent être saisis d’une seule traite, sans retour arrière, effacement ni copier-coller. Sous LibreOffice, utilisez Ctrl+M pour supprimer le formatage direct d’un tag mal saisi. Principaux tags disponibles : Société (votre entreprise) {mycompany_name} {mycompany_address} {mycompany_zip} {mycompany_town} {mycompany_country} {mycompany_phone} {mycompany_email} {mycompany_web} {mycompany_logo} {mycompany_vatnumber} {mycompany_idprof1} … {mycompany_idprof6} Tiers (client/prospect/fournisseur) {company_name} {company_address} {company_zip} {company_town} {company_country} {company_phone} {company_email} {company_web} {company_barcode} {company_customercode} {company_suppliercode} {company_customeraccountancycode} {company_supplieraccountancycode} {company_vatnumber} {company_idprof1} … {company_idprof6} {company_note_public} Utilisateur connecté {myuser_lastname} {myuser_firstname} {myuser_login} {myuser_email} {myuser_zip} Dates courantes {current_date} {current_datehour} {current_date_locale} {current_server_date} {current_server_datehour} Objet (facture, commande, propale…) {object_ref} {object_date} {object_date_creation} {object_note_public} {object_note_private} {object_total_ht} {object_total_vat} {object_total_ttc} {object_total_discount_ht} {object_already_payed} {object_remain_to_pay} {object_options_xxx} (extrafield) Spécifiques aux propales : {object_date_end} (date fin de validité) Spécifiques aux commandes : {object_date_delivery_planed} Spécifiques aux factures : {object_date_limit}, {object_payment_mode}, {object_payment_term} Lignes de tableau — répétées pour chaque ligne du document : [!-- BEGIN row.lines --] {line_product_ref} {line_product_label} {line_desc} {line_qty} {line_up} {line_vatrate} {line_price_ht} {line_price_vat} {line_price_ttc} {line_discount_percent} {line_date_start} {line_date_end} [!-- END row.lines --] Règles sur les identifiants professionnels Figure 6.6 – Configuration des identifiants professionnels Ce bloc permet de rendre les 6 identifiants professionnels (SIREN, SIRET, NAF, RCS/RM…) : uniques (pas de doublon) obligatoires à la création d’un tiers obligatoires à la validation des factures Attributs supplémentaires (tiers et contacts) Figure 6.7 – Interface de gestion des attributs supplémentaires Définissez ici les champs personnalisés non disponibles en standard. Les types disponibles sont identiques pour les tiers et pour les contacts/adresses : Type Description Exemple Chaîne (1 ligne) Texte court Société ABC Texte long Zone multi-lignes Notes internes Texte HTML Éditeur WYSIWYG Client VIP Type Description Exemple Numérique entier Sans décimales 42 Décimal Nombre avec virgule 123.45 Date Sélection de date 2025-09-13 Date et heure Date + heure 2025-09-13 14:30 Durée En heures/minutes 2h30 Booléen Case à cocher Oui/Non � Actif Prix Montant en monnaie courante 100,00 Prix avec devise Montant + devise 100,00 € Téléphone Champ formaté +33 6 12 34 56 78 Email Adresse e-mail contact@exemple.com URL Lien internet https://… IP Adresse IPv4/IPv6 192.168.1.1 Mot de passe Champ masqué •••••••• Radio bouton Sélection unique Homme / Femme / Autre Liste de sélection Menu déroulant (1 choix) France / Espagne Liste issue d’une table Valeur d’une autre table Dolibarr Liste des produits Liste de sélection (n choix) Multi-cases Option A + Option B Liste issue d’une table (n choix) Multi-sélection depuis table Plusieurs utilisateurs Lien vers un objet Lien vers un objet Dolibarr Facture F2109 Séparateur Ligne visuelle (pas un champ) ����� Étoiles Notation 0 à 5 ����� Figure 6.8 – Attributs supplémentaires pour les contacts/adresses Options diverses Figure 6.9 – Options d’affichage et de performance Options disponibles dans l’onglet Divers : Attendre une saisie avant de charger la liste déroulante des tiers (utile si > 100 000 tiers). Afficher le code client/fournisseur dans les listes et hyperliens. Attendre une saisie avant de charger la liste des contacts/adresses. Afficher les références Client/Fournisseur dans les listes déroulantes. Afficher le numéro de TVA dans les listes déroulantes. Afficher l’adresse dans les listes déroulantes. Afficher l’e-mail du contact (ou téléphone si non défini) et la ville. Désactiver le type “Prospect + Client” (un tiers est soit Prospect, soit Client). Type de tiers par défaut pour la création. Astuce Pour un grand nombre de tiers (> 100 000), définissez la constante COMPANY_DONOTSEARCH_ANYWHERE = 1 dans Configuration > Divers : la recherche sera limitée au début de la chaîne, ce qui améliore les performances. 6.3 Tiers — Sociétés, Clients, Fournisseurs Créer un nouveau tiers Allez dans Tiers > Nouveau tiers (ou directement Nouveau prospect, Nouveau client ou Nouveau fournisseur pour pré-remplir les cases correspondantes). Figure 6.10 – Formulaire de création d’un tiers Le champ Nom du tiers est obligatoire. Sélectionnez ensuite : Le statut client/prospect (Prospect, Prospect/Client, Client, ni client ni prospect) Si le tiers est également fournisseur Les codes client et fournisseur sont pré-remplis selon le modèle de numérotation configuré. Figure 6.11 – Suite du formulaire de création Note Les champs agrémentés d’une icône � ouvrent des listes déroulantes dont le contenu est personnalisable via Configuration > Dictionnaires. Par exemple, pour ajouter un pays : cliquez sur le dictionnaire Pays, ajoutez un code et un libellé, puis le pays apparaîtra dans toutes les listes. Figure 6.12 – Champs réseaux sociaux sur la fiche tiers Si le module Réseaux sociaux est activé, vous pouvez renseigner les profils sociaux du tiers directement sur sa fiche. Figure 6.13 – Rattachement de commerciaux et code-barres Vous pouvez également : Affecter un ou plusieurs commerciaux au tiers (choisis dans la liste des utilisateurs) Utiliser un code-barres pour identifier le tiers (nécessite le module Code-barres) Figure 6.14 – Champ code-barres et envoi de mail depuis la fiche tiers La possibilité d’envoyer un mail directement depuis la fiche du tiers est disponible. Modifier un tiers Ouvrez la fiche du tiers et cliquez sur le bouton Modifier pour effectuer vos changements. Supprimer / Fusionner un tiers Figure 6.15 – Fusion de deux fiches tiers Avant de supprimer une fiche, vérifiez qu’elle ne possède pas de fils (documents liés : propales, commandes, factures). Dolibarr™ refusera la suppression tant que ces documents existent. Si vous avez créé plusieurs fois le même tiers (orthographes différentes, imports…), utilisez la fonction Fu- sionner : placez-vous sur la fiche à conserver, cliquez sur Fusionner et sélectionnez le doublon à supprimer. Tous les objets liés seront déplacés avant la suppression. Note Une société (Tiers) ne peut avoir qu’un seul état : exister ou ne pas exister. Elle n’est pas archivée — elle disparaît de Dolibarr™. Options cachées (tiers) Constantes à définir dans Configuration > Divers : Constante Description COMPANY_AQUARIUM_CLEAN_REGEX Applique un REGEX de nettoyage sur le code comptable client généré MAIN_FORCE_DEFAULT_STATE_ID Pré-sélectionne un état/province lors de la création (rowid dans llx_c_departements) SOCIETE_DISABLE_CUSTOMERS Désactive les menus et fonctions propres aux clients SOCIETE_DISABLE_PROSPECTS Désactive les menus et fonctions propres aux prospects Constante Description SOCIETE_DISABLE_STATE Ne pas utiliser le champ état/province THIRDPARTY_NOTCUSTOMERPROSPECT_BY_DEFAULT Ne pas mettre « en activité » par défaut à la création THIRDPARTY_NOTSUPPLIER_BY_DEFAULT Ne pas mettre le statut fournisseur « en activité » par défaut SOCIETE_SORT_ON_TYPEENT Trier la liste déroulante de type de tiers sur le champ « position » THIRDPARTY_DEFAULT_CREATE_CONTACT Les tiers créés sont des individus par défaut (>= 5.0) THIRDPARTY_DEFAULT_USEVAT Valeur par défaut du champ « Assujetti à la TVA » THIRDPARTY_DEFAULT_USELOCALTAX1 Valeur par défaut pour la deuxième taxe THIRDPARTY_DEFAULT_USELOCALTAX2 Valeur par défaut pour la troisième taxe Exemple d’utilisation de COMPANY_AQUARIUM_CLEAN_REGEX : Conserver les 3 premiers caractères COMPANY_AQUARIUM_CLEAN_REGEX = ^(.{3}).* Ignorer les 2 premiers, conserver les 4 suivants COMPANY_AQUARIUM_CLEAN_REGEX = ^..(.{4}).* 6.4 Contacts / Adresses Le contact représente une personne physique rattachée à un tiers. Plusieurs contacts peuvent être liés à la même société, permettant ainsi de gérer plusieurs adresses de livraison ou de facturation. Créer un contact/adresse Deux méthodes : Depuis le menu général Allez dans Tiers > Nouveau contact/adresse. Seul le champ Nom/Libellé est obligatoire. Vous pouvez rattacher ce contact à un tiers existant ou le laisser indépendant. Figure 6.16 – Formulaire de création d’un contact/adresse Depuis la fiche d’un tiers Allez sur l’onglet Contacts/Adresses de la fiche tiers, puis cliquez sur Créer contact/adresse (ou sur l’icône ronde avec un +). Le tiers est alors pré-sélectionné. Figure 6.17 – Onglet Contacts/Adresses sur une fiche tiers Figure 6.18 – Options supplémentaires du formulaire contact Options disponibles sur la fiche contact : Partagé / Privé : masquer ou non ce contact aux autres utilisateurs Exclure du mailing de masse : Oui ou Non Date de naissance avec alerte anniversaire Modifier un contact/adresse Figure 6.19 – Liste des contacts avec colonnes de recherche La liste des contacts est triable par tags (Catégories, Prospects-Clients, Fournisseurs). Des champs de re- cherche par colonne (Nom, Prénom, Poste, Société, Téléphone, E-mail…) permettent de retrouver rapidement un contact. Cliquez sur son nom pour accéder à sa fiche, puis sur Modifier. Supprimer un contact/adresse Figure 6.20 – Suppression d’un contact via la liste Cochez la case en début ou fin de ligne (selon votre configuration dans Configuration > Affichage) pour afficher l’action Supprimer. Options cachées (contacts) Constante Description CONTACT_USE_COMPANY_ADDRESS Pré-remplit les coordonnées du contact avec celles du tiers lors de la création 6.5 Tags / Catégories clients Les tags permettent de filtrer et trier vos clients et prospects. Note Le module Libellés/Catégories doit être activé au préalable (dans Configuration > Outils multi- modules). Créer un tag/catégorie Figure 6.21 – Formulaire de création d’un nouveau tag Allez dans Tiers > Nouveau Tag/catégorie dans le menu de gauche. Renseignez : Un nom et une référence Une description (facultative) Une couleur Une catégorie parente (si sous-catégorie) Figure 6.22 – Liste des tags/catégories créés Astuce Si l’option Lier automatiquement avec le tag/catégorie parent est activée, tout produit ajouté dans une sous-catégorie sera automatiquement ajouté dans la catégorie parente. Modifier un tag/catégorie Cliquez sur le nom (lien hypertexte) de la catégorie, puis sur Modifier. 07. PRODUITS / SERVICES 7.1 Introduction Ces modules permettent de gérer un catalogue de produits et un catalogue de services. Un produit est un bien matériel : il peut se stocker dans un entrepôt, se livrer, et sa valeur se déprécie avec le temps. 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.10 Variantes de produits Les variantes (couleur, taille…) s’activent via le module Variantes de produits (dans Configuration > Modules). Créer une variante Depuis Produits | Services > Attributs de variante dans le menu de gauche, cliquez sur Créer. Figure 7.45 – Bouton de création d’une variante Étape 1 — Créer l’attribut (ex. : Taille) : Figure 7.46 – Attribut Taille créé Étape 2 — Créer les valeurs (ex. : S, M, L, XL) : 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 7.48 – Impact de la variante sur le prix La liste des variantes apparaît en pied de page de la fiche produit. Figure 7.49 – Liste des variantes en pied de fiche produit Figure 7.50 – Vue globale des variantes disponibles 7.11 Nomenclatures (BOM) Configurer le module Le module Nomenclatures (BOM) se trouve dans Configuration > Modules > Gestion des Produits/Services (PM). 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 > Stock > 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. 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. Préparer les produits Créer le produit fini Allez dans Produits > Nouveau produit et renseignez les champs suivants : Champ Valeur attendue Référence Référence unique du produit fini (ex. : MACHINE_A) Libellé Description du produit (ex. : Machine Assemblée Type A) Type Produit Nature de produit Produit manufacturé En vente Oui À l’achat Non (car on le fabrique) Créer les composants Répétez l’opération pour chaque composant nécessaire : Champ Valeur attendue Nature de produit Matière première En vente Non (généralement) À l’achat Oui (on achète les matières premières) 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). Exemple concret : pour fabriquer une machine assemblée, les composants peuvent être : Référence Libellé Nature À l’achat COMP_MOTEUR Moteur électrique 220V Matière première Oui COMP_CHASSIS Châssis métallique Matière première Oui COMP_VIS Kit visserie M8 Matière première Oui Créer une nomenclature Renseigner l’en-tête Allez dans GPAO > Nomenclatures (BOM) > Nouvelle nomenclature. Renseignez les champs de l’en-tête : Champ Description Référence Générée automatiquement selon le modèle choisi, ou saisie libre Libellé Description de la nomenclature (ex. : Nomenclature Machine A) Produit Le produit fini à fabriquer (ex. : MACHINE_A) Quantité Quantité de produit fini obtenue par cette nomenclature (en général 1) Type de BOM Fabrication (type par défaut) 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 : Cliquez sur le champ produit et recherchez le composant souhaité. Indiquez la quantité nécessaire pour fabriquer une unité du produit fini. Cliquez sur Ajouter pour chaque ligne. Exemple : pour la nomenclature de MACHINE_A : Composant Quantité Signification COMP_MOTEUR 1 1 moteur par machine COMP_CHASSIS 1 1 châssis par machine COMP_VIS 4 4 kits de vis par machine 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 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. Sur la fiche de la BOM, cliquez sur le bouton Valider. Confirmez la validation. 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 Dolibarr. 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 Module Emplacement Obligatoire Produits Produits / Services Oui Module Emplacement Obligatoire BOM / Nomenclatures GPAO Oui Stock Produits / Services Oui Factory GPAO (module tiers) Oui 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 : Depuis le menu Factory : accédez à GPAO > 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 : Champ Description BOMList Liste déroulante des BOM validées. Format affiché : Réf BOM / Réf Produit Produits Liste déroulante des produits ayant une composition Factory ou une BOM validée Entrepôt Entrepôt de destination des produits fabriqués Quantité à produire Nombre d’unités à fabriquer Date de début planifiée Date prévue de début de fabrication Date de fin planifiée Date prévue de fin de fabrication Durée planifiée Durée estimée de fabrication (heures : minutes) Sélectionnez la BOM correspondant au produit à fabriquer. Sélectionnez le produit fini dans la liste. Choisissez l’entrepôt de destination. Saisissez la quantité à produire. 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 : Information Exemple Référence OF OF2606-00001 (format : OFmmaa-nnnnn) Entrepôt B7 Quantité planifiée 5 Date début 22/06/2026 Date fin 22/06/2026 État Brouillon Cycle de vie d’un OF Un Ordre de Fabrication passe par les étapes suivantes : Étape Action Résultat 1. Brouillon L’OF est créé Modifiable, non engageant 2. Validé Cliquer sur Valider L’OF est activé, la fabrication peut commencer 3. En production Lancer la production Les composants sont consommés depuis l’entrepôt 4. Clos Clore l’OF La fabrication est terminée, le produit fini est en stock Astuce Un OF en Brouillon peut être supprimé sans conséquence. Une fois validé, il engage les stocks et doit être clos proprement. Flux complet BOM → OF Le processus complet de la nomenclature à la fabrication suit ce flux : Créer les produits : produit fini (Manufacturé) et composants (Matière première). Créer la BOM : lier le produit fini à ses composants avec les quantités. Valider la BOM : étape obligatoire pour rendre la BOM disponible dans Factory. Créer l’OF via Factory : sélectionner la BOM, le produit, l’entrepôt et la quantité. Vérifier les stocks : s’assurer que les composants sont disponibles. Valider et lancer l’OF : consommer les composants et produire le produit fini. 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 : Sous-onglet Description Composition Affiche les composants liés au produit (composition Factory native). Le badge indique le nombre de composants (ex. : 0 / 1) Fabrication Directe Permet de lancer une fabrication sans passer par un OF formel Ordre de Fabrication (OF) Formulaire de création d’un nouvel OF pour ce produit OF En cours Liste des OF en cours pour ce produit, avec état et quantités Historique des OF Historique complet de tous les OF passés pour ce produit 7.2 Configuration du module Les modules Produits et Services se trouvent dans Configuration > Modules > Gestion des Produits/Services (PM). L’icône engrenage donne accès à la page de paramétrage spécifique. 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 7.2 – Paramétrage général des produits/services 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 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. 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. 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 7.5 – Options d’interface pour la recherche de produits Champ avec auto-complétion Ajax plutôt que liste déroulante (recommandé si > 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. Astuce Pour un très grand nombre de produits (> 100 000), définissez PRODUCT_DONOTSEARCH_ANYWHERE = 1 dans Configuration > Divers pour limiter la recherche au début de la chaîne. Nomenclatures (BOM) 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.3 Produits Créer un nouveau produit Allez dans Produits > Nouveau produit. 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. Figure 7.7 – Ajout d’une image via l’onglet Fichiers joints Une fois créé, le produit est accessible dans Produits > Liste. La fiche affiche des onglets selon les modules activés. Figure 7.8 – Fiche produit avec ses onglets (Stock, Codes-barres, Marges, Catégories…) Astuce Taux de TVA : pour ajouter ou modifier un taux, allez dans Configuration > Dictionnaires > 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 > Changement de TVA en masse. 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 7.10 – Aperçu des options cachées produits Constantes à définir dans Configuration > Divers : Constante Description CATEGORY_GRAPHSTATS_ON_PRODUCTS Graphique des produits par catégorie dans la zone produits MAIN_SEARCH_PRODUCT_BY_FOURN_REF Rechercher un produit par référence fournisseur (>= 8.0) MAIN_DISABLE_FREE_LINES Interdire les lignes libres dans les documents (>= 8.0) MAIN_PRODUCT_DISABLE_CUSTOMCOUNTRYCODE Éviter que le code pays d’origine soit ajouté en description PRODUCT_ADD_TYPE_IN_DOCUMENTS Ajouter le texte « Produit » ou « Service » devant les lignes PDF PRODUCT_DONOTSEARCH_ANYWHERE Recherche uniquement sur le début de la référence/libellé FOURN_PRODUCT_AVAILABILITY Activer le délai de disponibilité produit sur les prix fournisseur PRODUIT_PDF_MERGE_PROPAL Fusionner les PDF produits avec les propales PRODUCT_USE_UNITS Activer les unités (dictionnaire) sur la fiche produit/service MAIN_DIRECT_STATUS_UPDATE Changer le statut vente/achat directement sur la fiche (v4.0+) PRODUCT_CHARGES Champ de frais ad hoc sur le prix d’achat (coûts supplémentaires) Constante Description PRODUCT_MAX_VISIBLE_PHOTO Nombre maximum de vignettes photos sur la fiche produit PRODUCT_MAX_LENGTH_COMBO Longueur max du libellé dans les listes déroulantes PRODUCT_ALLOW_EXTERNAL_DOWNLOAD Partage public des fichiers produit par lien PRODUCT_SEARCH_AUTO_SELECT_IF_ONLY_ONE Auto-sélection si un seul résultat (1=actif par défaut) 7.4 Stock Configurer le module Stock 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 Configuration > Modules > Gestion produits. Figure 7.11 – Configuration du module Stock Avertissement Quand le module Lot/Série 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. Règles de réduction automatique du stock : 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 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 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 > Stock > Nouvel entrepôt dans le menu de gauche. 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 Depuis Stock > Liste : cliquez sur le nom de l’entrepôt, puis sur Modifier ou Supprimer (avec confirmation). 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 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 7.17 – Interface de réception avec saisie des lots/séries Cliquez sur Ventiler pour valider l’affectation aux entrepôts. 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 7.19 – Écran de réapprovisionnement Sélectionnez les références à réapprovisionner, puis cliquez sur Créer commandes. 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 7.21 – Formulaire Passer commande Pour la réception, choisissez Recevoir produits : 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 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 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 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 7.26 – Saisie du prix d’achat pour le calcul du PMP Figure 7.27 – Prix moyen pondéré d’acquisition calculé Options cachées (stock) Constante Description STOCK_SUPPORTS_SERVICES Les services peuvent être gérés en stock / dans les expéditions Bloquer la ventilation si le total prévu est déjà reçu SUPPLIER_ORDER_DISABLE_STOCK_DISPATCH_WHEN_TOTAL_REACHED STOCK_CALCULATE_ON_BILL Stock théorique = stock physique + stock en commande USER_DEFAULT_WAREHOUSE Afficher l’entrepôt dans la fiche utilisateur (v11.0) 7.5 Code-barres Configurer le module Code-barres Le module se trouve dans Configuration > Modules > Outils multi-modules. 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 : 020{000000000}? (usage interne) 9771234{00000}? (ISSN avec préfixe 1234) Modèles d’encodage : choisissez le type (EAN13, ISBN, QR code…). En positionnant sur Moteur interne, un exemple s’affiche. Figure 7.29 – Modèles d’encodage des codes-barres Figure 7.30 – Options : type par défaut pour produits et tiers Note Si genbarcode n’est pas installé, une alarme s’affiche — ce n’est pas bloquant pour les modèles utilisant uniquement PHP (EAN13, QR code). 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 7.31 – Utilisation d’un scanner de codes-barres Astuce Pour être compatible avec Dolibarr™, votre scanner doit prendre en charge l’émulation clavier (interface HID / Keyboard Wedge). Exemples compatibles : Motorola DS4208, Datalogic QW2120. Impression d’étiquettes : depuis Outils > 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 7.32 – Outil d’impression d’étiquettes de codes-barres 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.6 Catégories produits Le module Tags/Catégories gère des catégories sur les tiers, contacts, produits et services. Il se trouve dans Configuration > Modules > Outils multi-modules (sans configuration spécifique après activation). Figure 7.34 – Formulaire de création d’une catégorie produit Créez une catégorie depuis Produits/Services > Tags/catégories > 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.7 Expéditions Configurer le module Expéditions Le module se trouve dans Configuration > Modules > Gestion de la relation client (GRC). 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 : Balise Description {cccc} Code client sur n lettres {cccc000} Code client + compteur propre au client {tttt} Code type entreprise (voir Dictionnaires) 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 7.37 – Sélection du modèle de bordereau d’expédition Figure 7.38 – Options complémentaires et filigrane Bons de réception client (modèles de numérotation) : Figure 7.39 – Configuration des bons de réception client Jade : BLyymm-nnnn Saphir : masque personnalisable (mêmes balises que Ribera) Figure 7.40 – Détail du formulaire bon de réception 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 Depuis Produits/Services > 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 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 Important Une expédition ne peut pas être modifiée directement. Il faut la supprimer et en créer une nouvelle. Options cachées (expéditions) Constante Description DATE_LIVRAISON_WEEK_DELAY Incrémenter automatiquement la date de livraison du nombre de semaines déclarées à la création STOCK_SUPPORTS_SERVICES Intégrer des services dans une expédition (association service + produit) 7.8 Services Créer / Modifier / Supprimer un service Le processus est identique à celui des produits. Allez dans Services > Nouveau service. Les champs Réf, Libellé, État (Vente) et État (Achat) sont obligatoires. Options cachées (services) Constante Description SERVICE_ARE_ECOMMERCE_200238EC 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 STOCK_SUPPORTS_SERVICES Intégrer des services dans les expéditions et les stocks 7.9 Numéros de Lot/Série Configurer le module Le module se trouve dans Configuration > Modules > Gestion des Produits/Services (PM). Sa configuration se limite à l’ajout de champs supplémentaires. 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. Figure 7.44 – Vue liste des stocks par lot/série 08. COMMERCE 8.1 Introduction L’onglet Commerce regroupe les modules suivants : Propositions commerciales — gestion des devis et propositions commerciales Commandes clients — gestion des commandes clients Commandes fournisseurs — gestion des commandes fournisseurs Contrats/Abonnements — gestion des contrats et des abonnements Interventions — gestion des interventions chez les tiers Gestionnaire de tickets — suivi des demandes et incidents Demandes de tarifs fournisseur — propositions commerciales fournisseurs Ces modules sont livrés en standard avec la distribution de Dolibarr et sont déjà installés. Configuration des Propositions commerciales Vous trouverez le module Propositions commerciales dans la famille Gestion de la relation client (GRC). Le pictogramme d’état doit être vert pour signifier son activation ; le pictogramme suivant, en fin de ligne, permet d’accéder à la page de paramétrage spécifique. Figure 8.1 – Configuration du module Propositions commerciales Modèles de numérotation Choisissez le modèle de numérotation pour vos propositions commerciales : Marbre — numéro de la forme PRyymm-nnnn (ex. PR2201-0001) où yy est l’année, mm le mois et nnnn un compteur séquentiel sans rupture. Saphir — numéro personnalisable selon un masque à définir. Les balises disponibles dans le masque : Balise Description {000000} Compteur incrémenté à chaque propale (autant de zéros que la longueur souhaitée) {000000+000} Idem avec un offset appliqué dès la première propale {000000@x} Idem avec remise à zéro le xème mois (x=0 = mois fiscal, x=99 = chaque mois) {dd} Jour (01 à 31) {mm} Mois (01 à 12) {yy} / {yyyy} / {y} Année sur 2, 4 ou 1 chiffre(s) {cccc} Code client sur n lettres {cccc000} Code client suivi d’un compteur propre au client {tttt} Code type entreprise sur n caractères Tout autre caractère dans le masque est laissé inchangé. Les espaces ne sont pas permis, les / le sont. Exemples pour la 99ème propale du tiers LaCompanie faite le 31/03/2021 : ABC{yy}{mm}-{000000} → ABC2103-000099 {0000+100}-XXX-{dd}-YYY → 0199-XXX-31-YYY Modèles de documents Activez le modèle souhaité (le bouton doit passer au vert). Tous les modèles activés apparaîtront dans la liste déroulante lors de la création d’une propale. Vous pouvez créer des modèles ODT (OpenOffice, KOffice, TextEdit…). Si le module UltimatePDF est installé, activez son modèle : ultimate_propal. Autres options Délai de validité par défaut (en jours) Mention complémentaire sur les propositions Filigrane sur les brouillons Chemin d’accès aux documents Le chemin (au sens UNIX) des documents est du type : /home/httpd/vhosts/domaine.fr/domains/compta.domaine.fr/doc Attributs supplémentaires Dans l’onglet Attributs supplémentaires, définissez les champs additionnels à gérer sur les propositions com- merciales. Les types disponibles sont identiques à ceux décrits dans le chapitre Tiers (22 types : chaîne, texte long, HTML, numérique entier, décimal, date, date+heure, durée, booléen, prix, prix avec devise, téléphone, email, URL, IP, mot de passe, radio bouton, liste de sélection, liste issue d’une table, liste multi-choix, liste multi-choix issue d’une table, lien vers un objet, séparateur, étoiles). Dans l’onglet Attributs supplémentaires (lignes), définissez les champs additionnels sur les lignes des propo- sitions. Exemple : un attribut Liste de sélection nommé « Au choix » avec le code choix ajoutera une ligne de sélection sous chaque ligne de la propale. Configuration des Commandes clients Vous trouverez le module Commandes clients dans la famille Gestion de la relation client (GRC). Figure 8.2 – Configuration du module Commandes clients Modèles de numérotation Marbre — numéro de la forme COyymm-nnnn (ex. CO1101-0001) Saphir — numéro personnalisable selon un masque (mêmes balises que pour les propales) Modèles de documents Le modèle facture proforma est disponible ici. Si le module UltimatePDF est installé, activez ultimate_order. Autres options Mention complémentaire sur les commandes (sans coupure automatique de ligne) Filigrane sur les brouillons Attributs supplémentaires Même principe que pour les propositions commerciales (attributs sur l’entête et sur les lignes). Configuration des Commandes fournisseurs Vous trouverez le module Fournisseur dans la famille Gestion de la relation fournisseur (GRF). Figure 8.3 – Configuration du module Fournisseur Onglet Commande fournisseur — Modèles de numérotation Muguet — numéro de la forme CFyymm-nnnn (ex. CF1301-0001) Orchidee — numéro personnalisable selon un masque (mêmes balises) Modèles de documents Si le module UltimatePDF est installé, activez ultimate_supplierorder. Autres options — Variables de substitution Une mention complémentaire peut être ajoutée sur les commandes fournisseurs. Les variables de substitution suivantes sont disponibles dans les modèles d’emails : __USER_SIGNATURE__ __USER_ID__ __USER_LOGIN__ __USER_LASTNAME__ __USER_FIRSTNAME__ __USER_FULLNAME__ __USER_SUPERVISOR_ID__ __USER_REMOTE_IP__ __MYCOMPANY_NAME__ __MYCOMPANY_EMAIL__ __MYCOMPANY_PROFID1__ à __MYCOMPANY_PROFID6__ __MYCOMPANY_CAPITAL__ __MYCOMPANY_FULLADDRESS__ __MYCOMPANY_ADDRESS__ __MYCOMPANY_ZIP__ __MYCOMPANY_TOWN__ __MYCOMPANY_COUNTRY__ __MYCOMPANY_COUNTRY_ID__ __MYCOMPANY_CURRENCY_CODE__ __ID__ __REF__ __REFCLIENT__ __REFSUPPLIER__ __EXTRAFIELD_XXX__ __THIRDPARTY_ID__ __THIRDPARTY_NAME__ __THIRDPARTY_NAME_ALIAS__ __THIRDPARTY_EMAIL__ __PROJECT_ID__ __PROJECT_REF__ __PROJECT_NAME__ __CONTRACT_HIGHEST_PLANNED_START_DATE__ __CONTRACT_HIGHEST_PLANNED_START_DATETIME__ __CONTRACT_LOWEST_EXPIRATION_DATE__ __CONTRACT_LOWEST_EXPIRATION_DATETIME__ __ONLINE_PAYMENT_URL__ __ONLINE_PAYMENT_TEXT_AND_URL__ __SECUREKEYPAYMENT__ __SECUREKEYPAYMENT_MEMBER__ __SECUREKEYPAYMENT_ORDER__ __SECUREKEYPAYMENT_INVOICE__ __SECUREKEYPAYMENT_CONTRACTLINE__ __DIRECTDOWNLOAD_URL_PROPOSAL__ __DIRECTDOWNLOAD_URL_ORDER__ __DIRECTDOWNLOAD_URL_INVOICE__ __DATE_YMD__ __DATE_DUE_YMD__ __AMOUNT__ __AMOUNT_EXCL_TAX__ __AMOUNT_VAT__ __AMOUNT_FORMATED__ __AMOUNT_EXCL_TAX_FORMATED__ __AMOUNT_VAT_FORMATED__ __DAY__ __DAY_TEXT__ __DAY_TEXT_SHORT__ __DAY_TEXT_MIN__ __MONTH__ __MONTH_TEXT__ __MONTH_TEXT_SHORT__ __MONTH_TEXT_MIN__ __YEAR__ __PREVIOUS_DAY__ __PREVIOUS_MONTH__ __PREVIOUS_YEAR__ __NEXT_DAY__ __NEXT_MONTH__ __NEXT_YEAR__ __DOL_MAIN_URL_ROOT__ __(AnyTranslationKey)__ __[AnyConstantKey]__ __FROM_NAME__ __FROM_EMAIL__ Approbation en trois étapes Par défaut, les commandes fournisseurs nécessitent deux étapes (créer + approuver). L’option Activer l’ap- probation en trois étapes si le montant HT est supérieur à (valeur) ajoute une troisième validation : Étape 1 : Validation Étape 2 : Première approbation Étape 3 : Seconde approbation (si le montant dépasse le seuil) Laissez le champ vide pour n’exiger qu’une seule approbation ; mettez 0.1 pour que la double approbation soit toujours exigée. N’oubliez pas de donner les permissions aux groupes ou utilisateurs concernés. Statut de contrôle par ligne L’option Utiliser un statut de contrôle (approuvé/refusé) pour les lignes de produits lors de la réception est disponible, mais elle est incompatible avec le module Réception activé. Attributs supplémentaires Même principe que pour les modules précédents. Configuration des Contrats Vous trouverez le module Contrats dans la famille Gestion de la relation client (GRC). Figure 8.4 – Configuration du module Contrats Modèles de numérotation Magre — numéro personnalisable selon un masque Serpis — numéro de la forme CTyymm-nnnn Mêmes balises de masque que pour les modules précédents. Autres options : mention complémentaire sur les contrats (sans coupure automatique). Attributs supplémentaires : même principe. Configuration des Interventions Vous trouverez le module Interventions dans la famille Gestion de la relation client (GRC). Figure 8.5 – Configuration du module Interventions Modèles de numérotation Arctic — numéro personnalisable selon un masque Pacific — numéro de la forme FIyymm-nnnn Modèles de documents Le modèle Soleil est le modèle de fiche d’intervention standard. Si le module UltimatePDF est installé, activez ultimate_inter. Autres options Mention complémentaire sur les fiches d’intervention Filigrane sur les brouillons Affichage des produits sur la fiche d’intervention (pour les interventions générées depuis des com- mandes) Attributs supplémentaires : même principe. Configuration du Gestionnaire de tickets Vous trouverez le module Gestionnaire de tickets dans la famille Gestion de la relation client (GRC). Figure 8.6 – Configuration du module Tickets Modèles de numérotation Universal — numéro personnalisable selon un masque Simple — numéro de la forme TSyymm-nnnn Mêmes balises de masque que pour les modules précédents. Paramètres Envoyer une notification à l’adresse e-mail principale — envoie un email à l’adresse définie dans la configuration (champ « Email de notification de »). Affecter automatiquement l’utilisateur qui a créé le ticket — lors de la création, l’utilisateur est auto- matiquement affecté au ticket. Notifications E-mail de notification à : adresse de réception des notifications Email from de notification : adresse expéditrice Introduction au message lors de l’envoi d’un e-mail Signature de l’email de réponse Interface publique Dans l’onglet Interface publique, une URL publique (sans identification) permet aux utilisateurs externes de soumettre des tickets. Figure 8.7 – Interface publique des tickets Attributs supplémentaires : même principe que pour les modules précédents. Configuration des Demandes de tarifs fournisseur Vous trouverez le module Demandes de tarifs fournisseur dans la famille Gestion de la relation fournisseur (SRM). Figure 8.8 – Configuration du module Demandes de tarifs Modèles de documents Le modèle Aurore est disponible par défaut. Si le module UltimatePDF est installé, activez ultimate_supplierproposal. Autres options Figure 8.9 – Options du module Demandes de tarifs Vous pouvez ajouter une mention complémentaire sur les demandes de tarifs fournisseurs (sans coupure automatique de ligne). 8.2 Propositions commerciales Créer une nouvelle proposition Sous le chapeau Propositions commerciales, cliquez sur le lien Nouvelle proposition. Le champ Référence est incrémenté et renseigné automatiquement selon le modèle de numérotation configuré. Vous pouvez ajouter une référence libre (non obligatoire). Sélectionnez le Tiers (client) dans la liste — obligatoire. Les champs obligatoires sont la date de proposition et la durée de validité. Les champs agrémentés d’une icône ? renvoient à des listes déroulantes modifiables dans Accueil > Configu- ration > Dictionnaires. Cliquez sur Créer brouillon, ajoutez vos lignes (produits/services), puis validez. Figure 8.10 – Formulaire de création d’une nouvelle proposition commerciale Clôturer une proposition Cliquez sur le bouton Accepter/Refuser. Dans la liste déroulante Clôturer au statut, choisissez : Signée (à facturer) — la propale est acceptée Non signée (fermée) — la propale est refusée Figure 8.11 – Clôture d’une proposition commerciale Astuce Pour le cycle habituel Propale → Commande → Facture, activez le module Workflow (Configu- ration des modules > Modules complémentaires > Outils multi-modules), puis activez les options : Créer automatiquement une commande client à la signature d’une proposition commerciale Classer la/les proposition(s) source(s) facturée(s) au classement facturé de la commande Classer la/les proposition(s) source(s) facturée(s) à la validation d’une facture client Après validation (passage à « Signée à facturer »), la liste déroulante CRÉER permet de générer : CRÉER COMMANDE, CRÉER INTERVENTION, CRÉER CONTRAT, CRÉER FACTURE. Créer une facture Dans le cas du choix Signée (à facturer), cliquez sur le bouton CRÉER FACTURE. Figure 8.12 – Création d’une facture depuis une proposition Options cachées Ces constantes sont à définir à 1 dans Accueil > Configuration > Divers. Leur activation peut rendre l’ap- plication instable si mal utilisée. Constante Effet PROPAL_CLONE_ON_CREATE_PAGE Ajoute une option sur la page de création pour créer par clonage depuis une propale existante MAIN_PROPAL_CHOOSE_ODT_DOCUMENT Permet de sélectionner le document ODT lors de la fermeture ou annulation des propositions MAIN_GENERATE_PROPOSALS_WITH_PICTURE Ajoute l’image du produit dans le PDF généré (réduit la largeur disponible pour la description) PRODUIT_PDF_MERGE_PROPAL Inclut tous les PDF liés aux produits dans le PDF final de la proposition PROPOSAL_ALLOW_EXTERNAL_DOWNLOAD Génère automatiquement une clé de partage pour téléchargement externe du PDF Constante Effet MAIN_PDF_PROPAL_USE_ELECTRONIC_SIGNING Ajoute le champ de signature électronique (esign) dans les PDF de propositions (v8.0+) Cas concrets 1 Affectation d’un commercial à un tiers Si un commercial avec accès restreint doit pouvoir voir un tiers et accéder à son devis, rendez-vous sur la fiche du tiers, cliquez sur l’icône Modifier (crayon) sur la ligne Commerciaux, et ajoutez l’utilisateur concerné. Son nom vient s’ajouter à celui de l’administrateur dans la liste des commerciaux habilités. Lignes d’options à prix affiché mais non comptabilisé Pour faire apparaître le mot option dans la colonne Total HT, mettez une quantité à 0. La ligne affiche le tarif mais son montant ne s’ajoute pas au total de la proposition. Cas concrets 2 — Signature électronique en ligne Voici comment réaliser un modèle de courriel comprenant un lien de signature en ligne. Étape 1 — Créer le modèle d’email Dans Emails > Modèles des courriels, créez un nouveau modèle de type Propositions/Devis : Sujet : __MYCOMPANY_NAME__ | Devis No. __REF__ Corps : insérez la variable __ONLINE_SIGN_URL__ pour inclure le lien de signature Figure 8.13 – Paramétrage du modèle d’email avec signature en ligne Étape 2 — Envoyer l’email depuis la fiche devis Depuis la page du devis, récupérez ce modèle. Toutes les variables de remplacement sont automatiquement substituées. Figure 8.14 – Variables de remplacement dans le modèle d’email Figure 8.15 – Email envoyé avec les variables résolues Le mail arrive chez le client avec le lien de signature électronique. Figure 8.16 – Email reçu par le client avec lien de signature Étape 3 — Le client signe en ligne Le client clique sur le lien et accède à la page de signature : Figure 8.17 – Page de signature accessible par le lien Pour recevoir une notification lors de la signature, activez le module Notifications sur les événements métiers et configurez-le pour lier la notification au modèle de mail (renseignez une adresse email destinataire). Figure 8.18 – Configuration des notifications Le client signe la proposition : Figure 8.19 – Client en train de signer la proposition Et vous recevez la confirmation : Figure 8.20 – Confirmation de signature reçue 8.3 Commandes clients Cycle de vie Une commande client suit le cycle de vie suivant : Avec le module Expéditions activé : Brouillon → Validée → Expédition en cours → Livrée → Traitée (Livrée + Facturée) Sans le module Expéditions : Brouillon → Validée → Livrée → Traitée (Livrée + Facturée) Note Le statut À facturer n’est pas un statut spécifique du workflow. Il équivaut au statut Validée ou Livrée selon votre organisation, la création de la facture pouvant intervenir avant ou après la livraison. Une fois validée, si le module Expéditions est actif, vous pouvez générer un ou plusieurs bons d’expédition et/ou bordereaux de réception. Vous pouvez aussi créer une ou plusieurs factures clients depuis la commande. Cliquer sur Classer facturée + Classer livrée passe la commande au statut Traitée (fin du cycle de vie) : elle disparaît du menu Commandes livrées et apparaît dans Commandes Traitées. Créer une nouvelle commande client Sous le chapeau Commandes clients, cliquez sur Nouvelle commande. La référence est incrémentée automatiquement. Sélectionnez le Tiers (client) — obligatoire Renseignez la date — obligatoire Optionnel : référence personnalisée Une commande peut également être créée directement depuis une proposition commerciale (les champs sont préremplis). Cliquez sur Créer brouillon, ajoutez vos lignes, puis validez. Une fois validée, la liste déroulante CRÉER propose : CRÉER COMMANDE D’ACHAT, CRÉER INTERVENTION, CRÉER CONTRAT, CRÉER FACTURE. Figure 8.21 – Formulaire de création d’une nouvelle commande client Expédition / Réception Avertissement Vous devez d’abord valider la commande pour pouvoir créer une expédition. Dans la fiche commande client, passez sur l’onglet Expéditions / Bons de réceptions. Figure 8.22 – Onglet Expéditions dans la fiche commande Choisissez l’entrepôt source dans la liste déroulante et cliquez sur CRÉER EXPÉDITION. Figure 8.23 – Formulaire de création d’une expédition Renseignez la date de livraison prévue, les informations de livraison (poids, largeur…), la méthode de livraison et un numéro de suivi. La quantité à expédier est renseignée automatiquement (les liens Remplir et Vider permettent d’ajuster). Cliquez sur Créer. Une fois la fiche d’expédition validée, le bouton Bon de réception apparaît (si le module est activé). Figure 8.24 – Fiche expédition créée Vous pouvez utiliser le bouton SIGN SHIPPING pour la signature de l’expédition. Figure 8.25 – Bouton Sign Shipping sur la fiche expédition Figure 8.26 – Bon de réception associé Figure 8.27 – Suite de la fiche expédition Options cachées Ces constantes sont à définir à 1 dans Accueil > Configuration > Divers : Figure 8.28 – Options cachées commandes (1/3) Figure 8.29 – Options cachées commandes (2/3) Figure 8.30 – Options cachées commandes (3/3) Constante Effet ORDER_ALLOW_EXTERNAL_DOWNLOAD Génère automatiquement une clé de partage pour téléchargement externe du PDF MAIN_USE_PROPAL_REFCLIENT_FOR_ORDER Copie la référence client de la proposition à la commande (v7.0+) ORDER_ENABLE_NEGATIVE Permet de valider une commande même lorsque le montant est négatif 8.4 Commandes fournisseurs Une fois les produits ou services d’une commande reçus, il faut retourner sur la fiche commande pour saisir la réception. Le statut passe alors à reçu partiellement ou reçu complètement selon les informations saisies. Créer une nouvelle commande fournisseur Sous le chapeau Commandes fournisseurs, cliquez sur Nouvelle commande. La référence est incrémentée automatiquement. Sélectionnez le Tiers (fournisseur) — obligatoire Optionnel : référence du fournisseur Note Seuls les produits rattachés à ce fournisseur sont disponibles dans la liste déroulante Ajout nouvelle ligne. Pour ajouter un nouveau produit, créez-le dans Produits/Services, puis dans l’onglet Fournisseur de la fiche produit, indiquez le prix et la quantité minimum pour ce fournisseur. Cliquez sur Créer brouillon, ajoutez vos lignes. Une fois validée, la commande doit être acceptée ou refusée par un responsable. Si acceptée, le bloc Passer commande apparaît : renseignez une méthode de commande et passez commande — le statut devient Attente réception. Un bloc Réceptionner remplace alors le bloc Passer commande. Réceptionner une commande fournisseur Dans le bloc Réceptionner, renseignez la date de livraison, choisissez l’option dans le champ Livraison (Totale/Partielle), ajoutez un commentaire si besoin, et cliquez sur Réceptionner. L’option Totale fait disparaître le bloc ; un bouton Réouvrir apparaît alors. Supprimer une commande fournisseur Une commande ne peut être supprimée que si elle est à l’état brouillon. Une fois validée, elle peut seulement être annulée. Avertissement Une commande supprimée ne peut pas être récupérée. Modifier une commande fournisseur Une commande ne peut être modifiée que si elle est à l’état brouillon. Options cachées Constante Effet FOURN_PRODUCT_AVAILABILITY Active la disponibilité des produits fournisseur sur la page des prix (doublonne delivery_delay, introduit en v3.8) SUPPLIER_ORDER_AUTOADD_USER_CONTACT Ajoute automatiquement l’utilisateur approuvant la commande en tant que contact SUPPLIER_ORDER_USE_DISPATCH_STATUS Ajoute un statut sur chaque ligne d’expédition de commande SUPPLIER_ORDER_NO_DIRECT_APPROVE Supprime le bouton « Valider et Approuver » — oblige à faire Valider et Approuver en deux étapes séparées SUPPLIER_ORDER_WITH_NOPRICEDEFINED Permet d’ajouter un produit même si aucun prix fournisseur n’a été défini SUPPLIER_ORDER_EDIT_BUYINGPRICE_DURING_RECEIPT Permet de modifier le prix d’achat pour le calcul PMP lors de la réception (v6.0+) 8.5 Contrats Créer un nouveau contrat Les contrats consignent les services clientèle assurés pour les clients. Vous pouvez créer des contrats pour des clients existants et spécifier le type de service et les conditions applicables. Dans le menu de gauche, sous Contrat, cliquez sur Nouveau contrat. Renseignez : Client — obligatoire (liste des tiers) Réf. — renseignée automatiquement selon le masque configuré Commercial chargé du suivi / commercial signataire Date (automatique, modifiable) Rattachement à un projet (optionnel) Note publique / Note privée Cliquez sur Créer. Ajoutez une ou plusieurs lignes de services (zone libre ou liste des services) avec une date prévue de mise en service et une date prévue de fin de service. Le bouton SERVICES permet d’activer tous les services ou de clôturer tous les services en une seule action. Figure 8.31 – Formulaire de création d’un nouveau contrat Clôturer un service Utilisez l’icône en fin de ligne du service, choisissez une date effective de fin de service et cliquez sur Clôturer. Le statut du service et de la fiche de contrat passent à Fermé. Options cachées Constante Effet CONTRACT_SUPPORT_PRODUCTS Les produits sont également suggérés dans le module contrat (en plus des services) 8.6 Interventions Créer une nouvelle intervention Dans le menu de gauche, cliquez sur Interventions > Nouvelle intervention. Choisissez un tiers dans la liste déroulante. Vous pouvez rattacher l’intervention à un projet et renseigner une description. Cliquez sur Créer brouillon. Renseignez ensuite les lignes d’intervention : description, date, heure et durée. Vous pouvez ajouter plusieurs lignes — le champ Durée totale s’incrémente automatiquement. Un contrat peut être rattaché à l’intervention. Figure 8.32 – Formulaire de création d’une nouvelle intervention Modifier une intervention Cliquez sur le pictogramme Modifier sur la ligne d’intervention pour l’éditer. Supprimer une intervention Cliquez sur le pictogramme Supprimer sur la ligne d’intervention pour la supprimer. Options cachées Constante Effet FICHEINTER_CLASSIFY_BILLED Permet de classer une intervention comme « facturée » — ajoute aussi le trigger FICHINTER_CLASSIFY_BILLED dans les événements automatiques de l’agenda FICHINTER_DISABLE_DETAILS Désactive la saisie des lignes de détail — permet de valider sans ligne 8.7 Tickets Créer un nouveau ticket Figure 8.33 – Formulaire de création d’un nouveau ticket Une fois le ticket créé, sa fiche s’affiche avec toutes les informations renseignées et les actions disponibles. Figure 8.34 – Fiche d’un ticket créé Utiliser un ticket Depuis la fiche ticket, plusieurs actions sont disponibles : Ajouter un message Cliquez sur le bouton AJOUTER UN MESSAGE pour un premier contact avec le client ou pour docu- menter l’avancement. Figure 8.35 – Ajout d’un message sur le ticket Actions disponibles Figure 8.36 – Boutons d’action sur la fiche ticket CRÉER INTERVENTION — lance une intervention liée au ticket. Le temps renseigné dans la fiche d’intervention s’affiche dans le champ Durée calculée du ticket. FERMER | RÉSOUDRE TICKET — ferme et résout le ticket. ABANDONNER LE TICKET — abandonne le ticket en dernier ressort. 8.8 Demandes de tarifs fournisseurs Créer une nouvelle demande de prix Dans le menu de gauche, cliquez sur Propositions commerciales fournisseurs > Nouvelle demande. Choisissez un fournisseur dans la liste déroulante et cliquez sur Créer brouillon. Ajoutez les lignes de produits/services pour lesquels vous souhaitez demander un tarif, puis validez et envoyez la demande au fournisseur. Figure 8.37 – Formulaire de création d’une demande de tarifs fournisseur 09. FACTURATION | PAIEMENT 9.1 Introduction L’onglet Facturation | Paiement regroupe les modules suivants : Factures et avoirs — gestion des factures et avoirs clients, gestion des factures fournisseurs Dépenses spéciales — taxes, charges fiscales ou sociales, dividendes Salaires — enregistrement et suivi du paiement des salaires des employés Emprunt — gestion des emprunts Dons — gestion des dons Banques et caisses — gestion des comptes financiers (comptes bancaires, postaux ou caisses liquide) Prélèvements — gestion des paiements par prélèvements et génération du fichier de virements Marges — gestion des marges Comptabilité — comptabilité simplifiée ou en partie double Échéancier Figure 9.1 – Modules du panneau Facturation | Paiement Ces modules sont livrés en standard avec la distribution de Dolibarr et sont déjà installés. Configuration des Factures et avoirs Vous trouverez le module Factures et avoirs dans la famille Modules financiers (Compta/trésorerie). Onglet Divers — Modèles de numérotation Trois modèles sont disponibles : Mercure — numéro personnalisable selon un masque. Les masques peuvent être définis indépendamment pour les factures standards, de remplacement, les avoirs et les acomptes. Terre — numéros de la forme FAyymm-nnnn (factures et remplacement), AVyymm-nnnn (avoirs), ACyymm-nnnn (acomptes) Mars — numéros de la forme FAyymm-nnnn (factures), FRyymm-nnnn (remplacement), ACyymm-nnnn (acomptes), AVyymm-nnnn (avoirs) Balises disponibles dans le masque Mercure (identiques aux autres modules) : Balise Description {000000} Compteur incrémenté à chaque facture {000000+000} Compteur avec offset — ex. FC{000000+558886} pour démarrer à FC558887 {000000@x} Compteur remis à zéro le xème mois (x=0 = fiscal, x=99 = mensuel) {dd} / {mm} / {yy} / {yyyy} Jour, mois, année {cccc} / {cccc000} Code client / Code client + compteur propre {tttt} Code type entreprise Exemples pour la 99ème facture du tiers LaCompanie faite le 31/03/2021 : ABC{yy}{mm}-{000000} → ABC2103-000099 {0000+100}-XXX-{dd}-YYY → 0199-XXX-31-YYY Modèles de documents Activez le modèle souhaité (bouton au vert). Si le module UltimatePDF est installé, activez ultimate_invoice (modèle complet avec colonnes Remise, Prix unitaire remisé…). Avertissement Si vous utilisez UltimatePDF et souhaitez profiter de toutes ses fonctionnalités, créez le code LCR dans Configuration des dictionnaires > Modes de paiement s’il n’existe pas, et activez-le. Mode de paiement suggéré par défaut Vous pouvez proposer le paiement par virement (en sélectionnant votre compte bancaire, préalablement renseigné) ou par chèque. Si rien n’est renseigné ici, vos coordonnées bancaires n’apparaîtront sur aucun document. Autres options Forcer la date de facture à la date de validation Mention complémentaire (ex. En cas de non paiement à l’échéance, le montant sera majoré d’intérêts au taux de 1,50% par mois de retard. Pas d’escompte en cas de règlement anticipé.) Filigrane sur les brouillons de factures Attributs supplémentaires (factures clients) Même principe que pour les modules précédents (22 types disponibles, voir chapitre Tiers). Exemple d’utilisation avancée : un attribut Liste issue d’une table nommé « Type entreprise » (code typent, table c_typent) ajoute une liste déroulante des types d’entreprises sur la fiche facture. Pour récupérer cette valeur dans un modèle PDF : $test = $object->array_options['options_typent']; $pdf->MultiCell(100, 4, $test, '', 'R'); Attributs supplémentaires (lignes) Même principe pour les lignes de factures. Un attribut Liste de sélection nommé « Au choix » (code choix) ajoutera une ligne de sélection sous chaque ligne de la facture. Configuration des Factures fournisseurs Onglet Facture fournisseur — Modèles de numérotation Cactus — numéro de la forme SIyymm-nnnn (ex. SI1301-0001) Tulip — numéro personnalisable selon un masque (mêmes balises) Modèles de documents Si le module UltimatePDF est installé, activez ultimate_supplierinvoice. Autres options : mention complémentaire sur les factures. Attributs supplémentaires : même principe. TVA standard et règles d’arrondi Deux méthodes de calcul de TVA coexistent : Méthode 1 (défaut Dolibarr) — arrondir la TVA ligne par ligne, puis sommer : Ligne HT TVA 10% exacte TVA arrondie Total avec TVA Alpha 1,24 0,124 0,12 1,36 Beta 1,24 0,124 0,12 1,36 Total 2,48 — 0,24 2,72 Méthode 2 — sommer la TVA de toutes les lignes, puis arrondir le total : Calcul Résultat Total HT 2,48 TVA totale : (1,24 + 1,24) × 10% = 0,248 → arrondi 0,25 Total TTC 2,73 La différence (0,01 ici) est inhérente aux arrondis et non un bug. La méthode 1 est recommandée car elle évite les incohérences de présentation. Pour activer la méthode 2 (non recommandé sauf obligation légale) : constante MAIN_ROUNDOFTOTAL_NOT_TOTALOFROUND = 1 dans Accueil > Configuration > Divers (Dolibarr v3.5+). Option d’exigibilité de TVA Deux régimes sont disponibles : Standard — TVA sur encaissement : sur livraison pour les biens, sur paiement pour les services. Option services sur Débit — TVA sur débit : sur livraison pour les biens, sur facturation (débit) pour les services. Log inaltérable (Loi de finances 2016 / NF525) Dolibarr est concerné par la loi si vous êtes assujetti à la TVA et utilisez le logiciel pour enregistrer des encaissements de particuliers (B2C ou mixte B2B/B2C). Vous n’êtes pas concerné si : - Vous n’encaissez pas d’argent - Vous êtes une association/organisme non assujetti à la TVA - Tous vos encaissements passent par intermédiation directe d’un établissement de crédit - Vous ne facturez que des professionnels (B2B uniquement) Si vous êtes concerné, activez le module Log inaltérable (BlockedLog) fourni avec Dolibarr v11+. Une attestation de conformité devra ensuite être obtenue auprès d’un tiers. Configuration du module Marges Vous trouverez le module Marges dans la famille Modules financiers (Compta/trésorerie). Figure 9.2 – Configuration du module Marges — choix du type de marge Choisissez le type de marge gérée. Définitions : Marge brute = Prix de vente HT – Prix d’achat HT (ou coût d’achat incluant les frais accessoires) Marge nette = Marge brute – frais de distribution (loyers, personnel, publicité…) Taux de marge = Marge commerciale / Coût d’achat × 100 Taux de marque = Marge commerciale / Prix de vente HT × 100 9.2 Factures clients Types de factures Lors de la création d’une facture (menu Factures clients > Nouvelle facture, ou depuis l’onglet Client d’une fiche tiers via le bouton Créer facture ou avoir), vous avez le choix entre : Figure 9.3 – Sélection du type de facture Facture standard — facture traditionnelle (facture de doit). Aucun prérequis. Facture d’acompte — fait suite à la réception d’un acompte, quand il n’est pas encore possible de saisir le paiement sur une facture définitive. Facture de situation — facturation progressive par pourcentage d’avancement (fonctionnalité activée dans l’onglet Facture de situation d’UltimatePDF, ou via la constante INVOICE_USE_SITUATION). Doit être créée depuis la fiche du tiers ou depuis une proposition/commande, pas depuis Factures > Nouvelle facture. Facture modèle — pour créer un modèle, créez d’abord une facture standard brouillon et convertissez-la en modèle. Figure 9.4 – Création d’une facture modèle Vous pouvez associer une tâche planifiée à un modèle pour les factures récurrentes. Avertissement Pour les factures récurrentes, le module Travaux planifiés doit être activé, sinon une alerte s’affiche lors de l’association. Figure 9.5 – Alerte module Travaux planifiés non activé Figure 9.6 – Configuration de la clé de sécurité pour les travaux planifiés Dans la configuration du module, activez la Clé de sécurité pour l’URL de lancement des travaux programmés. Pour les factures récurrentes, allez dans Accueil > Outils d’administration > Travaux planifiés pour configurer la tâche. Figure 9.7 – Page de configuration des travaux planifiés Figure 9.8 – Lancement manuel d’un travail planifié Pour automatiser sur un serveur Unix (exécution toutes les 5 minutes) : */5 * * * * /path/scripts/cron/cron_run_jobs.php webmaster > /documents/cron_run_jobs.php Facture de remplacement — permet de refaire une facture sur laquelle il y a des erreurs et sur laquelle aucun paiement n’a été saisi. Une seule facture de remplacement (R) par facture de doit (F). Quand R est validée, F passe automatiquement au statut abandonné et le cycle de vie continue sur R. Créer une facture client Dans Facturation | Paiement > Factures clients > Nouvelle facture. Choisissez le client, la date, les conditions de règlement. Tant que la facture n’est pas validée, vous pouvez corriger : Les lignes (supprimer, modifier TVA/prix HT/TTC/quantité via l’icône Modifier) Les champs société (via la constante FACTURE_CHANGE_THIRDPARTY = 1) Date, date limite règlement, conditions règlement, mode de règlement, projet (bouton Modifier) Supprimer une facture client Un numéro de référence est attribué de façon irréversible. Supprimer une facture crée un trou dans le suivi. Important Préférez une facture de remplacement (si aucun paiement) ou une facture d’avoir (si déjà validée ou payée) plutôt que la suppression directe. Facture d’acompte La facture d’acompte fait suite à la réception d’un acompte. Vous pouvez en créer autant que désiré. Elle sera ensuite convertie en réduction sur la facture définitive. Processus : Créez une facture d’acompte (Type = Facture d’acompte) Validez-la Cliquez sur Émettre règlement et renseignez le montant de l’acompte versé Cliquez sur Payer Note Le bouton Convertir en réduction future n’apparaît que si le montant restant à payer est ramené à 0. Cliquez sur Convertir en réduction future — le montant apparaît en ligne de déduction sur la facture définitive Figure 9.9 – Fiche facture d’acompte L’acompte se présente classiquement dans la facture définitive sous la forme d’une ligne avec un montant négatif : Figure 9.10 – Acompte en ligne négative (haut de la facture définitive) Figure 9.11 – Acompte en bas de la facture définitive Le module UltimatePDF permet une présentation alternative via la constante FACTURE_DEPOSITS_ARE_JUST_PAYMENTS (l’acompte est traité comme un paiement, pas comme une ligne négative) : Figure 9.12 – Présentation alternative de l’acompte avec UltimatePDF Factures d’avoir On crée un avoir sur une facture de doit. Plusieurs avoirs sont possibles sur une même facture. L’avoir est transformé en réduction pour réduire le paiement d’une autre facture en attente. Figure 9.13 – Création d’un avoir sur une facture Cliquez sur Convertir en réduction future pour utiliser ce montant. Figure 9.14 – Utiliser la réduction sur une nouvelle facture Avertissement La facture à corriger doit être validée pour pouvoir utiliser la remise. Cliquez sur Appliquer dans la section Remises de la facture à corriger : Figure 9.15 – Application de la réduction (section Remises) Puis passez la facture à Passer payée : Figure 9.16 – Facture passée à payée après remise Réduire le montant total / solde à payer Réduction — réduction relative (pourcentage) du prix de vente d’une ou plusieurs lignes, définie ligne par ligne (0% à 100%, le 100% affichant la mention offert). Remise — réduction du prix total de la facture. Deux types : Remise associée à un versement déjà perçu — les avoirs et acomptes convertis en réduction future s’affichent dans la section Remises de la facture et sont mentionnés en bas du document comme versements anticipés déduits du total. Remise non associée à un versement — définie sur la fiche client (onglet Client, montant fixe ou pourcentage). Ces remises apparaissent comme des lignes négatives dans le détail de la facture et réduisent le montant total. Options cachées Constantes à définir à 1 dans Accueil > Configuration > Divers : Constante Effet MAIN_DEPOSIT_MULTI_TVA Dans la facture d’acompte, crée une ligne par taux de TVA depuis le document d’origine (v6.0) FACTURE_SHOW_SEND_REMINDER Affiche le lien « Envoyer rappel par mail » (ancienne fonction) INVOICE_CAN_ALWAYS_BE_EDITED Permet de modifier les factures même si un paiement a été lancé INVOICE_CAN_ALWAYS_BE_REMOVED Permet de toujours supprimer les factures (même si ce n’est pas la dernière) INVOICE_CAN_NEVER_BE_REMOVED Interdit la suppression des factures (sauf brouillons) INVOICE_POSITIVE_CREDIT_NOTE Les montants sur les avoirs sont affichés en positif FACTURE_CHANGE_THIRDPARTY Permet de changer le tiers dans les factures brouillon FACTURE_USE_PROFORMAT Active le type de factures PROFORMAT FACTURE_DEPOSITS_ARE_JUST_PAYMENTS Traite les acomptes comme des paiements (pas comme réduction du montant) FACTURE_SENDBYEMAIL_FOR_ALL_STATUS Permet d’envoyer une facture par email même au statut brouillon MAIN_GENERATE_DOCUMENTS_WITHOUT_VAT Désactive la TVA sur les documents (pour les associations, fonctionne avec le modèle crabe) INVOICE_CREDIT_NOTE_STANDALONE On peut créer une note de crédit sans facture (v3.9) INVOICE_DISABLE_REPLACEMENT Désactive les factures de remplacement INVOICE_DISABLE_CREDIT_NOTE Désactive les notes de crédit WORKFLOW_BILL_ON_SHIPMENT Adapte l’étiquette du bouton pour la facturation sur expéditions MAIN_DEFAULT_PAYMENT_TERM_ID Définit le délai de paiement par défaut au niveau entreprise DOC_SHOW_FIRST_SALES_REP Affiche le nom du commercial sur les PDF INVOICE_DISABLE_DEPOSIT Désactive les factures de dépôt Constante Effet INVOICE_ALLOW_EXTERNAL_DOWNLOAD Génère automatiquement une clé de partage pour téléchargement externe (v7.0+) INVOICE_POINTOFTAX_DATE Ajoute la date d’imposition sur les factures (v4.0+) FACTURE_ENABLE_NEGATIVE_LINES Permet d’ajouter des lignes négatives à une facture (v8.0.2+) INVOICE_USE_DEFAULT_DOCUMENT Sélection dynamique du modèle de facture selon le type (v9.0+) FACTURE_REUSE_NOTES_ON_CREATE_FROM Réutilise les notes publiques/privées de l’objet précédent (propale, commande…) lors de la création INVOICE_USE_SITUATION Active la fonctionnalité « facture de situation » MAIN_ROUNDOFTOTAL_NOT_TOTALOFROUND Active la méthode 2 d’arrondi TVA (arrondi du total, non recommandé) Clés de substitution disponibles pour les notes des factures récurrentes : __INVOICE_MONTH__, __INVOICE_PREVIOUS_MONTH__, etc. Facture de situation La facture de situation permet une facturation progressive par tranches de pourcentage. Avertissement Créez la facture de situation depuis la fiche du tiers (onglet Client) ou depuis une proposition/commande, et non depuis le menu Factures > Nouvelle facture. Activez la constante INVOICE_USE_SITUATION = 1. Renseignez le pourcentage de progression ligne par ligne (ou via le bouton Modifier toutes les lignes). Par exemple, pour la première facture à 40% : Figure 9.17 – Facture de situation à 40% du montant initial Une fois cette facture de situation réglée, le bouton Créer prochaine situation apparaît. Figure 9.18 – Créer la prochaine facture de situation Le brouillon créé propose le type facture suivant situation avec le numéro de la facture précédente. Note Pour ajouter 40% supplémentaires par rapport à la facture précédente, renseignez 80% (40% + 40%) dans le champ progression — la valeur est cumulative, pas incrémentale. Pour la troisième et dernière facture de situation, ajoutez 20% pour atteindre 100%. Scripts Script 1 — Fusion de factures PDF Génère un PDF unique à partir de l’ensemble des factures PDF d’une période. Le script rebuild_merge_pdf.php se trouve dans /scripts/invoices/. chmod +x rebuild_merge_pdf.php ./rebuild_merge_pdf.php filter=payments 20211001 20220930 lang=fr_FR Pour choisir un modèle de facture en sortie (ex. ultimate_invoice), éditez le script pour y intégrer le nom du modèle. Figure 9.19 – Commande du script de fusion PDF Le PDF généré est disponible dans /documents/facture/temp/ sous le nom mergedpdf_payments_20211001_20220930.pdf. Figure 9.20 – Résultat du script de fusion PDF Script 2 — Email aux commerciaux pour factures impayées Envoie un email à tous les commerciaux associés à un tiers client ayant au moins une facture impayée. Le script email_unpaid_invoices_to_representatives.php se trouve dans /scripts/invoices/. chmod +x email_unpaid_invoices_to_representatives.php ./email_unpaid_invoices_to_representatives.php confirm Figure 9.21 – Commande du script email commerciaux Figure 9.22 – Exemple d’email reçu par un commercial Figure 9.23 – Résultat de l’exécution du script Figure 9.24 – Sortie du script 9.3 Factures fournisseurs Créer une facture fournisseur Dans Factures fournisseurs > Nouvelle facture. Choisissez un fournisseur, renseignez une référence fournisseur, un libellé (optionnel), une date de facturation et d’échéance, éventuellement une note publique. Cliquez sur Créer brouillon. Intégrez les produits ou services (ceux déjà définis ou à saisir directement). Pour le calcul de la TVA, choisissez le mode 1 (arrondi ligne par ligne) ou mode 2 (arrondi du total) selon la méthode utilisée par votre fournisseur. Avertissement La validation de la facture est irréversible. Un numéro lui est attribué selon le modèle de numérotation configuré. Modifier une facture fournisseur Possible uniquement sur brouillon. Vous pouvez agir sur les lignes (supprimer/modifier) et corriger les champs référence fournisseur, libellé, dates via le bouton Modifier. Supprimer une facture fournisseur Possible depuis le bouton Supprimer au bas de la fiche. Un trou de numérotation s’ensuivra. Saisir les paiements Sélectionnez la facture et cliquez sur Émettre règlement. Renseignez la date, le mode de règlement, éventuellement le numéro de chèque/virement, le compte bancaire, et le montant réglé en fin de ligne. Enregistrez. Classer la facture Après paiement, la facture passe à l’état Commencée / Règlement commencé. Pour la passer à Payée : cliquez sur Classer Payée. Note Si vous avez coché l’option Classer automatiquement à « Payé » les factures entièrement payées, ce classement est fait automatiquement. Sans cela, une facture dont le règlement est émis mais non classée reste visible dans la liste des impayées. Cas concret — Facture fournisseur avec avoir Question : Si je reçois une facture fournisseur et un avoir pour erreur sur la facture, comment faire ? Réponse : Saisissez la facture fournisseur (facture de doit), puis saisissez une facture fournisseur normale avec un montant négatif (l’avoir). Émettez un règlement positif sur la facture et un règlement négatif sur l’avoir. Classez les deux comme Payées. Un paiement au débit et un au crédit apparaîtront dans les écritures bancaires. 9.4 Commandes à facturer Gérer une facture depuis une commande Dans Commandes à facturer, seules les commandes clôturées apparaissent. En cliquant sur la référence, vous ouvrez la fiche commande et pouvez : Cloner la commande (vous pouvez choisir un tiers différent via FACTURE_CHANGE_THIRDPARTY = 1) Classer facturée Créer la facture (vérifiez qu’une facture du montant total n’est pas déjà associée, car plusieurs facturations sont possibles) Expédier le produit — accède à l’onglet Expéditions/Réceptions pour créer une nouvelle expédition Modifier une facture commande Une fois la facture validée, cliquez sur Modifier pour corriger ou supprimer les lignes et rectifier les champs date, conditions de règlement, mode de règlement, projet. Re-validez ensuite. Supprimer une facture commande Vous ne pouvez pas supprimer une facture rattachée à une commande. Utilisez Classer abandonnée à la place. Cas concret — Facturer plusieurs commandes en une fois Question : Comment facturer en une fois plusieurs commandes pour un même client ? Réponse : Allez sur la fiche du client, onglet Client > toutes les commandes. Cliquez sur le bouton checkbox sous la loupe pour tout sélectionner. Choisissez Facturer commandes dans la liste déroulante d’actions. Le système propose de créer une facture par tiers (sinon une par commande). Validez ou non les factures. Options cachées Constante Effet FACTURE_CHANGE_THIRDPARTY Permet de changer le tiers lors du clonage d’une commande 9.5 Taxes et charges Créer une charge sociale Figure 9.25 – Création et règlement d’une charge sociale Dans Taxes et dividendes > Nouvelle charge. Renseignez le libellé, le type (liste modifiable dans Dictionnaires > Types de charges sociales) et le montant. Cliquez sur Ajouter. Le lien Règlements vous renvoie vers la page de règlement des charges. Pour émettre un règlement : ouvrez la fiche de la charge, cliquez sur Émettre règlement, renseignez la date, le mode de règlement, le compte à débiter et le montant. Cliquez sur Enregistrer puis Classer ‘Payée’. Figure 9.26 – Confirmation et classement d’une charge comme payée Modifier une charge sociale Ouvrez la fiche, cliquez sur Modifier. Seuls les champs Libellé, Date fin période et Date échéance sont accessibles. Supprimer une charge sociale Ouvrez la fiche, cliquez sur Supprimer. Une confirmation est demandée. La suppression est définitive. 9.6 Rapports Résultat/exercice par tiers Rapports > Par tiers — affiche le bilan des recettes et dépenses, détail par tiers, selon le mode comptable configuré (Créances-Dettes ou Recettes-Dépenses). Choisissez la période d’analyse et cliquez sur Rafraîchir. Chiffre d’affaires par tiers Rapports > Chiffre d’affaires > Par tiers — les tiers apparaissent avec leur CA et le pourcentage correspondant. La dernière colonne propose des icônes vers les statistiques propales, commandes et factures du tiers. Chiffre d’affaires par utilisateur Rapports > Chiffre d’affaires > Par utilisateur — même principe, par utilisateur/commercial. Journal des ventes Rapports > Journal des ventes — enregistre tous les mouvements du compte 411xxx (Clients). Chaque pièce comptable est ventilée sur trois lignes : compte 411xxx (client), compte 445xxx (TVA), compte 700xxx (vente produit). Journal des achats Rapports > Journal des achats — enregistre tous les mouvements du compte 401xxx (Fournisseurs). Ventilation sur trois lignes : compte 401xxx (fournisseur), compte 445xxx (TVA), compte 600xxx (achat produit). 9.7 Marges Gérer les prix d’achat / coûts de revient Sur les fiches produits et services, renseignez les prix d’achat fournisseurs (plusieurs possibles). Ils seront proposés en liste déroulante sur les lignes de saisie des propales, commandes clients et factures clients. Sur la fiche fournisseur d’un produit, le champ Charges permet d’ajouter un coût propre au prix d’achat (frais de transport, manutention…). Le total constitue le coût de revient du produit. Si le paramétrage du module est en marge nette, tous les calculs utilisent ce coût de revient (et non le seul prix fournisseur). Pour un prix fournisseur défini sur un lot minimum (ex. 100 DVD), saisissez également la charge correspondante : elle sera répartie en coût unitaire sur chaque élément du lot. Gérer vos commerciaux Pour suivre les marges par commercial, chaque commercial doit avoir son propre compte utilisateur interne. Sur l’onglet Fiche de chaque client, rattachez un seul commercial principal. Avertissement Le module Marges ne gère pas le cas de plusieurs commerciaux par tiers — les marges seraient multipliées par le nombre de commerciaux. Attribuez un seul commercial principal par tiers, et gérez les cas particuliers via l’onglet Contacts/Adresse de chaque document. Saisie d’un document Sur les lignes de saisie d’une propale/commande/facture, choisissez ou saisissez le prix d’achat : Ligne libre : saisissez le prix de vente et le prix d’achat (ou coût de revient) Produit de la base : choisissez un prix fournisseur existant ou saisissez un prix libre Un tableau récapitulatif des marges (produits / services / total) est affiché sur chaque fiche document. Note Si le prix d’achat n’est pas renseigné, la prise en compte de la ligne dans le calcul dépend du paramètre défini dans la configuration du module Marges. Cas des remises Une remise faite sur une ligne est prise en compte pour le calcul de la marge. Les remises globales sont prises en compte selon le paramétrage du module. 9.8 Facturation électronique Important Obligation réglementaire imminente À partir du 1er septembre 2026, toutes les entreprises françaises assujetties à la TVA doivent être capables de recevoir des factures électroniques. Les grandes entreprises et ETI doivent également émettre électroniquement dès cette date. Les PME et micro-entreprises suivront le 1er septembre 2027. La facturation électronique ne concerne pas que les marchés publics (Chorus Pro) : elle s’étend à toutes les transactions B2B (entre entreprises). Contexte réglementaire La réforme française de la facturation électronique B2B est issue de l’ordonnance n°2021-1190 du 15 septembre 2021. Elle repose sur un écosystème à trois niveaux : PPF (Portail Public de Facturation) — plateforme publique gérée par l’État, accessible à tous gratuitement, qui joue le rôle d’annuaire central et de passerelle. PA (Partenaire d’Accès, anciennement PDP — Plateforme de Dématérialisation Partenaire) — plateforme privée agréée par l’administration fiscale. Les entreprises choisissent librement leur PA. Le PA transmet les factures au destinataire (via le PPF ou directement si les deux parties utilisent le même PA). Annuaire — chaque entreprise déclare son identifiant de routage (basé sur le SIREN). L’annuaire permet de savoir vers quel PA/PPF envoyer chaque facture. Calendrier d’application : Date Obligation 1er septembre 2026 Réception obligatoire pour toutes les entreprises 1er septembre 2026 Émission obligatoire pour les grandes entreprises et ETI 1er septembre 2027 Émission obligatoire pour les PME et micro-entreprises Formats acceptés : Format Description Factur-X PDF enrichi d’un fichier XML embarqué (lisible par un humain, traitable par une machine) CII (Cross Industry Invoice) XML pur, conforme à la norme EN 16931 — recommandé pour les échanges automatisés UBL Autre format XML interopérable Pourquoi choisir CII plutôt que Factur-X ? Factur-X est pratique car le PDF reste lisible. CII est plus adapté si vous traitez un grand volume de factures et souhaitez une intégration 100% automatisée sans génération de PDF. Le module PDPConnectFR propose les deux — CII est recommandé par défaut. Le module PDPConnectFR Dolibarr intègre la facturation électronique via le module communautaire PDPConnectFR, disponible gratuitement sur GitHub (Dolibarr/dolibarr-community-modules). Il assure la synchronisation bidirectionnelle entre Dolibarr et le PA de votre choix. Ce que fait le module : Génère les fichiers XML/Factur-X depuis vos factures Dolibarr Transmet les factures clients vers votre PA Reçoit et importe les factures fournisseurs depuis votre PA Suit le cycle de vie des statuts (déposé → émis → reçu → approuvé) Valide les données tiers via les API gouvernementales (SIREN, TVA) Journalise tous les appels API pour le diagnostic Installation : cd htdocs/custom git clone git@github.com:Dolibarr/dolibarr-community-modules.git mkdir pdpconnectfr cp -pr dolibarr-community-modules/pdpconnectfr/* pdpconnectfr rm -fr dolibarr-community-modules Une fois les fichiers copiés, activez le module dans Configuration > Modules/Applications, section Autre : Figure 9.27 – Activation du module PDPConnectFR Configuration du point d’accès Accédez à la configuration via Configuration > Modules/Applications > PDPConnectFR (roue dentée) ou directement via le menu Facturation > Gestion des factures électroniques. Figure 9.28 – Configuration du module — onglet Paramètres du point d’accès La configuration se déroule en trois étapes : choisir votre PA, créer un compte sur sa plateforme, puis saisir les credentials dans Dolibarr. Étape 1 — Choisir votre Partenaire d’Accès (PA) Dans le champ Sélectionnez votre plateforme Point d’accès à la facturation électronique (PA), choisissez votre PA. Dolibarr v24 propose SuperPDP parmi les plateformes compatibles. Note SuperPDP (superpdp.tech) est un PA français agréé, qui propose un mode bac à sable (sandbox) gratuit pour les tests et un abonnement production. D’autres PA compatibles peuvent apparaître dans la liste selon les mises à jour du module. Étape 2 — Créer un compte sur SuperPDP Rendez-vous sur superpdp.tech et créez votre compte. Au premier accès, choisissez votre type de compte : Figure 9.29 – SuperPDP — choix du type de compte Type Usage Représentant légal (Production) Vous êtes le représentant légal de l’entreprise — vérification KYB requise, inscrit dans l’annuaire, factures à valeur légale Développeur (Bac à sable) Tests avec données fictives — aucune vérification, deux entreprises test préconfigurées Pour vos premiers tests, choisissez Développeur / Bac à sable. Une fois connecté, créez une nouvelle application pour lier votre Dolibarr à SuperPDP : Figure 9.30 – SuperPDP — type d’application (Bac à sable ou Production) Sélectionnez Bac à sable, puis renseignez le formulaire : Figure 9.31 – SuperPDP — création d’une application Entreprise : sélectionnez votre entreprise (en bac à sable, “Burger Queen” ou “Tricatel” sont préconfigurées) URLs de redirection : copiez l’URL indiquée dans votre page de configuration Dolibarr (ex. https://localhost:8082/custom/pdpconnectfr/admin/setup.php) Type d’application : choisissez Confidentielle (le secret est stocké côté serveur) Une fois l’application créée, SuperPDP affiche le Client ID et le Client Secret : Figure 9.32 – SuperPDP — credentials de l’application (client_secret affiché une seule fois) Avertissement Le client_secret n’est affiché qu’une seule fois lors de la création. Copiez-le immédiatement dans un endroit sûr. Si vous le perdez, vous devrez renouveler le secret via le bouton “Renouveler le secret” dans SuperPDP. Étape 3 — Saisir les credentials dans Dolibarr Revenez dans la configuration Dolibarr et renseignez : Figure 9.33 – Configuration Dolibarr — saisie du Client ID et Client Secret Champ Valeur Votre identifiant de facturation Votre SIREN (9 chiffres) électronique d’entreprise Client ID L’identifiant de l’application SuperPDP Client Secret Le secret de l’application SuperPDP Cliquez sur ENREGISTRER, puis sur Se connecter (Générer le jeton d’accès) : Figure 9.34 – Configuration Dolibarr — jeton d’accès généré Le jeton d’accès OAuth2 est généré et stocké. Utilisez ensuite Test de connexion (Healthcheck) pour vérifier que la liaison est opérationnelle : Figure 9.35 – Connexion réussie avec SuperPDP La mention “Connexion réussie : le point d’accès SUPERPDP est joignable.” confirme que tout est en ordre. Onglet Options L’onglet Options contrôle le comportement du module pour l’émission et la réception : Figure 9.36 – Onglet Options — synchronisation et mentions légales obligatoires Synchronisation Dolibarr → PA/PDP (émission) Option Description Validation des données tiers via API Vérifie le SIREN et la TVA du client auprès des registres officiels gouvernementales avant envoi Bloquer si pas d’identifiant de Interdit l’envoi si le tiers n’a pas de routing ID défini facturation électronique Protocole d’échange CII (recommandé) ou Factur-X Génération automatique à la validation La facture électronique est générée dès que la facture Dolibarr est validée Annuler si génération automatique Bloque la validation de la facture en cas d’erreur de génération échoue Mentions légales obligatoires Ces trois mentions doivent obligatoirement figurer sur les factures électroniques B2B françaises : Code Mention Exemple PMT Frais de recouvrement Indemnité forfaitaire de recouvrement : 40 € PMD Pénalités de retard Pénalités de retard : 3 fois le taux légal AAB Escompte pour paiement anticipé Pas d'escompte pour paiement anticipé Synchronisation PA/PDP → Dolibarr (réception) Option Description Génération automatique des produits Crée le produit dans Dolibarr s’il n’existe pas lors de l’import manquants Génération automatique des tiers Crée le fournisseur dans Dolibarr s’il n’existe pas lors de l’import manquants Compléter les informations manquantes Met à jour la fiche tiers avec les données reçues dans la facture des tiers Limite d’activation de la Limite le nombre de flux traités par cycle synchronisation des flux Nombre de flux traités par défaut par Par défaut : 100 appel Délai de recouvrement de Délai minimum entre deux synchronisations automatiques synchronisation (heures) Utilisation Une fois configuré, le module ajoute un sous-menu dédié dans Facturation : Figure 9.37 – Sous-menu Gestion des factures électroniques dans Facturation Le sous-menu contient : Gestion des factures électroniques — tableau de bord (page d’accueil) Synchronisation des factures électroniques — lancement manuel et suivi des flux entrants Journaux d’appels et de synchronisation — diagnostic des échanges API Émettre une facture client Sur chaque fiche facture client validée, un bloc Gestion des factures électroniques apparaît en bas de page. Il permet de : Générer la facture électronique — crée le fichier XML/Factur-X et l’attache à la facture Transmettre — envoie le fichier au PA Si l’option Génération automatique à la validation est activée, ces deux étapes se déclenchent automatiquement dès la validation de la facture. Cycle de vie côté émission : Code statut Libellé Non générée Généré Fichier créé, prêt à envoyer 200 Déposé auprès du PA 201 Émis (transmis au destinataire) 202 Reçu par le destinataire 204 Pris en charge 205 Approuvé 210 Refusé Avertissement Une facture transmise (statut � 200) ne peut plus être modifiée dans Dolibarr. Les champs verrouillés incluent : référence, date, échéance, montants, client, mode et condition de règlement. Pour corriger une erreur, créez un avoir référençant la facture originale, puis émettez une nouvelle facture corrigée. Recevoir des factures fournisseurs Vos fournisseurs transmettent leurs factures via leur propre PA. SuperPDP les reçoit et les met à disposition. La synchronisation peut être : Manuelle : Facturation > Synchronisation des factures électroniques > bouton SYNCHRONISER Automatique : via la tâche planifiée PDPConnectFRDocumentSync (configurable dans Configuration > Travaux planifiés) Figure 9.38 – Page de synchronisation des factures électroniques À chaque synchronisation, le module : Interroge SuperPDP pour les nouveaux flux Pour chaque flux entrant : crée ou met à jour la facture fournisseur dans Dolibarr Associe la facture au tiers correspondant (par SIREN), ou crée le tiers si l’option est activée Attache le fichier XML original à la facture Envoyer un statut de retour Sur les factures fournisseurs reçues électroniquement, vous pouvez renvoyer un statut à l’émetteur : 205 — Approuvé : vous acceptez la facture 210 — Refusé : vous contestez la facture (avec un motif obligatoire) Journaux et diagnostic La page Journaux d’appels et de synchronisation est réservée aux utilisateurs avancés. Elle liste tous les appels API effectués entre Dolibarr et le PA : Figure 9.39 – Journaux d’appels — healthcheck et génération de jeton Chaque entrée indique : date, fournisseur (SuperPDP…), type d’appel (healthcheck, get_access_token, send_invoice…), méthode HTTP, nombre de flux traités et statut (Success/Error). Comment activer le mode debug ? Dans l’onglet Options, activez Conserver le détail complet des appels API dans l’historique. Cela enregistre le contenu complet des requêtes et réponses. Attention : cette option augmente la taille des journaux et peut réduire les performances — désactivez-la après le diagnostic. Prérequis sur la fiche Société Le module vérifie plusieurs champs obligatoires sur votre fiche société (Configuration > Entreprise/Organisation). Des avertissements sont affichés si des informations manquent : Champ Requis Raison sociale Oui Adresse complète (rue, code postal, ville) Oui Pays France SIREN (idprof1) 9 chiffres SIRET (idprof2) 14 chiffres, contrôle Luhn Numéro de TVA intracommunautaire Format FR + 2 car + 9 chiffres De même, sur chaque fiche tiers client, le module ajoute un bloc Adresse de facturation électronique permettant de définir le routing ID du client (son adresse de réception dans l’annuaire). Pour les clients français avec un SIREN valide, le routing ID est déduit automatiquement. Comment tester sans client réel ? En mode bac à sable SuperPDP, vous pouvez utiliser les entreprises fictives préconfigurées (Burger Queen, Tricatel) pour simuler un échange complet émission/réception sans aucune valeur légale. Utilisez le bouton Générer, envoyer et récupérer un exemple de facture dans la configuration pour valider la chaîne de bout en bout. 10. COMPATIBILITÉ 10.1 Introduction Vous trouverez le module Comptabilité dans la famille Modules financiers (Compta/trésorerie). Le toggle d’état doit être activé (bleu) pour signifier son activation ; le pictogramme d’engrenage en fin de ligne permet d’accéder à la page de paramétrage spécifique. Figure 10.1 – Modules financiers — activation du module Comptabilité (partie double) Option de tenue de comptabilité Deux modes de comptabilité sont disponibles : Option Recettes-Dépenses (Défaut) — mode pour la comptabilité d’engagement (dite “réelle” ou “complète”). L’intégralité des informations est utilisée : factures de ventes et d’achats, notes de frais, banque, etc. C’est le mode recommandé pour la grande majorité des entreprises (PME-PMI). Option Encaissements-Décaissements — mode pour la comptabilité de trésorerie. Seuls les paiements et leur date sont utilisés pour générer la comptabilité. Réservé aux structures éligibles à ce mode (voir avec votre expert-comptable). Convient à certaines professions libérales ou micro-entrepreneurs. Figure 10.2 – Configuration du module de comptabilité (partie double) L’accès à l’administration du module se fait directement en cliquant sur le menu Comptabilité en haut de page. 10.2 Configuration L’utilisation du module de comptabilité se fait en plusieurs étapes, habituellement réalisées une seule fois ou une fois par an. L’accès à l’espace de configuration se fait depuis l’onglet Comptabilité dans le menu du haut, puis Configuration dans le menu latéral gauche. Figure 10.3 – Vue d’ensemble du menu de configuration comptable Général Menu : Comptabilité > Configuration > Général Définissez le mode de comptabilité (voir ci-dessus), la longueur des comptes comptables, les options de transfert et les paramètres avancés (lettrage, autoliquidation TVA, etc.). Journaux comptables Menu : Comptabilité > Configuration > Journaux comptables Créez ou vérifiez le contenu de la liste des journaux. Si un journal est absent, ajoutez une nouvelle ligne en renseignant un code, un libellé et la nature du journal. Figure 10.4 – Dictionnaire des journaux comptables Modèle de plan de compte Menu : Comptabilité > Configuration > Modèle de plan de compte Sélectionnez le ou les modèles de plan comptable qui vous conviennent pour initialiser votre plan de comptes. Plan comptable Menu : Comptabilité > Configuration > Plan comptable Créez ou vérifiez le contenu de votre plan de comptes. Les numéros de compte supportent les caractères numériques et alphanumériques (ex. 626000 ou 626Poste). Choisissez votre plan de comptes actif dans la liste déroulante. Figure 10.5 – Liste des comptes comptables Plan comptable comptes auxiliaires Menu : Comptabilité > Configuration > Plan comptable comptes auxiliaires Gérez les comptes auxiliaires (comptes de tiers individuels) associés aux comptes généraux clients et fournisseurs. Exercice fiscal Menu : Comptabilité > Configuration > Exercice fiscal Vérifiez ou créez vos exercices fiscaux. Chaque exercice définit une période comptable (généralement du 1er janvier au 31 décembre). Dolibarr s’y réfère pour les transferts en comptabilité et les exports. Figure 10.6 – Exercices fiscaux Comptes par défaut Menu : Comptabilité > Configuration > Comptes par défaut Définissez les comptes de comptabilité proposés par défaut lors de la ventilation. Cette configuration vous fera gagner du temps en proposant automatiquement le bon compte comptable lors de l’écriture des enregistrements dans les journaux et le grand livre. Figure 10.7 – Configuration des comptes par défaut Ventilation semi-automatique Le module laisse toujours la décision finale à l’utilisateur : il propose une affectation de compte sur les ventes (module Facture) et les achats (module Fournisseurs) en fonction des paramétrages définis, que vous pouvez accepter ou modifier. Il est également possible de re-ventiler une opération mal affectée. Comptes bancaires Menu : Comptabilité > Configuration > Comptes bancaires Définissez les comptes comptables et les codes des journaux pour chaque compte bancaire et financier. Le module est compatible avec plusieurs comptes de trésorerie (banques, caisses), chacun pouvant être affecté à un journal spécifique. Figure 10.8 – Configuration des comptes bancaires Comptes TVA Menu : Comptabilité > Configuration > Comptes TVA Définissez les comptes comptables pour chaque taux de TVA utilisé. Figure 10.9 – Configuration des comptes TVA Le lien vous amène directement vers le dictionnaire des taux de TVA où vous pouvez créer un nouveau taux si absent (pays, code, taux, compte comptable de vente et d’achat). Figure 10.10 – Dictionnaire des taux de TVA Figure 10.11 – Association des taux de TVA aux comptes comptables Comptes charges soc./fisc. Menu : Comptabilité > Configuration > Comptes charges soc./fisc. Définissez les comptes comptables des charges sociales et fiscales (taxes diverses, charges fiscales ou sociales). Comptes notes de frais Menu : Comptabilité > Configuration > Comptes notes de frais Définissez les comptes comptables par défaut des dépenses des notes de frais et déplacements. Figure 10.12 – Comptes charges soc./fisc. et notes de frais Modèles de comptabilité Menu : Comptabilité > Configuration > Modèles de comptabilité Définissez des modèles d’écritures comptables pour les opérations récurrentes (salaires, charges, etc.), afin d’accélérer la saisie des opérations diverses (OD). Comptes produits Menu : Comptabilité > Configuration > Comptes produits Initialisez les comptes comptables sur les produits et services qui ne disposent pas encore de compte dédié. Permet d’affecter en masse un compte comptable de vente ou d’achat à vos articles. Comptes de clôture Menu : Comptabilité > Configuration > Comptes de clôture Paramétrez les comptes utilisés pour les écritures de clôture d’exercice. Groupe de comptes personnalisé Menu : Comptabilité > Configuration > Groupe de comptes personnalisé Créez des regroupements de comptes comptables personnalisés pour vos tableaux de bord et états financiers. Astuce Pour toutes ces étapes de configuration, il est fortement conseillé de se mettre en relation avec son comptable afin de renseigner les bons numéros de comptes. 11. BANQUES / CAISSE 11.1 Introduction L’onglet Banques/Caisses regroupe deux modules : Banques et caisses — gestion des comptes financiers de type comptes bancaires, postaux ou caisses liquides Prélèvements — gestion des prélèvements et retraits bancaires, génération du fichier de virements Figure 11.1 – Configuration des modules Banques et Prélèvements Configuration du module Banques et Caisses Vous trouverez le module Banques et Caisses dans la famille Modules financiers (Compta/trésorerie). Paramètres Mention complémentaire sur les bordereaux de remises de chèques (sans coupure automatique de ligne) Ordre d’affichage des informations bancaires : ordre général ou ordre espagnol Définitions Compte banque — compte bancaire permettant de faire des chèques ou de payer par carte Compte caisse — argent liquide (caisse enregistreuse, porte-monnaie). Un paiement en chèque va sur un compte banque ; un paiement en liquide peut rester en caisse ou être déposé à la banque Dolibarr permet de créer autant de comptes banque ou de comptes caisse que nécessaire. Si la trésorerie n’est pas gérée par Dolibarr, le module peut être désactivé. Configuration du module Prélèvements Vous trouverez le module Prélèvements dans la famille Modules financiers (Compta/trésorerie). Sélectionnez l’utilisateur responsable des prélèvements Renseignez le Numéro National Émetteur (NNE) — par défaut l’Id prof. 1 (SIREN) Sélectionnez le compte bancaire recevant les prélèvements, puis enregistrez Obtenir un Numéro National d’Émetteur Adressez à votre banque une demande sur papier à en-tête, signée par un collaborateur habilité, mentionnant : Raison sociale, appellation commerciale, numéro SIREN Adresse du siège social, activité de l’entreprise Montant et périodicité des prélèvements envisagés Type de clients visés Des justificatifs complémentaires (Kbis, statuts…) peuvent être demandés. Après accord, la Banque de France attribue le NNE, composé de 6 chiffres, valable sans limite de temps. Note Si votre entreprise comporte plusieurs entités juridiques, une demande par entité est nécessaire. 11.2 Banques / Caisses Créer un nouveau compte financier Dans Banques/Caisses > Nouveau compte. Renseignez : Référence — numéro ou raccourci du libellé Libellé — nom de la banque pour un compte bancaire Type — compte bancaire Épargne/placement, compte bancaire courant ou carte, compte caisse/liquide Devise, état (ouvert/fermé), pays Code compta — ex. compte 550/1 pour la banque Xxxx, 550/2 pour la banque Yyyy Adresse web de la banque en ligne Solde initial à une date donnée Solde minimum autorisé/désiré Cliquez sur Créer compte. Le compte apparaît dans la colonne de gauche sous Comptes bancaires. Cliquez sur son intitulé, onglet Numéro Compte, puis Modifier pour remplir les détails RIB/IBAN. Créer une rubrique compte/caisse Pour regrouper des dépenses communes sous un même intitulé (ex. compte essence), renseignez un libellé dans le champ prévu et cliquez sur Ajouter. Créer un virement bancaire En saisissant un virement entre deux comptes, Dolibarr crée deux écritures comptables : une de débit dans le compte source et une de crédit dans le compte cible, avec le même libellé et la même date. Exemple : virement du compte Paypal vers le compte Caisse d’Épargne — une seule saisie laisse une trace dans les deux comptes. Options cachées Constante Effet BANK_DISABLE_DIRECT_INPUT Empêche d’ajouter une ligne d’écriture directement dans le compte BANK_CAN_RECONCILIATE_CASHACCOUNT Permet de rapprocher les comptes de trésorerie (v3.8) BANK_DISABLE_CHECK_DEPOSIT Désactive la fonction de dépôt de chèque BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL Permet de choisir le compte bancaire à affficher lors de la création d’une proposition commerciale 11.3 Remises de chèques Créer un nouveau dépôt Dans Remises de chèques > Nouveau dépôt. Cliquez sur le nombre de chèques à déposer, sélectionnez/filtrez les chèques à inclure dans le bordereau, puis cliquez sur Créer bordereau de dépôt. Figure 11.2 – Sélection des chèques pour le bordereau de remise Figure 11.3 – Bordereau de remise de chèques créé Validez le bordereau. Une confirmation est demandée — aucune modification n’est possible après validation. Figure 11.4 – Bordereau de remise validé Modifier un dépôt La seule modification possible porte sur la date de la remise. Pour toute autre correction, supprimez le dépôt et recommencez — les chèques de la remise supprimée réapparaissent dans la liste des chèques à traiter. Supprimer un dépôt Cliquez sur Supprimer et confirmez. La suppression est définitive. Options cachées Constante Effet BANK_DISABLE_CHECK_DEPOSIT Désactive la fonctionnalité de dépôt de chèque 11.4 Prélèvements Créer un nouveau prélèvement Prérequis : la configuration du module Prélèvements doit être correcte (NNE renseigné, compte bancaire défini). Les factures à prélever doivent avoir comme mode de règlement : Prélèvement, et les sociétés concernées doivent avoir leur IBAN/RIB correctement renseigné. Dans Prélèvements > Nouveau prélèvement : Figure 11.5 – Création d’un nouveau prélèvement Figure 11.6 – Formulaire de prélèvement Processus : Depuis la facture, cliquez sur Faire une demande de prélèvement (ou utilisez l’onglet Prélèvements de la facture) Une fois la demande faite, allez dans Banque > Virements pour générer l’ordre de prélèvement Figure 11.7 – Demande de prélèvement depuis la facture Revenez dans Banques/Caisses > Prélèvements > Nouveau prélèvement — votre facture est en attente Cliquez sur Prélever tout — le lien vers la fiche du prélèvement est alors listé en bas de page Figure 11.8 – Fiche du prélèvement avec lien vers la facture Figure 11.9 – Liste des prélèvements en bas de page Lorsque l’ordre de prélèvement est clos, le paiement sur la facture est automatiquement enregistré et la facture est fermée si le reste à payer est nul. Consultation et suppression La référence du prélèvement est un lien cliquable qui ouvre l’onglet Prélèvement de la facture client (statut en attente). L’onglet Lignes affiche la liste des prélèvements. Figure 11.10 – Onglet Prélèvement de la facture client Avertissement Il n’est pas possible de supprimer une ligne individuelle de prélèvement. Pour corriger, revenez sur l’onglet Fiche et cliquez sur Supprimer — ce qui supprime la totalité du bon. Les factures redeviennent alors disponibles sur l’accueil du module. 12. OPPORTUNITÉS ET PROJETS 12.1 Introduction Le module Projets permet de définir des listes de tâches. Il regroupe par ailleurs ensemble des éléments de Dolibarr tels que des propositions commerciales, des commandes ou des factures. Définition d’une tâche Une tâche possède les caractéristiques suivantes : Un libellé Une description Une date de début Une date de fin ou une durée (l’une ou l’autre, pas les deux) Un pourcentage d’état d’avancement Une priorité Un statut (en cours, confirmé ou annulé) Configuration du module Projets Vous trouverez le module Projets dans la famille Projets/Travail collaboratif. Le pictogramme d’état doit être vert pour signifier son activation ; le pictogramme suivant, en fin de ligne, permet d’accéder à la page de paramétrage spécifique. Numérotation des références projets Choisissez ici le modèle de numérotation des références de vos projets. Figure 12.1 – Modèle Simple — numérotation des projets Modèle Simple — Renvoie le numéro sous la forme PJyymm-nnnn où yy est l’année, mm le mois et nnnn un compteur séquentiel sans rupture et sans remise à zéro. Figure 12.2 – Modèle Universal — numérotation des projets Modèle Universal — Renvoie un numéro personnalisable selon un masque à définir. Numérotation des références tâches Choisissez ici le modèle de numérotation des références de vos tâches. Figure 12.3 – Modèle de numérotation des tâches Modèle Simple — Renvoie le numéro sous la forme TKyymm-nnnn où yy est l’année, mm le mois et nnnn un compteur séquentiel sans rupture et sans remise à zéro. Modèle Universal — Renvoie un numéro personnalisable selon un masque à définir. Vous pouvez saisir tout masque de numérotation. Les balises suivantes peuvent être utilisées : Balise Description {000000} Compteur incrémenté à chaque tâche (autant de zéros que la longueur désirée, complété par des zéros à gauche) {000000+000} Idem avec un offset correspondant au nombre à droite du + appliqué dès le premier projet {000000@x} Idem avec remise à zéro le x-ème mois (x entre 1 et 12, 0 pour le mois de début d’exercice fiscal, 99 pour remise à zéro chaque mois). Si x vaut 2 ou plus, la séquence {yy}{mm} ou {yyyy}{mm} est obligatoire {dd} Jour (01 à 31) {mm} Mois (01 à 12) {yy}, {yyyy}, {y} Année sur 2, 4 ou 1 chiffre(s) {cccc} Code client sur n lettres {cccc000} Code client sur n lettres suivi d’un compteur propre au client, complété par des zéros, remis à zéro en même temps que le compteur global {tttt} Code type entreprise sur n caractères Tout autre caractère dans le masque sera laissé inchangé. Les espaces ne sont pas permis ; les / sont permis. Exemple sur la 99ème tâche du tiers LaCompanie faite le 31/03/2021 : ABC{yy}{mm}-{000000} → ABC2103-000099 {0000+100}-XXX-{dd}-YYY → 0199-XXX-31-YYY Modèles de document de rapport projets Choisissez votre modèle de documents pour afficher vos rapports de projets en cliquant sur le bouton d’activation qui doit passer au vert. Tous les modèles activés apparaîtront dans la liste déroulante lors de la création d’un projet. Vous pouvez choisir un modèle par défaut. Figure 12.4 – Modèles de rapport projets Attributs supplémentaires (projets) Définissez ici la liste des attributs supplémentaires, non disponibles en standard, que vous voulez voir gérer sur les projets. Figure 12.5 – Attributs supplémentaires des projets Type d’attribut Description Exemple Chaîne de caractères (1 ligne) Texte court sur une seule ligne Société ABC Texte long (n lignes) Zone de texte multi-lignes Notes internes sur le client… Texte HTML Zone de texte avec éditeur Important : WYSIWYG Client VIP Numérique entier Valeur numérique sans décimales 42 Décimal Nombre avec virgule/flottant 123.45 Date Sélection d’une date 2025-09-13 Date et heure Sélection de date + heure 2025-09-13 14 :30 Durée Temps exprimé en heures/minutes 2h30 Booléen (case à cocher unique) Oui/Non (case cochée ou non) � Actif Prix Montant en monnaie courante 100,00 Prix avec devise Montant avec choix de devise 100,00 € ou 120,00 $ Téléphone Champ formaté pour numéro +33 6 12 34 56 78 Email Adresse e-mail contact@exemple.com URL Lien internet https ://exemple.com IP Adresse IPv4 ou IPv6 192.168.1.1 Mot de passe Champ masqué (••••) ******** Radio bouton (1 choix uniquement) Sélection unique parmi plusieurs Homme / Femme / valeurs Autre Liste de sélection Menu déroulant (1 choix) France / Espagne / Italie Liste issue d’une table Valeur tirée d’une autre table Liste des produits ou Dolibarr tiers Liste de sélection (n choix) Liste avec cases multiples Option A + Option B Liste issue d’une table (n choix) Multi-sélection depuis une table Plusieurs utilisateurs assignés Lien vers un objet Lien vers un objet Dolibarr Facture F2109 existant Séparateur Ligne de séparation visuelle (pas ����� un champ) Étoiles Système de notation (0 à 5 ����� étoiles) Exemple : pour ajouter un attribut de type Liste issue d’une table, renseignez un ordre, un libellé (ex. Matériel utilisé), un code d’attribut (ex. adresse_projet), choisissez le type Liste issue d’une table, sélectionnez la table projet_extrafields, le champ adresse_projet et le champ label. Après enregistrement, la liste déroulante des adresses de livraison apparaîtra dans chaque fiche projet. Attributs supplémentaires (tâches) Définissez ici la liste des attributs supplémentaires que vous voulez voir gérer sur les tâches. Les 24 types disponibles sont identiques à ceux listés ci-dessus pour les projets. Figure 12.6 – Attributs supplémentaires des tâches 12.2 Projets Créer un nouveau projet Sous le chapeau Mes projets ou Projets, cliquez sur le lien Nouveau projet. Figure 12.7 – Formulaire de création d’un nouveau projet Visibilité Un projet peut être privé ou public : Public — le projet et ses tâches peuvent être lus/édités par toute personne disposant des permissions Projet. Privé — le projet et ses tâches ne peuvent être lus/édités que par les utilisateurs disposant des permissions Projet et définis comme contact du projet, ainsi que par le créateur du projet. Avertissement Si tous les contacts d’un projet privé sont retirés, il faut conserver au moins un utilisateur apte à éditer le projet — ne serait-ce que pour ajouter des contacts. Ce rôle revient au créateur du projet. Champs à renseigner Référence — s’incrémente automatiquement en fonction du modèle de numérotation configuré Libellé — intitulé du projet État — Brouillon, Ouvert ou Clôturé Usage — cochez les options applicables : Suivre une opportunité Suivre des tâches ou du temps passé Facturer le temps passé — à cocher si vous saisissez du temps sur les tâches et prévoyez de générer des factures à partir des temps. Ne cochez pas si vous comptez créer une facture non basée sur la saisie des temps. Pour générer une facture, allez sur l’onglet Temps consommé du projet et sélectionnez les lignes à inclure. Astuce Pensez à renseigner les taux horaires et journaliers du collaborateur sur sa fiche utilisateur. Tiers — si des objets (facture, commande…) appartenant à un tiers différent de celui choisi doivent être liés au projet, laissez ce champ vide pour créer un projet multi-tiers. Visibilité — uniquement contacts du projet, ou tout le monde Date de début, éventuellement date de fin et description Après la création Figure 12.8 – Contacts du projet Rendez-vous sur l’onglet Contacts projet pour choisir un contact utilisateur et un ou des contacts tiers associés au projet. Figure 12.9 – Objets associés au projet Rendez-vous ensuite sur l’onglet Objets associés pour lier des propositions commerciales, des commandes ou des factures au projet. Supprimer un projet Rendez-vous sur la fiche du projet à supprimer et cliquez sur Supprimer. En fonction de l’état d’avancement, un message de confirmation s’affichera : Êtes-vous sûr de vouloir supprimer ce projet ? Cette opération détruira également les tâches du projet (xx tâches actuellement) et le suivi des consommés. 12.3 Tâches / Activités Créer une nouvelle tâche Sous le chapeau Mes tâches/activités ou Tâches/activités, cliquez sur Nouvelle tâche. La création peut aussi se faire via le bouton Créer Tâche depuis l’onglet Tâches d’un projet. Figure 12.10 – Formulaire de création d’une tâche Note On ne peut créer une tâche que sur un projet partagé (sans responsable attitré) ou sur un projet dont on est le responsable. Une tâche peut être créée : sous le projet directement ; sous une autre tâche du projet (sous-tâche). Renseignez les informations suivantes : Projet — choisissez le projet parent Responsable — affectez la tâche à un utilisateur Date de début et éventuellement date de fin Charge de travail prévue Cliquez sur Ajouter. La tâche est maintenant fonctionnelle. En cliquant sur la référence ou le libellé de la tâche, un nouveau bloc avec onglets apparaît sous le bloc Projet. L’onglet Temps consommé vous permettra de gérer le temps consommé par l’utilisateur affecté à la tâche. Nouveau temps consommé Sous le chapeau Mes tâches/activités ou Tâches/activités, cliquez sur Nouveau consommé. La création peut aussi se faire via le bouton Ajouter depuis l’onglet Temps consommé d’une tâche. Figure 12.11 – Saisie du temps consommé Renseignez : Ressource — contact projet affecté à la tâche Date — date de saisie du temps Note — description de l’activité Durée — temps passé Cliquez sur Ajouter. Le temps consommé s’additionne avec un éventuel consommé existant. Options cachées des tâches Constante Effet PROJECT_CAN_ALWAYS_LINK_TO_ALL_SUPPLIERS Active la liaison d’un projet à tout fournisseur même avec la fonctionnalité de lien tiers (réglé à 1 par défaut à partir de la v3.7) PROJECT_TIME_ON_ALL_TASKS_MY_PROJECTS Permet d’ajouter du temps à des tâches même si l’utilisateur n’y est pas assigné (la tâche doit appartenir à un projet dont il est contact) PROJECT_SHOW_REF_INTO_LISTS Ajoute une colonne avec la référence du projet dans les listes PROJECT_HIDE_UNSELECTABLES Masque dans la liste de sélection tous les projets non sélectionnables (fermés ou brouillons) PROJECT_HIDE_TASKS Masque les tâches — pour un utilisateur utilisant un projet uniquement comme clé analytique PROJECT_LIST_SHOW_STARTDATE Affiche la date de début des projets dans les listes PROJECT_LINK_ON_OVERWIEW_DISABLED Masque le formulaire « lien vers » sur la page de vue d’ensemble (v4.0) PROJECT_CREATE_ON_OVERVIEW_DISABLED Masque le bouton « créer… » sur la page d’aperçu (v4.0) PROJECT_ALLOW_TO_LINK_FROM_OTHER_COMPANY Permet de lier un objet à un projet d’un autre tiers PROJECT_ALLOW_COMMENT_ON_TASK Ajoute une fonction de commentaire sur les tâches du projet PROJECT_DISABLE_UNLINK_FROM_OVERVIEW Désactive le bouton de suppression d’un lien dans l’aperçu du projet (>= v8.0.1) Facturation à partir du temps consommé Si l’option Facturer le temps passé est cochée sur le projet, vous pouvez générer une facture directement depuis les temps saisis. Depuis l’onglet Temps consommé du projet, sélectionnez les lignes à inclure dans la facture. Vous pouvez choisir une facture brouillon existante à utiliser, ou créer une nouvelle facture. Cliquez ensuite sur le bouton Facturer. 13. GESTIONS DES RESSOURCES HUMAINS 13.1 Introduction L’onglet GRH regroupe les modules suivants : Utilisateurs & Groupes — gestion des utilisateurs / employés et groupes Demandes de Congés — déclaration et suivi des congés des employés Notes de frais — gestion et déclaration des notes de frais (transport, repas…) Adhérents — gestion des adhérents d’une association Configuration du module Congés Vous trouverez le module Congés dans la famille Ressources humaines. Le pictogramme d’état doit être vert pour signifier son activation ; le pictogramme suivant, en fin de ligne, permet d’accéder à la page de paramétrage spécifique. Figure 13.1 – Paramètres du module Congés Réglages principaux des congés Délai pour faire une demande de congés avant ceux-ci (valeur en jours) Prévenir le validateur si la demande ne respecte pas le délai prévu (case à cocher) Prévenir le validateur si l’utilisateur demande des congés dépassant son solde (case à cocher) Nombre de congés payés ajoutés chaque mois — incrément de 2,08334 jours par mois pour les congés payés classiques Nombre de congés payés à déduire par jour de congé pris (valeur en jours) Dernière mise à jour automatique des congés — la dernière date s’affiche automatiquement Réglages des congés liés à des événements Créez des congés exceptionnels en renseignant le nom de l’événement (ex. mariage) et le nombre de jours correspondant. Figure 13.2 – Types de congés et événements exceptionnels Configuration du module Notes de frais Vous trouverez le module Notes de frais et déplacements dans la famille Ressources humaines. Il n’y a pas de paramétrage spécifique. 13.2 Congés Créer une nouvelle demande Dans Congés > Nouvelle demande. En en-tête de fiche vous trouverez le rappel du délai minimum configuré (ex. Les demandes de congés doivent être faites au moins 31 jours avant la date de ceux-ci). Renseignez : Utilisateur bénéficiaire Date Début — premier jour de congés Date Fin — dernier jour de congés Sera approuvé par — sélectionnez l’utilisateur chargé de valider la demande Description — motif ou précisions éventuelles Cliquez sur Envoyer la demande de congés. Figure 13.3 – Formulaire de nouvelle demande de congés Une fois envoyée, la demande passe à l’état En attente d’approbation. L’administrateur chargé de gérer les demandes pourra alors cliquer sur Approuver ou Refuser. Figure 13.4 – Liste des demandes de congés Suivi depuis la fiche utilisateur Rendez-vous dans Utilisateurs & Groupes sur la fiche d’un utilisateur : vous y trouverez un onglet HR et banque reprenant les demandes et le solde de congés de l’utilisateur. Figure 13.5 – Vue manager — demandes de congés Figure 13.6 – Solde de congés de l’utilisateur Modifier une demande Le bouton Modifier permet d’éditer la demande de congés. Vous pouvez rectifier : Date Début — premier jour de congés Date Fin — dernier jour de congés Description Approbateur Supprimer une demande Avertissement Une demande une fois validée ne peut pas être supprimée — elle peut seulement être annulée. Options cachées Constante Effet MAIN_NON_WORKING_DAYS_INCLUDE_SATURDAY 0 intègre le samedi dans les jours de congé décomptés ; 1 ne le prend pas en compte MAIN_NON_WORKING_DAYS_INCLUDE_SUNDAY 0 intègre le dimanche dans les jours de congé décomptés ; 1 ne le prend pas en compte Note L’option HOLIDAY_MORE_PUBLIC_HOLIDAYS a été supprimée. Utilisez le dictionnaire des jours fériés si vous avez besoin de définir des jours de vacances spécifiques. 13.3 Notes de frais Créer une note de frais Dans Note de frais > Nouveau. Renseignez : Type de frais — sélectionnez dans la liste déroulante (transport, repas, hébergement…) Utilisateur concerné Date de la dépense Kilométrage — s’il s’agit d’un déplacement Montant — s’il s’agit d’une autre dépense Figure 13.7 – Formulaire de nouvelle note de frais Modifier une note de frais Le bouton Modifier permet d’éditer la note de frais. Tous les champs renseignés lors de la création sont accessibles pour une éventuelle correction. Supprimer une note de frais Cliquez sur le bouton Supprimer. Note Si le bouton Supprimer n’est pas accessible, vérifiez que vous avez bien les droits nécessaires dans les permissions utilisateurs. Options cachées Constante Effet EXPENSEREPORT_ALLOW_OVERLAPPING_PERIODS Autorise la saisie de plusieurs notes de frais sur des périodes identiques ou se chevauchant EXPENSEREPORT_USE_OLD_NUMBERING_RULE Conserve la règle de numérotation codée en dur utilisée avant la v7.0 MAIN_USE_EXPENSE_IK Définit un kilométrage indexé par type de véhicule (v7.0+) MAIN_USE_EXPENSE_RULE Définit des règles par utilisateur/groupe/tous pour limiter les montants des notes de frais (v7.0+) OVERRIDE_VAT_FOR_EXPENSE_REPORT Affiche la TVA dans les notes de frais même si le paramètre TVA global est désactivé (v10.0) 14. OUTILS 14.1 Introduction L’onglet Outils regroupe des outils multi-modules : EMailings — envoi d’emails en masse à tout ou partie de vos clients, fournisseurs, prospects, adhérents, utilisateurs… Export de données — assistant d’export vers CSV, TSV ou Excel Import de données — assistant d’import depuis CSV, TSV ou Excel GED — Gestion Électronique de Documents Configuration du module EMailings Le module se trouve dans la famille Interface avec des systèmes externes. La page de configuration permet de paramétrer : Adresse Email de l’émetteur (From) Adresse Email de retour (Errors-to) — importante pour éviter d’être blacklisté Tracker d’accusé de lecture et lien de désinscription — activez le bouton on/off et renseignez la clef de sécurité (remplie automatiquement) Les constantes de substitution __CHECK_READ__ et __UNSUBSCRIBE__ sont alors disponibles dans vos modèles de mails. Figure 14.1 – Configuration du module EMailings Configuration de l’envoi des mails (Accueil > Configuration > Emails) Cette page permet de remplacer les paramètres PHP liés à l’envoi de mails. Par défaut, la fonction PHP mail est utilisée. Astuce : La méthode d’envoi SMTP socket library est recommandée : elle évite les problèmes de compatibilité avec certains serveurs de réception (ex. Orange). Pour les systèmes Linux/BSD avec sendmail, ajoutez mail.force_extra_parameters = -ba dans php.ini si des mails ne sont pas reçus, ou définissez la constante MAIN_FIX_FOR_BUGGED_MTA à 1. Figure 14.2 – Test de disponibilité du serveur SMTP Configuration du module Export de données Le module se trouve dans la famille Outils multi-modules. Figure 14.3 – Configuration du module Export Configuration du module Import de données Le module se trouve dans la famille Outils multi-modules. Figure 14.4 – Configuration du module Import — étape 1 Figure 14.5 – Configuration du module Import — étape 2 14.2 EMailings Créer un nouvel emailing Les fonctions de mailing sont accessibles depuis le menu Outils. Dans le menu de gauche, sous EMailings, choisissez Nouvel emailing. Figure 14.6 – Formulaire de création d’un emailing Renseignez : Description — titre qui apparaîtra dans la liste des emailings (ex. Renouvellement cotisation) De et Errors-to — pré-remplis si vous avez configuré les adresses dans l’administration Sujet du mail Couleur de fond — personnalisable via l’outil Color Picker Contenu de l’email — rédigez avec l’éditeur CKEditor en utilisant les variables de substitution (__LASTNAME__ pour le Nom, __FIRSTNAME__ pour le Prénom, etc.) Cliquez sur Créer emailing. Figure 14.7 – Choix des destinataires Allez ensuite sur l’onglet Destinataires et cliquez sur les boutons Ajouter des listes prédéfinies. Exemple : module Adhérents, filtre validé (non à jour), Date fin adhésion entre deux dates, puis Ajouter. Depuis l’onglet Fiche emailing : Cliquez sur Tester emailing pour un test vers une adresse personnelle Ou cliquez sur Valider emailing puis sur Envoi emailing pour l’envoi en masse Figure 14.8 – Envoi de l’emailing Avertissement : Seul un mail au statut validé peut être envoyé en masse. Pour des raisons de sécurité, l’envoi en masse depuis la ligne de commande est recommandé : php ./scripts/emailings/mailing-send.php Le statut global du mailing et le résultat de l’envoi pour chaque destinataire sont mis à jour et consultables. Modifier un emailing Il est possible de cloner un emailing existant depuis la liste des emailings déjà créés et envoyés. Cliquez sur la référence (lien cliquable) puis sur Cloner. Seuls les emailings non validés sont encore modifiables. Le clone d’un emailing peut lui aussi être modifié. Supprimer un emailing Cliquez sur Supprimer emailing et confirmez. Un emailing peut être supprimé qu’il soit validé ou non. Options cachées Constante Effet MAILING_LIMIT_SENDBYWEB Nombre de mails à envoyer directement sans passer par la ligne de commande MAIN_MAIL_DEBUG Écrit le contenu et l’en-tête du dernier courriel dans dolibarr_mail.log MAIN_SMS_DEBUG Écrit le contenu des SMS envoyés dans dolibarr_sms.log MAIN_MAIL_ALLOW_SENDMAIL_F Ajoute l’option -f à la commande sendmail pour forcer l’expéditeur MAIN_MAIL_SENDMAIL_FORCE_BA Ajoute le paramètre -ba à sendmail pour que le destinataire soit fourni dans le contenu du mail MAIN_MAIL_NO_FULL_EMAIL Nettoie les adresses email au format au lieu de Name MAIN_FIX_FOR_BUGGED_MTA Corrige les problèmes d’agents MTA qui ajoutent des CR supplémentaires (utile pour Orange, Hotmail…) MAIN_MAIL_DO_NOT_USE_SIGN N’ajoute pas la signature utilisateur à la fin des emails MAIL_FORCE_DELIVERY_RECEIPT_INVOICE / _ORDER / _PROPAL Force la réception de livraison à « Oui » sur le formulaire d’envoi MAIN_EMAIL_USECCC Affiche le champ BCC dans les formulaires d’email MAIN_MAIL_AUTOCOPY_PROPOSAL_TO / _ORDER_TO / Email à utiliser en BCC lors de l’envoi _INVOICE_TO d’une proposition, commande ou facture Constante Effet MAIN_EMAIL_ADD_TRACK_ID Ajoute un identifiant de suivi dans l’en-tête SMTP pour tracer l’origine des emails MAIN_INFO_SOCIETE_MAIL_ALIASES Permet d’utiliser plusieurs identités dans l’origine des emails MAIL_MAX_NB_OF_RECIPIENTS_IN_SAME_EMAIL Limite le nombre de destinataires par message (défaut : 10) MAIN_MAIL_FORCE_CONTENT_TYPE_TO_HTML Force tous les emails en format HTML MAIN_MAIL_ADD_INLINE_IMAGES_IF_IN_MEDIAS Remplace les images stockées dans /medias par des images inline dans les emails (attention au risque SPAM) MAIN_COPY_FILE_IN_EVENT_AUTO Ajoute le document en pièce jointe sur les événements générés automatiquement (v6.0+) MAIN_EXTERNAL_SMTP_CLIENT_IP_ADDRESS Adresse IP publique du serveur, affichée dans l’aide de configuration MAIN_MAIL_ENABLED_USER_DEST_SELECT Affiche également les utilisateurs internes dans la liste des destinataires (v8.0+) MAIN_EMAIL_SUPPORT_ACK Restaure la case à cocher accusé de lecture (fonctionnalité abandonnée) Constantes de substitution Figure 14.9 – Liste des constantes de substitution disponibles Constante Valeur substituée __USER_SIGNATURE__ Signature de l’utilisateur expéditeur __USER_ID__ Identifiant de l’utilisateur __USER_LOGIN__ Login de l’utilisateur __USER_LASTNAME__ Nom de l’utilisateur __USER_FIRSTNAME__ Prénom de l’utilisateur __USER_FULLNAME__ Nom complet de l’utilisateur __MYCOMPANY_NAME__ Nom de votre société __MYCOMPANY_EMAIL__ Email de votre société __MYCOMPANY_FULLADDRESS__ Adresse complète de votre société __DAY__ / __DAY_TEXT__ Jour (numérique / texte) __MONTH__ / __MONTH_TEXT__ Mois (numérique / texte) __YEAR__ Année __PREVIOUS_DAY__ / Jour/mois/année précédent __PREVIOUS_MONTH__ / __PREVIOUS_YEAR__ __NEXT_DAY__ / __NEXT_MONTH__ / Jour/mois/année suivant __NEXT_YEAR__ Constante Valeur substituée __DOL_MAIN_URL_ROOT__ URL racine de Dolibarr __(AnyTranslationKey)__ Traduction de la clé __[AnyConstantKey]__ Valeur de la constante __ID__ Identifiant de l’enregistrement __EMAIL__ Email du destinataire __LASTNAME__ / __FIRSTNAME__ Nom / Prénom du destinataire __CHECK_READ__ Lien de suivi d’ouverture de l’email __UNSUBSCRIBE__ Lien de désinscription __ONLINE_SIGN_URL__ Lien de signature en ligne d’une proposition commerciale 14.3 Assistant export Créer un nouvel export Allez dans Outils > Assistant export > Nouvel export. Étape 1 — Choisir le lot de données Sélectionnez le module et le type de données à exporter (ex. module Tiers → sociétés/institutions/particuliers et attributs). Cliquez sur l’icône en bout de ligne pour passer à l’étape suivante. Figure 14.10 – Étape 1 — Choix du lot de données Étape 2 — Choisir les champs Choisissez les champs à exporter ou sélectionnez un profil d’export prédéfini. Cliquez sur Tout pour déplacer tous les champs dans la colonne Champs à exporter. Saisissez des valeurs de filtre si nécessaire. Figure 14.11 – Étape 2 — Sélection des champs Étape 3 — Trier et enregistrer Triez l’ordre des champs à exporter. Si vous avez fait des réglages particuliers, enregistrez le profil d’export pour le réutiliser ultérieurement. Figure 14.12 – Étape 3 — Tri et enregistrement du profil Étape 4 — Générer le fichier Sélectionnez le format d’export dans la liste déroulante et cliquez sur Générer : CSV ou TSV (fichier texte) Excel 2007 ou Excel 95 (format Excel natif) Figure 14.13 – Étape 4 — Génération du fichier export Options cachées Constante Effet EXPORT_CSV_SEPARATOR_TO_USE Délimiteur CSV (défaut : ,). Ex. EXPORT_CSV_SEPARATOR_TO_USE=; EXPORT_CSV_FORCE_CHARSET Encodage du fichier CSV (défaut : UTF-8). Ex. EXPORT_CSV_FORCE_CHARSET=ISO-8859-1 EXPORTTOOL_CATEGORIES Permet d’exporter des catégories (plusieurs lignes) dans une colonne avec le profil d’exportation produit USE_STRICT_CSV_RULES Utilise le format CSV strict : ne remplace pas CR+LF par \n mais les cite avec le caractère d’échappement CSV " 14.4 Assistant import Créer un nouvel import Allez dans Outils > Assistant import > Nouvel import. Étape 1 — Choisir le lot de données Sélectionnez le module à importer (ex. Tiers) et cliquez sur l’icône Nouvel import. Figure 14.14 – Étape 1 — Choix du lot de données à importer Étape 2 — Choisir le format Cliquez sur le pictogramme en fin de ligne pour sélectionner le format de fichier à importer. Astuce : Téléchargez un exemple vierge en cliquant sur Télécharger un exemple vierge de fichier pour créer votre fichier d’import dans le bon format. Figure 14.15 – Étape 2 — Choix du format de fichier Étape 3 — Envoyer le fichier Choisissez le fichier sur votre ordinateur et cliquez sur Ajouter pour l’envoyer sur Dolibarr. Cliquez ensuite sur le pictogramme en fin de ligne. Figure 14.16 – Étape 3 — Envoi du fichier Étape 4 — Mapper les champs La colonne de gauche affiche les champs du fichier importé ; la colonne de droite affiche les champs Dolibarr. Déplacez les champs par drag and drop (en saisissant la flèche) pour aligner chaque champ du fichier avec le champ Dolibarr correspondant. Les champs à ne pas importer doivent être déplacés sous la ligne Champs du fichier source non importé. Astuce : Si un champ du fichier ne correspond à aucun champ Dolibarr, utilisez la ligne Aucun champ en face. En passant la souris sur le point d’interrogation en fin de ligne, vous obtenez les informations sur les valeurs attendues, contraintes et exemples. Figure 14.17 – Étape 4 — Correspondance des champs Étape 5 — Simulation puis import Cochez ou décochez Ne pas importer la première ligne du fichier source (si elle contient les en-têtes), puis cliquez sur Lancer la simulation de l’import. La simulation tente d’insérer en base en annulant toutes les opérations à la fin. Un rapport des erreurs est affiché. Avertissement : Les erreurs lors de la simulation proviennent souvent de la première ligne si celle-ci correspond aux intitulés des champs. Décochez l’import de la première ligne dans ce cas. Si aucune erreur n’est détectée, cliquez sur Lancer import final (définitif). Les données importées s’ajoutent aux données existantes. Figure 14.18 – Étape 5 — Simulation de l’import Figure 14.19 – Résultat de la simulation Figure 14.20 – Résultat de l’import final Astuce : Pays : pensez à ajouter une colonne pays avec la valeur 1 (France) car l’import ne met pas de pays par défaut. Traçabilité : toutes les données importées reçoivent le champ import_key avec la date de l’import. En cas de problème, retrouvez facilement les lignes dans votre éditeur SQL. Options cachées Figure 14.21 – Options cachées de l’import Constante Effet IMPORT_CSV_SEPARATOR_TO_USE Délimiteur CSV (défaut : ,). Ex. IMPORT_CSV_SEPARATOR_TO_USE=; IMPORT_CSV_FORCE_CHARSET Encodage du fichier CSV (défaut : UTF-8). Ex. IMPORT_CSV_FORCE_CHARSET=ISO-8859-1 14.5 Gestion Électronique de Documents (GED) L’espace GED permet de stocker, partager et rechercher rapidement tout type de documents dans Dolibarr. Activez le module depuis Accueil > Configuration > Modules. Trois types de répertoires coexistent : Répertoires manuels Les répertoires manuels permettent d’enregistrer des documents avec une organisation libre de l’arborescence. Figure 14.22 – Répertoires manuels — vue 1 Figure 14.23 – Répertoires manuels — vue 2 Répertoires automatiques Les répertoires automatiques sont remplis automatiquement lors de l’ajout de documents depuis la fiche d’un élément (tiers, facture, commande…). Activez d’abord la fonctionnalité dans la configuration du module. Figure 14.24 – Répertoires automatiques Répertoires publics Les répertoires publics sont des fichiers situés dans le sous-répertoire /medias du répertoire des documents. Ils sont lisibles par tous sans connexion et sans partage explicite. Ils servent notamment à stocker des images pour le module emailing ou les pages web. Figure 14.25 – Répertoires publics Astuce : Icônes Octicons : vous pouvez utiliser les icônes Octicons au format SVG dans vos modèles de mails ou vos pages web. Dans Configuration > Emails > Modèles des courriels, éditez un modèle, cliquez sur l’icône image dans l’éditeur, puis sur Parcourir le serveur → dossier octicons → choisissez une icône. Figure 14.26 – Octicons disponibles dans la GED — vue 1 Figure 14.27 – Octicons disponibles dans la GED — vue 2 15. AGENDA 15.1 Introduction Le module Agenda permet de bénéficier d’un calendrier dans Dolibarr et de gérer des notions comme des événements ou des rendez-vous. Définition — Événements et rendez-vous Un événement (event dans la norme iCal) caractérise une action instantanée ou de longue durée, passée ou future. Il possède les caractéristiques suivantes : Champ Norme iCal Description Libellé summary Intitulé de l’événement Description description Détail de l’événement Date de début dtstart — Date de fin ou durée dtend / duration L’une ou l’autre, pas les deux Lieu location Nom de salle, adresse… Priorité priority — Transparence transp Indique si les acteurs sont rendus indisponibles Statut — Tentative, confirmé ou annulé Exemple d’utilisation : les événements correspondent aux informations des calendriers Outlook, Evolution ou Thunderbird/Lightning (rendez-vous, travaux planifiés sur une plage de dates). Dans Dolibarr, ce module ajoute la notion de pourcentage d’avancement à la norme iCal. Configuration du module Agenda Le module se trouve dans la famille Projets/Travail collaboratif. Figure 15.1 – Configuration du module Agenda Onglet Divers — Paramètres Figure 15.2 – Paramètres généraux de l’agenda Utiliser les types des événements (administrable dans Configuration > Dictionnaires > Liste des types d’événements de l’agenda) — on/off Type d’événement par défaut dans le filtre de recherche — choisissez dans la liste déroulante Statut d’événement par défaut dans le filtre — ex. À réaliser, En cours… Onglet affiché par défaut à l’ouverture du menu Agenda — Vue semaine, Vue mois… Onglet Alimentation automatique de l’agenda Définissez les événements pour lesquels Dolibarr créera automatiquement une action dans l’agenda (ex. créa- tion d’une facture, validation d’une commande). Par défaut, aucune case n’est cochée : seules les actions manuelles sont incluses. Les événements automatiques sont créés au statut réalisé (pourcentage d’avancement = 100 %) avec une durée de 0 seconde (date de fin = date de début). Onglet Export calendrier Figure 15.3 – Configuration de l’export calendrier Cet onglet permet d’exporter une vue de votre agenda Dolibarr vers un calendrier externe (Thunderbird, Google Calendar…). Correction du fuseau horaire — ex. +2 (à renseigner uniquement si un décalage est constaté dans l’export) Paramètres de filtrage disponibles dans l’URL d’export : Paramètre Effet logina=webmaster Limite l’export aux actions dont webmaster est propriétaire logina=!webmaster Limite l’export aux actions non assignées à webmaster logint=webmaster Limite aux actions assignées à webmaster (propriétaire et autres) project=__PROJECT_ID__ Restreint aux événements associés au projet spécifié notactiontype=systemauto Exclut les événements automatiques Onglet Import calendriers externes Figure 15.4 – Configuration de l’import de calendriers externes Ajoutez des sources de calendriers externes pour les visualiser au sein de l’agenda Dolibarr (ex. import des jours fériés de l’année). Onglet Attributs supplémentaires Définissez les attributs supplémentaires non disponibles en standard sur les événements agenda. Les 24 types disponibles sont identiques à ceux des projets et tâches (voir chapitre Opportunités et Projets). Figure 15.5 – Attributs supplémentaires de l’agenda Exemple : pour ajouter un attribut de type Liste de sélection, renseignez un ordre, un libellé (ex. Au choix), un code d’attribut (ex. choix), choisissez le type Liste de sélection et saisissez les valeurs sous la forme clé -> valeur (ex. 1,valeur1...), puis enregistrez. 15.2 Événements Dans Dolibarr, les événements sont aussi appelés actions. Il en existe deux catégories : Actions automatiques — créées automatiquement par Dolibarr lors d’événements métier configurés Actions manuelles — créées explicitement par l’utilisateur Créer un nouvel événement Dans le menu latéral gauche, sous Événement, cliquez sur Nouvel événement. Renseignez : Type — ex. Rendez-vous, Appel téléphonique… Événement sur la journée — si cochée, le choix des horaires est grisé Date de début et date de fin État / Pourcentage d’avancement — si applicable Affectation — utilisateur(s) concerné(s) Cliquez sur Ajouter. L’événement apparaît dans la liste des événements. Modifier un événement Depuis Événement > Liste dans le menu latéral gauche, choisissez l’événement dans la liste, cliquez sur son lien hypertexte pour ouvrir la fiche, puis cliquez sur Modifier. Supprimer un événement Depuis Événement > Liste, ouvrez la fiche de l’événement et cliquez sur Supprimer. Confirmez en répondant positivement à la question Êtes-vous sûr de vouloir effacer cet événement ? Options cachées Constante Effet AGENDA_MAX_EVENTS_DAY_VIEW Nombre maximum d’entrées visibles par jour dans l’agenda (défaut : 3 ; 0 = aucune limite) Constante Effet AGENDA_USE_EVENT_TYPE Ajoute un champ obligatoire « Type » lors de la création d’un événement (obsolète) AGENDA_AUTOSET_END_DATE_WITH_DELTA_HOURS Définit automatiquement la date de fin à la date de début + delta lors de la création MAIN_ADD_EVENT_ON_ELEMENT_CARD Permet de créer un événement directement depuis la fiche d’un document (proposition, commande, facture) 16. INTELLIGENCE ARTIFICIELLE (IA) 16.1 Introduction Le module Ai (Intelligence Artificielle) est disponible dans la famille Outils multi-modules de la page de gestion des modules. Il apporte des fonctionnalités d’IA directement dans l’interface Dolibarr : génération de texte dans les formulaires, assistant conversationnel, analyse de documents, et exposition d’une API compatible Model Context Protocol (MCP) pour connecter des assistants externes (Claude Desktop, etc.). Note — Le module IA nécessite une clé d’API valide auprès d’un fournisseur d’IA tiers. Aucun traitement IA n’est réalisé localement : les données sont envoyées au service choisi. 16.2 Activation du module Rendez-vous dans Accueil > Configuration > Modules/Application, puis filtrez par le mot-clé « ia » ou « ai ». Le module Ai se trouve dans la section Outils multi-modules. Activez le toggle pour l’activer, puis cliquez sur l’engrenage pour accéder à sa configuration. Figure 16.1 – Configuration du module d’IA — 4 onglets de paramétrage 16.3 Configuration La page de configuration du module d’IA est accessible via Accueil > Configuration > Modules/Application > Ai > (icône engrenage) ou directement depuis le lien Configuration dans la barre d’administration. Elle comporte quatre onglets. Onglet 1 — Paramètres Accès : Configuration du module d’IA > Paramètres Figure 16.2 – Onglet Paramètres — choix du fournisseur et clé API Cet onglet permet de définir le fournisseur d’IA à utiliser et les informations de connexion associées. Service IA à utiliser — liste déroulante avec les fournisseurs disponibles : Fournisseur Description ChatGPT (OpenAI) Service d’OpenAI (GPT-4, GPT-4o, etc.) Groq (LPU Inference) Inférence ultra-rapide via des puces LPU Mistral AI Modèles Mistral (mistral-small, mistral-large, pixtral…) DeepSeek Modèles DeepSeek Perplexity (Sonar) Moteur de recherche augmenté par IA Zhipu AI (GLM) Fournisseur chinois GLM Custom URL personnalisée compatible OpenAI API Anthropic (Claude) Modèles Claude d’Anthropic Google Gemini Modèles Gemini de Google Clé pour l’API IA — saisissez la clé API obtenue auprès du fournisseur choisi. Elle est masquée après enregistrement. URL du point de terminaison — l’URL de l’API du fournisseur est préremplie automatiquement selon le service sélectionné (ex. https://api.mistral.ai/v1/ pour Mistral AI). Modifiez-la uniquement pour un usage Custom. Après avoir renseigné ces champs, cliquez sur ENREGISTRER. Zone de test — un champ de texte en bas de page vous permet de tester immédiatement la connexion à l’API en envoyant un prompt libre. Onglet 2 — Prompt et modèles IA personnalisés Accès : Configuration du module d’IA > Prompt et modèles IA personnalisés Figure 16.3 – Onglet Prompts personnalisés — pré/post-saisie et modèles par fonctionnalité Cet onglet est divisé en deux sections. Prompts personnalisés Vous pouvez définir des prompts personnalisés pour chaque fonctionnalité où l’IA intervient. Par défaut, une entrée Génération de texte (Contenu de l’email) est présente. Vous pouvez en ajouter d’autres via le bouton +. Chaque prompt comprend : Champ Rôle Pré-saisie Texte injecté automatiquement avant le contenu généré (ex. formule d’appel : Bonjour [__THIRDPARTY_NAME__],) Post-saisie Texte injecté automatiquement après le contenu généré (ex. signature : Bien cordialement, [USER_SIGNATURE]) Liste noire de mots Mots interdits que l’IA ne doit pas utiliser dans ses réponses Test Bouton permettant de tester le prompt immédiatement Astuce — Les variables entre crochets doubles ([__THIRDPARTY_NAME__], [USER_SIGNATURE]) sont des substitutions automatiques Dolibarr. Utilisez-les pour personnaliser le contenu généré. Modèles d’IA par fonctionnalité Cette section permet de spécifier quel modèle utiliser pour chaque type de traitement, indépendamment du modèle par défaut. Laissez vide pour utiliser le modèle par défaut du fournisseur. Fonctionnalité Exemple de modèle Mistral Texte (défaut) mistral-small-latest Image pixtral-12b-latest Vidéo — Audio — Transcription — Traduction — Analyse de documents pixtral-12b-latest Onglet 3 — Chat Assistant Accès : Configuration du module d’IA > Chat Assistant Figure 16.4 – Onglet Chat Assistant — activation de l’assistant conversationnel Cet onglet permet d’activer l’assistant conversationnel privé intégré à Dolibarr. Enable the chat AI assistant — activez ce toggle pour faire apparaître un assistant de chat IA accessible à vos utilisateurs depuis l’interface Dolibarr. Cet assistant est privé (accessible uniquement aux utilisateurs authentifiés de votre instance). Note — L’assistant chat utilise le même fournisseur et la même clé API que ceux configurés dans l’onglet Paramètres. Onglet 4 — Serveur MCP Accès : Configuration du module d’IA > Serveur MCP Figure 16.5 – Onglet Serveur MCP — activation et configuration de l’accès externe Figure 16.6 – Configuration complète du serveur MCP — clé API et exemple Claude Desktop Le Model Context Protocol (MCP) est un protocole ouvert qui permet à des assistants IA externes (comme Claude Desktop d’Anthropic) d’accéder à vos données Dolibarr en lecture pour répondre à des questions métier ou effectuer des actions. Enable MCP Server — activez ce toggle pour exposer le serveur MCP de votre instance Dolibarr. Accès externe Champ Description Service User Utilisateur Dolibarr utilisé par le serveur MCP pour accéder aux données. Créez de préférence un utilisateur dédié (ex. « AI Bot ») avec des droits Lecture seule pour limiter les risques. API Key Clé d’API générée par Dolibarr. Cliquez sur GENERATE NEW KEY pour en créer une. Elle est nécessaire pour que les outils externes puissent se connecter. Endpoint URL URL du point d’entrée MCP, à communiquer à votre outil externe. Exemple : http://localhost:8082/ai/server/mcp_server.php Configuration Claude Desktop Dolibarr génère automatiquement un exemple de configuration pour Claude Desktop (claude_desktop_config.json) : { "mcpServers": { "dolibarr": { "command": "node", "args": ["/path/to/mcp-bridge.js"], "env": { "DOLIBARR_URL": "http://localhost:8082/ai/server/mcp_server.php", "DOLIBARR_API_KEY": "YOUR_KEY_HERE" } } } } Copiez ce bloc dans votre fichier claude_desktop_config.json en remplaçant YOUR_KEY_HERE par la clé API générée et /path/to/mcp-bridge.js par le chemin réel du bridge MCP. Avertissement — Sécurité — en activant le serveur MCP avec un accès externe, l’assistant IA peut lire les données de votre Dolibarr. Utilisez impérativement un utilisateur dédié avec des droits minimaux. 16.4 Utilisation de l’IA dans Dolibarr Une fois le module activé et configuré, l’IA s’intègre directement dans les formulaires Dolibarr sous forme d’un pictogramme « baguette magique » placé à côté des zones de texte enrichi. Génération de texte dans les emails Lors de l’envoi d’un email depuis une facture, une proposition ou tout autre document, un picto IA apparaît dans la zone de corps de message. En cliquant dessus : L’IA génère automatiquement un contenu d’email contextualisé (nom du tiers, montant, etc.). La pré-saisie et la post-saisie configurées (onglet 2) encadrent le contenu généré. Vous pouvez accepter, modifier ou régénérer le texte avant envoi. Autres fonctionnalités IA Selon les fournisseurs et modèles activés, l’IA peut intervenir dans : La génération de descriptions de produits et services La rédaction de notes sur les fiches tiers L’analyse de documents (factures PDF, etc.) via les modèles multimodaux La transcription audio et la traduction Astuce — L’ensemble des fonctionnalités disponibles dépend du fournisseur choisi et de son offre tarifaire. Mistral AI propose par exemple pixtral-12b-latest pour l’analyse d’images et de documents, tandis qu’OpenAI propose ses modèles GPT-4 Vision.