Gestion de locations et réservations

Booking pour Dolibarr

Présentation

Booking est un module externe pour Dolibarr dédié à la gestion des réservations, des plannings d’occupation, des ressources, des règles de disponibilité et de tarification, ainsi qu’à la synchronisation avec des canaux externes.

Le module permet de transformer Dolibarr en outil central de pilotage pour une activité de réservation : hébergements, chambres, gîtes, locations saisonnières, espaces, équipements, services réservables ou toute activité nécessitant un suivi de dates, de capacité et de disponibilité.

Contrairement à une logique purement site web, Booking est conçu comme une brique métier interne : il relie les réservations aux clients, aux produits, aux commandes, au planning, aux statistiques et aux flux de synchronisation.

Positionnement actuel du module

Le portail public natif historique n’est plus le mode recommandé.

Le fonctionnement cible actuel repose sur :

  • WordPress pour le site public
  • WooCommerce pour la commande en ligne
  • YITH ou équivalent pour les champs et logiques de réservation côté site
  • Dolibarr + Booking pour la gestion interne, les commandes, les réservations, le planning, les règles et le suivi

Le module est livré avec un plugin WordPress dédié nommé WooBook, qui assure la transmission des commandes WooCommerce vers Dolibarr.

Disponibilité DoliStore

Le module est distribué via DoliStore.

Lien éditeur K.S.I : Voir les modules K.S.I sur DoliStore

Objectifs du module

Booking répond à plusieurs besoins :

  • centraliser les réservations dans Dolibarr
  • relier une réservation à un produit, un tiers et un document commercial
  • visualiser l’occupation dans un planning
  • gérer les ressources et les prestations associées
  • appliquer des règles de disponibilité et de prix
  • synchroniser les indisponibilités avec des flux iCal
  • intégrer les commandes issues d’un site WordPress / WooCommerce
  • produire des indicateurs de suivi d’activité

Compatibilité

  • Dolibarr : v19 à v23
  • PHP : PHP 8.x
  • Type d’installation : module externe dans htdocs/custom
  • Aucune modification du core Dolibarr

Fonctionnalités principales

1. Gestion des produits réservables

Le module permet de transformer des produits du catalogue Dolibarr en produits réservables.

Pour chaque produit réservable, il est possible de définir notamment :

  • son activation dans Booking
  • sa capacité
  • sa granularité de réservation
  • ses durées minimales et maximales
  • la gestion du nombre de personnes
  • les ressources associées
  • les prestations associées
  • les temps tampons avant et après réservation
  • la nécessité d’une confirmation manuelle
  • un acompte éventuel
  • une couleur d’affichage dans le planning

Cette couche permet d’adapter le comportement du module à des cas variés : location à la nuit, réservation par créneau, unité, séjour, capacité multiple, etc.

2. Prise de réservation en back-office

Le module propose un écran Prendre une réservation permettant à un utilisateur interne de créer une réservation depuis Dolibarr.

La réservation peut être liée à :

  • un tiers existant
  • un produit réservable
  • une période d’arrivée / départ
  • un nombre de personnes
  • une catégorie de location
  • des prestations complémentaires
  • une note publique ou interne

Selon le paramétrage, cette action peut générer :

  • un devis
  • ou une commande

Les informations de réservation sont propagées sur les documents commerciaux via les mécanismes du module.

3. Liste des réservations

Le module dispose d’un listing dédié permettant de consulter les réservations enregistrées.

Cette vue permet notamment :

  • de filtrer les réservations
  • de consulter les dates
  • d’identifier le client
  • de voir le document d’origine
  • de suivre le statut
  • de distinguer les réservations internes et les blocs externes
  • d’ouvrir les archives
  • d’effectuer certaines actions métier selon les droits

4. Planning / calendrier

Le planning est l’un des éléments centraux du module.

Il permet :

  • de visualiser l’occupation par période
  • de filtrer par ressource
  • de naviguer par jour, mois ou année
  • de voir les réservations internes
  • de voir les blocages issus des synchronisations externes
  • d’ouvrir les fiches associées
  • d’effectuer certaines actions comme l’annulation selon les droits

Le planning est conçu comme une vue opérationnelle de l’occupation réelle.

5. Gestion des ressources

Le module gère des ressources pouvant être affectées aux réservations :

  • chambres
  • logements
  • salles
  • équipements
  • équipes
  • moyens matériels

Chaque ressource peut être liée à un produit, catégorisée, dotée d’une capacité et affichée avec une couleur spécifique dans le planning.

6. Gestion des prestations

Le module gère des prestations optionnelles liées aux réservations.

