Dolibarr commandes : Astuces et conseils dʼexperts

Dolibarr ERP & CRM propose un large éventail de modules pour gérer toutes les facettes de votre activité. Le module Commandes (ou commande client), « orders » en anglais, est l’épine dorsale de tout flux commercial : c’est le point de départ des devis, des factures, des livraisons, et de la comptabilité. Or, pour que la commande devienne un véritable levier de productivité, il faut bien la paramétrer, l’optimiser et l’automatiser.

Dans cet article, l’objectif est de passer en revue les astuces et conseils d’experts qui vous permettront de :

  • Instaurer un workflow de commandes fluide
  • Réduire les erreurs de saisie
  • Automatiser les tâches répétitives
  • Synchroniser vos données avec d’autres systèmes (ERP, e‑commerce, BI, etc.)
  • Garantir la conformité comptable et fiscale

À lire avant d’implémenter

  1. Sauvegardez votre instance Dolibarr régulièrement (scripts cron, export DB).
  2. Travaillez sur un serveur de test ou un extrait de production.
  3. Impliquez les parties prenantes : commerciaux, finance, logistique, TI.


1. Avant‑tout – La préparation du module Commande

Étape Action Astuce d’Expert
1. Activer le module Outils > Modules & Services > Modules Vérifiez que “Commande client” est activé et pensez à activer “Facture client” et “Livraison client” pour un workflow complet.
2. Paramètres globaux Outils > Configuration > Vente Choisissez votre type de tax, règles d’arrondi, conditions de paiement (30 jours, 20 %, etc.).
3. Référentiel produit Produit > Ajouter un produit Si vous avez beaucoup de produits, utilisez abonnements ou « snippets de produits (boîtes)** pour accélérer la saisie.
4. Type de commande Commande > Types Différenciez les commandes « Standard », « Urgent », « Partiel », etc. Cela vous aide dans le reporting et les priorités de livraison.
5. Labels dynamiques Outils > Bannière > Modèles Ajoutez un modèle de note de remise qui surlignera automatiquement les remises exceptionnelles.


2. Schéma de workflow recommandé

Devis ➔ Confirmation de vente ➔ Commande ➔ Facture ➔ Paiement ➔ Livraison (optionnelle)

  • DevisSi vous avez un module de devis, votre commande doit être dérivée directement du devis.
  • ConfirmationEnvoi d’email avec lien vers la commande (via le module Email), avec un bouton "Valider la commande".
  • FactureTicket de commande (PO) → Facture; la fonction “Facture de commande” crée l’encaissement automatiquement.
  • LivraisonSi votre entreprise gère un stock, associez la commande à une livraison pour recharger le stock.

Bon : Utilisez la séquence d’activation (voir § 3) pour que Typhoon (le moteur de déclencheurs) exécute vos actions programmées.


3. Automatiser grâce aux "Triggers" (déclencheurs)

Dolibarr intègre un moteur de triggers qui peut réagir à 10+ événements de la commande. Pour les experts, l’astuce est de les combiner et personnaliser :

  1. Lorsque la commande est validée

    • Remplir les champs personnalisés (code de lot, donneur d’ordre, etc.)
    • Envoyer un e‑mail de bienvenue :
      require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.php';
      $email = new CMailFile(
      'Votre commande #'.$ID,
      $user->email,
      $user->name,
      array('Subject: ...'),
      array()
      );
      $email->sendfile();
  2. Mise à jour du stock

    • Si vous avez un module de gestion de stock (Fournisseur, Inventaire), déclenchez un appel AJAX à votre API interne.
  3. Création d’une facture automatique

    • Le trigger tdoTriggerCommande_fournisseur peut être redéfini pour créer instantanément la facture basée sur le montant de la commande.
  4. Appel d’un service tier

    • Ajoutez une request REST vers un ERP externe à chaque commande entrante.

Remarque

  • Les triggers se trouvent dans htdocs/core/triggers
  • N’oubliez pas de copier dans custom/triggers/ pour conserver les modifications après mise à jour de Dolibarr.


4. Gestion avancée des références & de la numérotation

4.1 Numérotation intelligente

  • Application des modules

    • Commencez par Outils > Paramètres > Sequence d’édition
    • Sélectionnez *ex.) COM-${YEAR}-${OL} (où ${OL} = séquence numérotation).
  • Fragmentation

    • Utilisez des fragments par concurrent (ex. projets, entreprises, type).
    • Exemple PROJ-${PROJID}-${YEAR}-${OL}
  • Réservation de la numérotation

    • Le trigger Core_triggers/doli_autoNumbering assure que vous ne perdez pas de numéros.

4.2 Référence fournisseur

  • Automatiser la prise de la référence fournisseur

    • Lors de la création d’une commande fournisseur, le champ Référence fournisseur peut être pré-rempli grâce à la propriété CLEAR_REFERENCE.
  • Snippet produit

    • À chaque création d’un snippet, ajoutez le champ reference_fournisseur.


5. Optimiser les liaisons produit / commande

