Horaires, fermetures & exceptions de calendrier

Définissez les horaires d'ouverture de votre restaurant, son fuseau horaire, programmez des fermetures exceptionnelles et ajustez vos services au jour le jour (fermer, réduire la capacité, restreindre les zones) via le bloc « Prochains jours ».

Modifier vos horaires d'ouverture et votre fuseau horaire

Les horaires d'ouverture décrivent, jour par jour, quand votre restaurant accueille du public. Ils servent de base d'information et peuvent être convertis en services de réservation. Le fuseau horaire associé garantit que tous les créneaux, fermetures et exceptions sont interprétés à l'heure locale de votre établissement.

Étapes

  1. Ouvrez la fiche du restaurant (page Détails du restaurant), onglet « Détails du restaurant », et repérez la section « Horaires » (icône horloge).
  2. Pour changer le fuseau, ouvrez la liste déroulante dans l'en-tête de la section et choisissez votre fuseau : il est sauvegardé aussitôt.
  3. Cliquez sur « Modifier » pour passer en mode édition.
  4. Pour fermer un jour, cochez « Fermé » à côté du jour concerné : ses créneaux disparaissent automatiquement.
  5. Pour un jour ouvert, ajustez l'heure d'ouverture et l'heure de fermeture de chaque créneau.
  6. Cliquez sur « Créneau » pour ajouter un second service dans la journée (ex. service du soir) ; utilisez l'icône corbeille pour supprimer un créneau.
  7. Cliquez sur « Enregistrer » pour valider (toast « Horaires mis à jour »), ou « Annuler » pour revenir aux horaires précédents.

Réglages