Exemples :

  • ménage
  • petit déjeuner
  • service complémentaire
  • option payante
  • prestation annexe

Ces prestations peuvent être proposées dans le cadre d’une réservation et intégrées au traitement global.

7. Types de personnes

Le module inclut la gestion des types de personnes afin d’adapter certaines règles à la composition du séjour.

Cela permet d’affiner la logique métier autour des capacités, des calculs liés au nombre de personnes ou de certaines règles tarifaires.

8. Règles de disponibilité et de tarification

Booking intègre un système de règles qui permet d’adapter le comportement du module selon le contexte.

Les règles peuvent porter sur :

  • la disponibilité
  • la fermeture / ouverture des réservations
  • la tarification
  • les restrictions
  • certaines catégories
  • certaines ressources
  • certaines prestations
  • certains types de personnes
  • certaines périodes
  • certains jours de semaine
  • certaines plages horaires

Le moteur permet notamment :

  • d’ouvrir ou fermer des périodes
  • d’appliquer des priorités
  • de fixer un prix
  • d’augmenter ou diminuer un prix
  • de gérer un prix fixe par produit
  • de gérer des comportements spécifiques liés à la taxe de séjour ou au petit déjeuner

9. Statistiques

Le module fournit une page de statistiques permettant de suivre l’activité Booking.

Les indicateurs disponibles couvrent notamment :

  • le taux d’occupation
  • les nuitées vendues
  • la durée moyenne de séjour
  • l’occupation par produit
  • les nuitées par mois
  • le chiffre d’affaires lié
  • les documents commerciaux associés

Les statistiques s’appuient sur les données Booking et sur les documents commerciaux Dolibarr liés.

Synchronisations iCal

Objectif

Le module permet de synchroniser les disponibilités et indisponibilités avec des sources externes au format iCal / ICS.

Cela permet par exemple de :

  • récupérer des périodes occupées depuis des canaux externes
  • publier des périodes occupées vers d’autres outils
  • éviter les doubles réservations
  • intégrer des blocages externes dans le planning Dolibarr

Fonctions disponibles

Le module propose :

  • configuration des canaux de synchronisation
  • import iCal
  • export ICS
  • génération de secrets d’export
  • webhook iCal
  • import manuel
  • lancement manuel des synchronisations
  • tâche cron Dolibarr dédiée
  • journal de synchronisation
  • diagnostic de flux
  • contrôle iCal
  • réparation / recréation de la tâche cron
  • gestion des blocs externes

Canaux gérés

Le module gère plusieurs canaux selon le paramétrage, notamment :

  • Airbnb
  • Booking.com
  • Website
  • Google selon le contexte de synchronisation
  • imports manuels
  • blocages manuels

Contrôle iCal

Une page dédiée permet de superviser le comportement iCal et de travailler sur les blocages.

Cette partie est utile pour :

  • comprendre l’origine d’une indisponibilité
  • contrôler les imports
  • gérer certains blocages / déblocages
  • vérifier les historiques liés à la synchronisation

Intégration WordPress / WooCommerce / YITH

Principe général

Le scénario recommandé repose sur :

  1. réservation / commande côté WordPress
  2. traitement commercial côté WooCommerce
  3. données de séjour issues du site ou d’un plugin de réservation type YITH
  4. transmission vers Dolibarr via le plugin WooBook
  5. création ou mise à jour des objets dans Dolibarr

Plugin WooBook fourni

Le module inclut le plugin :

pluginwoobook/woocommerce-dolibarr-sync.php

Ce plugin WordPress permet :

  • de configurer l’endpoint Dolibarr
  • de configurer le secret partagé
  • de choisir les statuts WooCommerce à synchroniser
  • de définir des mappings produits Woo -> Dolibarr
  • de définir des mappings clients Woo -> tiers Dolibarr
  • de transmettre les métadonnées utiles à la réservation

Informations transmises depuis WooCommerce

Le flux peut transmettre notamment :

  • identifiant de commande Woo
  • statut de commande
  • client
  • email
  • identifiant client Woo
  • lignes de commande
  • produit Woo
  • SKU
  • dates de séjour
  • nombre de personnes
  • notes
  • montants
  • TVA
  • métadonnées de ligne et de commande

Compatibilité avec YITH

Le plugin WooBook est prévu pour reconnaître des métadonnées de réservation usuelles, y compris dans des contextes YITH.

Cela permet au module d’exploiter :

  • dates de début
  • dates de fin
  • informations de séjour
  • nombre de personnes

sans imposer un unique schéma rigide côté WordPress.

Endpoints Dolibarr

Le point d’entrée principal de synchronisation Woo est :

custom/booking/syncwoocommande/receive.php

