---
title: "Dolibarr 23.0"
weight: 240
description: "Nouveautés de Dolibarr 23.0 : axes analytiques, statut litige sur les factures, page de don publique, WebPortal enrichi."
---

# 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_PREFIX` pour forcer des clés de trigger uniques par objet métier ; les triggers `SUPPLIER_PRODUCT_BUYPRICE_XXX` sont renommés en `PRODUCT_BUYPRICE_XXX`
- Méthode `run_trigger()` supprimée (utiliser `runTrigger()`)
- Fonction `img_pdf()` supprimée (remplacer par `img_picto('', 'pdf')`)
- Propriétés `$sumpayed`, `$sumdeposit`, `$sumcreditnote` supprimées (utiliser `$totalpaid`, `$totaldeposits`, `$totalcreditnotes`)
- Paramètres `$maxlen` et `$notooltip` de `Contract::getNomUrl()` inversés pour suivre le standard
- Tableau `$MAP_ID_TO_CODE` supprimé (utiliser `array_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/octicons` supprimé
- Bibliothèque `timepicker.js` supprimée
- Propriété `->picto` des 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 `$obj` et `$object` interdites dans les chaînes évaluées des extrafields (utiliser `$objectoffield`)
- Constante `MAIN_ALLOW_UNSECURED_SPECIAL_CHARS_IN_DOL_EVAL` remplacée par la variable `$dolibarr_main_allow_unsecured_special_chars_in_dol_eval` dans `conf.php`
- `$conf` déprécié dans les formules calculées des extrafields (utiliser `getCurrency()` et `getDolGlobalString()`)
- `$user->rights->module->perms` déprécié (utiliser `$user->hasRight()`)
- Endpoint API `/proposals/{id}/contact/{contactid}/{type}/{source}` simplifié (suppression du paramètre `{source}`)
- Endpoint API `/interventions/{id}/reopen` remplacé par `/interventions/{id}/settodraft`
- Module Website avec PHP : nécessite `$dolibarr_website_allow_custom_php=2` dans `conf.php`
- Colonne `egroupware_id` supprimée de `llx_user`
- Nombreuses nouvelles API REST : paiements, congés, adhérents (statistiques), TVA, lots produit, templates email, emailing de masse, groupes utilisateurs, mouvements de stock