Fuseau horaire
Liste déroulante située dans l'en-tête de la section « Horaires » (à gauche du bouton « Modifier »). Détermine l'heure locale utilisée pour calculer les créneaux, les dates de fermeture et les exceptions. La valeur par défaut est Europe/Paris. La liste propose une vingtaine de fuseaux courants (Europe, Amérique, Asie, Australie) ; votre fuseau actuel reste toujours visible même s'il ne figure pas dans la liste de base. La modification est enregistrée immédiatement (toast « Fuseau horaire mis à jour »).
Fermé (case à cocher par jour)
Visible uniquement en mode édition. Quand elle est cochée, le jour est marqué « Fermé » et tous ses créneaux sont effacés. Décocher la case (ou ajouter un créneau) rouvre le jour.
Créneau (heure d'ouverture / heure de fermeture)
Chaque jour peut contenir plusieurs créneaux horaires (par exemple midi puis soir). Chaque créneau a une heure de début et une heure de fin saisies via deux champs heure. Un nouveau créneau est pré-rempli à 12:00 - 14:00.

Tant que vous n'avez pas cliqué sur « Enregistrer », rien n'est sauvegardé ; « Annuler » restaure les horaires d'origine.

Cocher « Fermé » vide les créneaux du jour ; à l'inverse, ajouter un créneau retire automatiquement l'état « Fermé ».

Les horaires d'ouverture sont une information de base. Pour réellement piloter les réservations, créez des services dans l'onglet Réservations, vous pouvez les générer depuis vos horaires via « Importer mes horaires » (bouton proposé quand aucun service n'existe encore).

Le fuseau horaire est central : c'est lui qui détermine, pour l'agent vocal et le widget, à quelle heure locale un créneau ou une fermeture s'applique. Vérifiez-le avant de programmer des fermetures.

L'affichage hors édition résume chaque jour : « Fermé », un tiret « - » si aucun créneau, ou les plages horaires (ex. 12:00-14:00).

Programmer une fermeture exceptionnelle

Une fermeture exceptionnelle (vacances, jour férié, travaux) bloque une ou plusieurs dates complètes. Tant qu'elle est active, aucune réservation ne peut être prise sur les dates concernées, tous services confondus. Les fermetures se gèrent dans l'onglet Réservations, sous « Fermetures exceptionnelles ».

Étapes

  1. Dans l'onglet Réservations, cliquez sur « Fermeture » (en-tête « Mes services ») ou sur « Nouvelle fermeture » (section Fermetures exceptionnelles).
  2. Saisissez un « Nom » pour la fermeture.
  3. Renseignez les dates « Du » et « Au » (même date pour une seule journée).
  4. Ajoutez si besoin une « Note publique » destinée aux clients et une « Raison interne ».
  5. Laissez l'interrupteur sur « Active » pour qu'elle prenne effet (ou passez-le sur Inactive pour la préparer sans l'appliquer).
  6. Cliquez sur « Enregistrer » (toast « Fermeture créée » ou « Fermeture mise à jour »).
  7. Pour modifier une fermeture, cliquez dessus dans la liste ; pour la supprimer, utilisez « Supprimer » dans la fenêtre (confirmation demandée).

Réglages

Active / Inactive (interrupteur)
Interrupteur en haut de la fenêtre de fermeture (libellé « Active » / « Inactive » selon l'état). Une fermeture Active bloque effectivement les dates ; une fermeture Inactive est conservée mais n'a aucun effet sur les réservations. Par défaut une nouvelle fermeture est Active.
Nom
Libellé obligatoire de la fermeture (ex. « Vacances de Noël », « Jour férié »). Il s'affiche dans la liste et dans « Prochains jours » sous la forme « Fermé · <nom> ». Sans nom, l'enregistrement est refusé (toast « Le nom est requis »).
Du / Au
Dates de début et de fin, incluses toutes les deux. Pour fermer une seule journée, mettez la même date dans les deux champs. La date de fin doit être supérieure ou égale à la date de début, sinon l'enregistrement est bloqué.
Note publique (visible client)
Message facultatif communiqué au client / dit par l'agent vocal pour expliquer la fermeture (ex. « Le restaurant est fermé pour congés annuels »). Repris dans le motif d'indisponibilité affiché.
Raison interne
Note facultative à usage interne uniquement (ex. « Travaux », « vacances »). Jamais exposée aux clients.

Une fermeture active rend toutes les dates couvertes non réservables : une demande de réservation sur ces dates est refusée et l'agent vocal répond « Désolé, le restaurant est fermé ce jour-là. Souhaitez-vous une autre date ? ».

Les dates de début et de fin sont inclusives : « Du 24/12 Au 26/12 » ferme bien les 24, 25 et 26 décembre.

Le compteur « X jours fermés » s'affiche en direct dans la fenêtre ; si la date de fin est antérieure au début, un message d'erreur apparaît et le bouton Enregistrer est désactivé.

La liste sépare les fermetures « à venir » des fermetures passées : ces dernières sont masquées derrière « Historique (X fermetures passées) ».

Le sous-titre de l'en-tête « Mes services » indique le nombre de fermetures à venir (ex. « 3 services · 2 fermetures à venir »).

Pour fermer un seul service (et pas toute la journée) ou réduire la capacité d'une date précise, n'utilisez pas une fermeture mais le bloc « Prochains jours » (voir l'article dédié).

Exceptions de calendrier : fermer un service, réduire la capacité, restreindre les zones

Une exception de calendrier (ServiceDateOverride) ajuste une date donnée sans toucher à votre configuration habituelle. Contrairement à une fermeture qui bloque toute la journée, une exception peut viser un seul service ou la journée entière, et actionner un ou plusieurs « leviers » : fermer, réduire la capacité ou limiter les zones ouvertes. Une note publique peut accompagner chaque exception. En pratique, ces exceptions se créent et se modifient depuis le bloc « Prochains jours » de l'onglet Réservations (voir l'article dédié) : il n'existe pas, à ce jour, de formulaire « Exceptions » séparé dans l'interface. Chaque exception doit activer au moins un levier pour être valide.

Étapes

  1. Ouvrez l'onglet Réservations et repérez le bloc « Prochains jours » : c'est l'endroit où l'on crée et modifie les exceptions au quotidien.
  2. Choisissez le jour puis le service concerné, et activez le ou les leviers : fermer (« Ouvert » / « Fermé »), réduire la « Capacité max », ou cocher/décocher les « Zones ouvertes ».
  3. Ajoutez si besoin un « Message affiché aux clients » pour informer le client de la raison (visible quand le service est fermé ou limité).
  4. Chaque action est enregistrée immédiatement : l'exception (toujours sur une seule journée) s'applique à la date choisie.
  5. Les exceptions portant sur plusieurs jours ne se créent pas depuis l'interface ; si elles existent (créées via l'API), elles s'affichent en lecture seule dans « Prochains jours » avec la mention « (plage, gérer dans Exceptions) ».

Réglages

Portée (service ou journée entière)
Une exception cible soit un service précis, soit la journée entière (tous les services). Depuis « Prochains jours », agir sur un service donné crée une exception de service ; fermer tous les services d'un jour aboutit à des exceptions par service (et le jour affiche « Tous les services sont fermés ce jour »). Au runtime, une fermeture de journée entière est annoncée comme « restaurant fermé » ; une fermeture limitée à un service est annoncée comme « pas de disponibilité pour ce service ».
Fermé (levier de fermeture)
Rend le service (ou la journée) non réservable sur la date visée. Dans « Prochains jours », bascule via les boutons « Ouvert » / « Fermé ».
Capacité réduite (capacityOverride)
Plafonne le nombre de couverts. Le plafond ne peut que réduire : il ne dépassera jamais la capacité de base. Pour une exception de service, la capacité saisie ne peut pas excéder la capacité du service (refus côté API). Pour une exception de journée entière (serviceId nul), un plafond trop élevé n'est pas rejeté mais simplement ramené à la base au moment du calcul.
Zones limitées (allowedZoneIds)
Restreint les zones de salle ouvertes ce jour-là (ex. terrasse uniquement). Les zones non sélectionnées sont fermées. Les zones choisies doivent appartenir au restaurant. Au moins une zone doit rester ouverte, sinon fermez le service.
Plafond de personnes (maxPersonsOverride)
Limite le nombre de personnes par créneau pour la date. Combiné avec la valeur du service, c'est la valeur la plus basse qui s'applique. Ce levier existe dans le modèle de données et est pris en compte au runtime, mais il n'est PAS exposé dans l'interface « Prochains jours » : il ne peut être défini que via l'API.
Note publique / Message affiché aux clients (publicNote)
Texte facultatif communiqué au client et dit par l'agent vocal pour expliquer l'exception (ex. « Service complet, ouverture en terrasse uniquement »). En cas de fermeture de service, c'est ce message qui est renvoyé au client. Il n'est conservé que s'il accompagne un levier réel.
Nom
Libellé de l'exception. Il n'y a pas de champ « Nom » à remplir dans l'interface : depuis « Prochains jours », il est généré automatiquement selon le levier actif (« Fermé », « Capacité réduite » ou « Zones limitées »).

Une exception doit définir au moins un effet (fermer, capacité, personnes max ou zones), sinon elle est refusée par l'API.

Plusieurs exceptions peuvent s'appliquer le même jour : pour la capacité et le plafond de personnes, c'est la valeur la plus restrictive (le minimum non nul) qui est retenue.

Les leviers ne font que réduire : ils ne peuvent jamais augmenter votre capacité ou ouvrir des zones au-delà de votre configuration normale.

Une exception dont la période est entièrement passée ne peut pas être créée (elle n'aurait aucun effet) ; en revanche une exception passée existante reste modifiable et désactivable via l'API.

Restreindre les zones revient, en mode tables, à n'autoriser que les tables des zones ouvertes : la capacité disponible est recalculée en conséquence.

Fermeture journée entière vs fermeture de service : la première fait dire « fermé » à l'agent (et propose une autre date), la seconde fait proposer un autre horaire pour le même jour.

Comme pour les fermetures, l'agent vocal et le widget respectent ces exceptions en temps réel pour décider des créneaux proposés.

Gérer le jour le jour avec « Prochains jours »

Le bloc « Prochains jours » (onglet Réservations) permet d'ouvrir, fermer ou limiter vos services au jour le jour, sans passer par un formulaire. Chaque action crée, met à jour ou supprime en coulisse une exception de calendrier d'une seule journée. Vous naviguez par fenêtres de 7 jours et agissez directement sur chaque service.

Étapes

  1. Dans l'onglet Réservations, repérez le bloc « Prochains jours » (icône calendrier).
  2. Naviguez avec les flèches de semaine ou revenez à la date du jour via « Aujourd'hui ».
  3. Pour un service donné, cliquez sur « Ouvert » ou « Fermé » pour basculer son état sur ce jour.
  4. Cliquez sur la ligne de résumé sous le service (bouton « Modifier ») pour déplier les options détaillées.
  5. Réduisez la « Capacité max » en saisissant un nombre, ou cochez/décochez les zones dans « Zones ouvertes ».
  6. Si le service est fermé ou limité, renseignez le « Message affiché aux clients ».
  7. Pour tout annuler sur une journée, cliquez sur l'icône « Réinitialiser le jour » dans l'en-tête du jour.
  8. Utilisez « Voir plus » pour afficher les jours masqués au-delà des 4 premiers de la fenêtre.

Réglages

Navigation par semaine
Flèches « Semaine précédente » / « Semaine suivante » et libellé de plage (ex. « 3 – 9 juin »). Le bouton « Aujourd'hui » (affiché seulement quand vous n'êtes pas déjà sur la semaine en cours) revient à la semaine du jour ; impossible de remonter avant aujourd'hui.
Ouvert / Fermé (par service)
Bascule en un clic l'état d'un service pour la journée. « Fermé » s'affiche en rouge. Fermer tous les services d'un jour affiche « Tous les services sont fermés ce jour ».
Capacité max
Champ numérique (dans le panneau déplié « Modifier ») pour réduire le nombre de couverts du service ce jour-là. La saisie est plafonnée à la capacité de base (au-delà, la limite est levée) et minimale à 1. La croix rétablit la capacité normale ; vider le champ supprime la limite.
Zones ouvertes
Cases à cocher par zone (visibles à partir de 2 zones, dans le panneau « Modifier ») pour n'ouvrir que certaines zones. Cocher toutes les zones revient à « toutes zones » (aucune restriction). Au moins une zone doit rester ouverte, sinon un message invite à fermer le service.
Message affiché aux clients
Champ texte (visible quand le service est fermé ou limité) repris par l'agent / vu par le client, ex. « Service complet, ouverture en terrasse uniquement ». Il n'est conservé que s'il accompagne un levier réel.
Réinitialiser le jour
Icône de réinitialisation dans l'en-tête d'un jour (visible uniquement s'il existe une exception d'une seule journée et pas de fermeture) : supprime toutes les exceptions d'une seule journée pour cette date et remet le jour à la normale.

Chaque modification de levier est enregistrée immédiatement (toast « Mis à jour ») : pas de bouton Enregistrer ici. La réinitialisation d'un jour affiche « Jour réinitialisé ».

Une bande de légende rappelle le code couleur : vert « ouvert », orange « limité », rouge « fermé ».

Seules les exceptions d'une seule journée sont modifiables ici. Les exceptions sur plusieurs jours s'affichent en lecture seule avec la mention « (plage, gérer dans Exceptions) » et, à la réinitialisation, le rappel « Les exceptions sur plusieurs jours se gèrent dans Exceptions ».

Si une fermeture exceptionnelle couvre le jour, le service affiche « Fermé · <nom> » et « Géré dans Fermetures » : modifiez-la depuis la section Fermetures, pas ici.

Seuls les services actifs et applicables à la date sont listés (service récurrent dont le jour de semaine correspond et n'est pas exclu, ou service exceptionnel programmé sur cette date) ; sinon « Aucun service » s'affiche.

Le compteur « Voir plus » signale en orange le nombre d'exceptions (et fermetures actives) présentes sur les jours masqués pour ne pas les rater.

La capacité de base affichée tient compte du mode tables (somme des places des zones ouvertes) ou de la capacité du service, et de l'éventuelle limite de capacité intérieure du restaurant (indoorCapacityLimit).

Comment fermetures et exceptions affectent réellement les réservations

Cet article récapitule la manière dont les horaires, fermetures et exceptions sont appliqués lors d'une demande de réservation, que ce soit par l'agent vocal, le widget public ou en saisie interne. L'objectif est de comprendre ce que verra ou entendra le client.

Étapes

  1. Le système identifie d'abord la date demandée à l'heure locale de votre fuseau horaire.
  2. Il vérifie les fermetures exceptionnelles actives : si la date est couverte, la réservation est refusée.
  3. Il résout ensuite les exceptions de calendrier de la date (pour le service concerné ou la journée entière).
  4. Si un levier « fermé » s'applique, la réservation est bloquée ; sinon la capacité et les zones sont recalculées selon les leviers actifs.
  5. Les créneaux restants sont proposés au client en tenant compte de la capacité réduite, des zones ouvertes et du plafond de personnes.

Fermeture exceptionnelle ou exception « journée entière fermée » → l'agent annonce que le restaurant est fermé et propose une autre date ; le message public de l'exception, s'il existe, est repris dans le motif.

Exception « service fermé » → l'agent indique l'absence de disponibilité pour ce service (et reprend votre message public s'il y en a un), ce qui invite à choisir un autre horaire plutôt qu'un autre jour.

Capacité réduite et zones limitées ne ferment pas le service : elles diminuent simplement le nombre de couverts disponibles et les tables proposées.

Pour les capacités cumulées d'un même jour, c'est toujours la valeur la plus basse qui prime, et jamais au-dessus de votre capacité réelle.

Garde-fou réservation interne : le personnel peut, en saisie back-office, forcer une réservation (option « forcer » / allowOverride) ; dans ce cas l'exception du jour n'est pas appliquée du tout (fermeture, capacité et zones de l'exception sont ignorées). Les fermetures exceptionnelles, elles, restent bloquantes même en mode forcé sur le flux de création.

Les réservations de type walk-in (sur place, tables assignées ou zone précisée) sont confirmées d'office et contournent les contrôles de capacité standard.

Si aucun créneau n'est trouvé sur la période demandée, le système cherche automatiquement la prochaine disponibilité jusqu'à un mois plus tard, en respectant fermetures et exceptions.

Mis à jour le 4 juin 2026.

Prendre RDV