Le module propose également un endpoint de test :

custom/booking/syncwoocommande/ping.php

Sécurité de la synchronisation Woo

La communication WooCommerce / Dolibarr est protégée via signature.

Deux modes sont pris en charge :

  • WooBook
  • Webhook WooCommerce natif

Le module sait vérifier les signatures avant traitement.

Résultat côté Dolibarr

Lorsqu’une commande Woo est synchronisée, le module peut :

  • créer ou mettre à jour le tiers
  • créer ou mettre à jour la commande Dolibarr
  • rattacher les lignes au bon produit Dolibarr
  • créer ou mettre à jour la réservation interne Booking
  • associer la réservation à la commande
  • mettre à jour les dates
  • annuler la réservation si la commande Woo est annulée / remboursée / échouée
  • libérer les blocs associés si nécessaire

Idempotence

Le flux Woo a été conçu pour éviter la duplication.

Si le même événement est rejoué :

  • le module tente de retrouver l’objet existant
  • il met à jour au lieu de recréer
  • il évite les doublons de commande et de réservation

C’est un point important dans un environnement webhook réel.

Gestion métier des annulations

Le module distingue la logique client et la logique interne.

La fenêtre d’annulation tardive configurée s’applique au contexte client selon les règles définies.

En revanche, l’utilisateur interne autorisé ou l’administrateur peut conserver la capacité d’annuler depuis le back-office, selon les droits et les workflows métier en place.

Les annulations peuvent aussi être propagées depuis les documents commerciaux ou depuis la synchronisation Woo selon les cas.

Menus principaux du module

Le module ajoute un menu principal Réservations avec plusieurs entrées fonctionnelles, notamment :

  • Tableau de bord
  • Prendre une réservation
  • Réservations
  • Planning
  • Ressources
  • Prestations
  • Produits réservables
  • Règles
  • Types de personnes
  • Synchronisations / Partages
  • Contrôle iCal
  • Paramétrage

Paramétrage

Paramètres généraux

Ils permettent notamment de définir :

  • le comportement par défaut
  • la génération de documents
  • la disponibilité par défaut
  • la gestion des extrafields
  • la synchronisation des documents Dolibarr
  • les règles de modification
  • la fenêtre d’annulation tardive
  • certaines constantes globales du module

Paramétrage synchronisation

Cette partie permet de gérer :

  • les mappings canaux / produits
  • les imports iCal
  • les exports ICS
  • les secrets
  • les tokens
  • les diagnostics
  • les logs
  • les crons
  • la conservation des données de configuration

Paramétrage WooCommerce Sync

Une page dédiée permet de configurer le lien WooCommerce / Dolibarr.

Elle permet notamment de définir :

  • le mode d’authentification
  • les secrets de communication
  • l’URL de base Dolibarr
  • les mappings produits Woo -> Dolibarr
  • les mappings clients Woo -> Dolibarr
  • certains comportements spécifiques comme l’ajout de ligne taxe de séjour
  • les tests de connectivité
  • le rappel des étapes côté WordPress

Logs, maintenance et diagnostic

Le module intègre plusieurs outils utiles pour l’exploitation :

  • journal de synchronisation
  • test de connectivité Woo
  • test import / export iCal
  • réparation du cron iCal
  • nettoyage d’orphelins
  • outils de contrôle iCal
  • correction de certains cas de désalignement de dates Woo / site
  • supervision des statuts de synchronisation

Cas d’usage typiques

Hébergement / location saisonnière

  • réservation sur site WordPress
  • commande WooCommerce
  • synchronisation vers Dolibarr
  • réservation visible dans Booking
  • planning mis à jour
  • suivi commercial centralisé

Gestion d’espaces ou salles

  • produits réservables par créneau
  • ressources affectées
  • planning d’occupation
  • règles de fermeture / ouverture
  • documents commerciaux liés

Activité avec canaux externes

  • import iCal depuis plateformes externes
  • gestion de blocs externes
  • réduction du risque de double réservation
  • visibilité unifiée dans le planning Dolibarr

Résumé

Booking pour Dolibarr est un module complet de gestion de réservation orienté exploitation interne.

Il permet de :

  • structurer l’offre réservable
  • centraliser les réservations
  • relier la réservation au client et au document commercial
  • piloter un planning opérationnel
  • gérer ressources, prestations et règles
  • synchroniser des flux iCal
  • intégrer proprement un site WordPress / WooCommerce / YITH via le plugin WooBook fourni

Le module s’adresse aux structures qui souhaitent faire de Dolibarr le point central de leur organisation, tout en conservant un site web dédié à la vente et à la réservation.