Problème Solution Exemple
Commandes bloquées par un produit hors stock Unité de stock -> État de mise à jour automatisée if ($product->stock < $qty) {$this->error = 'Stock insuffisant';}
Doublon de produit Vérifier le code barre au niveau de la saisie if (preg_match('/^\d{13}$/', $code_barre)) {
Surcoût de frais de port Créer une règle de remise automatique $order->addDiscount('Port', 10, 'test')

Pour les grossistes, ne pas oublier d’associer les prix par lot (à plusieurs volumes). Dolibarr propose la classe product_price : votre trigger peut remplir la colonne tva_tx et le champ amount en fonction du volume.


6. Rapports & KPI: Ce qu’il faut surveiller

KPI Pourquoi? Outil/Démarche
Taux de Conversion (devis→commande) Identify lost opportunities SELECT count(*) FROM llx_commande WHERE fk_soc = ...
Délai de traitement (commande→facture) Optimiser le processus de facturation Cron + core/triggers/doliTimers.php
Valeur moyenne de commande Ajuster la stratégie de prix Module “Dashboards” → widget “Ventes”
Priorité / Urgence Gérer les expéditions Champ priority ou type

Astuce : utilisez la table llx_custom_fields (ou du même docs/`cs_categories.php) pour créer un chart personnalisable dans le module “Widgets”.


7. Intégrations recommandées

Intégration Accélérateur Astuce
ERP externe (SAP, 1C) API REST, Webhooks api/dolibarr/v3/orders
CMS (WordPress, Shopify) Hooks de commande woocommerce_checkout_update_order_meta
CRM externe Contact sync Module demande de contacts
Comptabilité (Drafter, QuickBooks) File upload CSV Automatiser via WeeWeeScript
Marketing Autoresponder Sync via mailjet manager

Exemple de cURL

curl -X POST "https://votre-dolibarr/api/index.php/api.php/orders" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <token>" \
-d '{"socid":1,"lines":[{"qty":2,"fk_product":12}]}'


8. Sécurité et conformité

8.1 Proxy de facturation

  • Éviter les doubles factures

    • Définir un champ unique_identifier par ligne.
    • Valider le duplicate via un trigger uniqueKey sur llx_commande_fichiers.

8.2 Gestion des droits

  • Profil “Commercial” – accès en lecture seule aux commandes, pas aux factures.
  • Profil “Finance” – création de factures mais pas de lignes produit.
  • Utilisez la ACL (hook/tal > accessControl.php) pour définir ces rôles.

Astuce : agréez le Données sensibles → KV (key‑value) pour stocker les informations PII.

8.3 Auditabilité

  • Triggers de journalisation

    • core/triggers/doliTimer.php écrit dans llx_com_log.
    • Ajoutez vos propres logs à la table llx_commande_log pour un audit complet.


9. Bonnes pratiques de production

  1. Sauvegarde et migration

    • mysqldump nightly + zstandard compression.
    • Utilisez dolibarr_commit pour créer un point de restauration.
  2. Cache

    • Activez SSD L2 cache Zend, xCache ou Redis pour accélérer les requêtes SQL fréquentes.
  3. CRON

    • Planifiez les productions de factures (dolibarr:commande automatic) à 02h00.
  4. Monitoring

    • Rsyslog, Grafana + Prometheus.
    • Alertes pour TTL (temps de traitement de la commande).


10. Checklist de mise en place

Étape Action Responsable État
1 Activer & configurer modules TI
2 Créer & valider référentiel produit Ops
3 Définir séquence de numérotation DBA
4 Implémenter triggers d’automatisation Développeur
5 Configurer intégrations API Ét. API
6 Tester workflow (dev → test → prod) QA
7 Former les utilisateurs RH


11. Scénarios d’usage avancés

Situation Solution Code / Trigger
Commandes à gros volume (10 000+ lignes) Bloquer par lot, génération de génération batch Utiliser Mass orders via CSV import (/public/htdocs/import/orders.php)
Multi‑monnaie Séparer la règle taux de change par devise Trigger updateExchangeRate() à la création d’une commande
Commandes « dropship » Créez un produit « dropship » et reliez-le automatiquement à votre plateforme e‑commerce Hook dolibarr:postOrder


12. FAQ rapide

Question Réponse
Qui gère le stock lors d’une commande ? Le module “Gestion du stock” met à jour le niveau de stock via add_line – vous pouvez paramétrer +"Réapprovisionnement automatique" à exécuter après chaque commande.
Comment gérer les remises exceptionnelles ? Créez un champ personnalisé special_discount dans la table llx_custom_fields et un trigger qui applique le taux via $order->addDiscount.
Quelle est la meilleure façon d’exporter toutes les commandes de l’année ? Utilisez la fonction d’export d’Excel du module Analyse avancée ou un script SQL : SELECT * FROM llx_commande WHERE datemodif>=? AND datemodif<=?.


13. Conclusion

La commande dans Dolibarr n’est pas qu’une simple saisie de données : c’est le centre névralgique où convergent ventes, finance, logistique et service client. En appliquant les astuces ci‑dessus, vous :

  • Optimisez votre cycle de vente, réduisez les erreurs de saisie et économisez du temps.
  • Automatisez vos processus (factures, emails, sync ERP) pour que votre équipe se concentre sur la valeur ajoutée.
  • Garantissez la conformité fiscales, comptables et de sécurité.
  • Mesurez ces améliorations grâce à des KPI clairs et à des rapports personnalisés.

Prêt à propulser vos opérations ? Commencez par la logique de trigger la plus simple, puis étendez‐le à votre activité. Dolibarr est modular, mais la puissance des données vient de la façon dont vous les organisez. Bonnes commandes !


Publications similaires