Dolibarr 23.0
Prérequis
- Version minimale de PHP : 7.2
Modules
- Module DataPolicy : passage au statut stable (fonctionnalités d'anonymisation)
- Module Formulaire de contact public : nouveau module au statut expérimental
Comptabilité
- Comptabilité par type de paiement
- Comptabilisation des remises
- Axes analytiques (structure SQL)
- Rapprochement sur le compte général
- Champ « centralisé » à l'import/export
- Protection sur les paiements divers pour les comptes auxiliaires non centralisés
- Vérification des comptes centralisés dans les transactions
- Masquage automatique du sous-compte auxiliaire si le compte général n'est pas centralisé
- Mode d'export comptable ISTEA
- Retenue à la source comme remboursement de TVA
Tiers
- Date de naissance de l'entreprise (structure SQL et interface)
- Option pour ne pas synchroniser tiers ↔ adhérent
- Logo de l'entreprise en vue Kanban
- Colonnes réf. client et réf. fournisseur du tiers dans la liste des projets
- Fusion d'adhérents en double
- Import des cotisations
- Module de numérotation libre pour les adhérents
- Colonnes réf. externe et note privée pour les adhérents
Produits et services
- Onglet contact sur les fiches produit/service
- Affichage conditionnel des prix fournisseur
- Permissions dédiées pour créer/modifier/supprimer les prix fournisseur
- Clonage des catégories parentes lors de la création de variantes
- Boîtes d'information sur la page d'accueil des produits et interventions
Propositions commerciales
- Onglets messagerie et agenda sur les propositions
- Adresse de livraison sur les propositions
- Génération de proposition de renouvellement depuis les contrats
Commandes et factures
- Erreur à la validation si un produit n'est plus en vente ou en achat
- Tags/catégories sur les propositions et propositions fournisseur (avec statistiques)
- Tags/catégories sur les factures et commandes fournisseur (filtre, ajout en masse, statistiques)
- Statut « litige ouvert » sur les factures (affichage, liste, modification)
- Le statut litige colore la facture en rouge
- Nombre d'avoirs non encore consommés affiché sur la facture
- Solde client affiché sur le PDF de facture à la date de la facture
- Validation automatique de la facture lors du paiement en ligne
- Découpage de remise en plus de deux parties
- Saisie du prix TTC en multicurrency par ligne
- Recherche sur toutes les factures récurrentes
- Inversion de la logique de la date par défaut à la création (option pour ne PAS pré-remplir)
- Option PDF_PURCHASE_INVOICE_HIDE_VAT
- Concaténation native de fichiers au PDF de facture
Expéditions
- Création d'expédition autonome sans origine
- Création de réception autonome
- Signature électronique sur les expéditions
- Envoi de mail pour les réceptions et livraisons
Projets
- Vue d'ensemble des projets : masquage des commandes payées
- Catégories sur les tâches
- Colonne projet parent dans la liste des projets
- Option PROJECT_CAN_ALWAYS_LINK_TO_ALL_CUSTOMERS
Événements et agenda
- Onglets messagerie et agenda sur les commandes et expéditions
- Filtre sur la progression des événements
- Limite sur le nombre de résultats en vue agenda (avec avertissement)
- Date complète avec secondes dans l'infobulle
- Rappel par SMS pour les événements
Ressources humaines
- Colonnes type et description dans les notes de frais de la vue projet
- Extrafields sur les lignes de notes de frais
- Tri par employé dans le solde des congés
- Adresse expéditeur personnalisable pour les emails de congés
- Configuration du menu feuille de temps par défaut
- Mise à jour du temps passé avec le dernier taux horaire de la tâche
Emailing
- Mise en page améliorée pour les emailings
- Colonne titre et filtres supplémentaires dans les emailings
Dons et tickets
- Page publique de don
- Notes publique et privée sur les tickets
- Clonage de ticket
- Captcha configurable sur les pages publiques (don, ticket, adhérent)
WebPortal
- Navigation par dossier dans les documents partagés
- Documents partagés et documents du tiers
- Refonte de la gestion des fiches et champs
Extrafields
- Option « vider au clonage »
- Lien d'un extrafield à un module
- Administration des extrafields sur les paiements
Interface et divers
- Page de configuration des en-têtes de sécurité HTTP
- Information du prestataire informatique principal dans la configuration
- Affichage du code et du symbole de la devise dans les sélecteurs
- Amélioration de la popup d'aperçu d'image (taille, rotation, réduction)
- Glisser-déposer dans les fiches de nomenclature
- Widget entonnoir d'opportunités
- Lien de téléchargement du zip d'un module sur sa page de configuration
- Avertissement en bannière quand un email est invalide
- Outils d'administration de base de données améliorés
- Éditeur ACE mis à jour en 1.43.12
- Pas personnalisé dans la sélection de durée
- Incoterms mis à jour au standard 2025
- Vérification de fichiers limitée aux fichiers non modifiables
SEPA et banque
- Sauvegarde du BAN et du RUM SEPA en base de données
- Numéro de virement
Sécurité
- Méthodes d'obfuscation désactivées par défaut dans les extrafields évaluables
- Événement de sécurité lors de l'installation d'un module
Changements importants pour les développeurs
- Nouvelle propriété
TRIGGER_PREFIXpour forcer des clés de trigger uniques par objet métier ; les triggersSUPPLIER_PRODUCT_BUYPRICE_XXXsont renommés enPRODUCT_BUYPRICE_XXX - Méthode
run_trigger()supprimée (utiliserrunTrigger()) - Fonction
img_pdf()supprimée (remplacer parimg_picto('', 'pdf')) - Propriétés
$sumpayed,$sumdeposit,$sumcreditnotesupprimées (utiliser$totalpaid,$totaldeposits,$totalcreditnotes) - Paramètres
$maxlenet$notooltipdeContract::getNomUrl()inversés pour suivre le standard - Tableau
$MAP_ID_TO_CODEsupprimé (utiliserarray_flip($categ->MAP_ID)) - Signature de
->cancel()modifiée sur les commandes et expéditions pour inclure$user - Les modèles de document doivent être dans
mymodule/core/modules/xxx/doc; l'ajout dans le répertoire custom avec le même chemin que le core est interdit - Répertoire
theme/common/octiconssupprimé - Bibliothèque
timepicker.jssupprimée - Propriété
->pictodes descripteurs de modules doit contenir l'extension si ce n'est pas un tag Font Awesome - Noms de variables de l'API GET des mouvements de stock harmonisés avec les paramètres POST
- Concaténation dans les propriétés calculées des extrafields désactivée par défaut (configurable via
conf.php) - Variables
$objet$objectinterdites dans les chaînes évaluées des extrafields (utiliser$objectoffield) - Constante
MAIN_ALLOW_UNSECURED_SPECIAL_CHARS_IN_DOL_EVALremplacée par la variable$dolibarr_main_allow_unsecured_special_chars_in_dol_evaldansconf.php $confdéprécié dans les formules calculées des extrafields (utilisergetCurrency()etgetDolGlobalString())$user->rights->module->permsdéprécié (utiliser$user->hasRight())- Endpoint API
/proposals/{id}/contact/{contactid}/{type}/{source}simplifié (suppression du paramètre{source}) - Endpoint API
/interventions/{id}/reopenremplacé par/interventions/{id}/settodraft - Module Website avec PHP : nécessite
$dolibarr_website_allow_custom_php=2dansconf.php - Colonne
egroupware_idsupprimée dellx_user - Nombreuses nouvelles API REST : paiements, congés, adhérents (statistiques), TVA, lots produit, templates email, emailing de masse, groupes utilisateurs, mouvements de stock