Aller au contenu
Bibliothèque
Menu
ModuleEn productionEmbarquéXL · > 2 semainesreservation.booking-core

Reservation et disponibilites

Transformer une demande en reservation sans surbooking, avec prix et disponibilite revalides cote serveur.

Le problème qu'il règle

Un calendrier joli ne suffit pas : plusieurs canaux peuvent reserver la meme ressource au meme instant.

Preuve — En production

Tourne chez un client qui s'en sert, données réelles persistées.

Empaquetage — Embarqué

Tissé dans le code du client. À réécrire, pas à copier.

Les écrans

4

Back-office · 2

RouteÉcranCe qu'on y faitLa formeLes états
/appointmentsReservationsTraiter et rechercher les dossiers.Table/fiches, filtres, actions et historique.Demande, confirmee, annulee, no-show, terminee.
/calendarCalendrierVisualiser l'occupation et agir dans le contexte.Jour/semaine/mois, ressources et detail lateral.Vide, surcharge, fermeture, conflit.

Site public · 1

RouteÉcranCe qu'on y faitLa formeLes états
/book/[business]ReserverChoisir une prestation disponible et confirmer.Wizard progressif et recapitulatif.Chargement, aucun creneau, collision, acompte, succes.

Espace client · 1

RouteÉcranCe qu'on y faitLa formeLes états
/portal/[token]Portail clientConsulter et modifier selon les regles.Resume, actions autorisees et contact.Actif, hors delai, annule, token invalide.

Où l'IA intervient

1

L'autonomie se lit avant la technique. « Propose » est le défaut de la maison : l'outil prépare, une personne valide. Tout ce qui « agit » doit nommer son garde-fou.

ProposeChatbot

Cherche les disponibilites et prepare la reservation avec les memes APIs.

Tool calling

Ce qui tourne tout seul

2
DéclencheurEffetComment
Reservation confirmeeEnvoyer confirmation et synchroniser le calendrierOutbox + Brevo/WhatsApp + Google Calendar
AnnulationLiberer l'inventaire et proposer la place a la waitlistRPC + worker

Ce qu'on peut activer dedans

6

Disponibilite

availability

Creneau, capacite partagee, praticien ou actif physique.

Tunnel

wizard

Offre, date, participants/client, recap et acompte.

Agenda

calendar

Jour, semaine, mois et detail.

Liste d'attente

waitlist

Promotion controlee apres liberation.

Recurrence

recurring

Serie editable sans perdre l'historique.

Portail client

portal

Suivi/deplacement/annulation tokenises.

Sous le capot

Données

7
  • services
  • resources
  • appointments
  • blocked_slots
  • occurrences
  • waitlist
  • appointment_events

Composants réutilisables

5
  • BookingWizard
  • AvailabilityPicker
  • Calendar
  • AppointmentDetail
  • Waitlist

Services externes

4
  • · Google Calendar
  • · Brevo
  • · WhatsApp
  • · SystemPay

Rôles et droits

3
  • · Client
  • · Operateur
  • · Manager

Ce qu'il faut autour

Il ne cohabite pas avec

Aucun conflit connu.

D'autres en dépendent

Les pièges

2

Chacun vient d'un incident réel, relevé dans les commentaires du code d'origine. C'est la partie du catalogue qui vaut le plus cher : elle évite de repayer la même leçon.

  • La contrainte anti-chevauchement vit en DB, pas seulement dans l'UI.
  • Un prix inconnu n'est jamais zero.

Ce qu'il ne fait pas, et ce qui reste à faire

Hors périmètre

2
  • · Yield management
  • · Channel manager universel

Pour le mettre vraiment sur étagère

2
  • · Separer adapters appointment/capacity/resource.
  • · Publier API idempotente et migrations de reference.

Où c'est prouvé

3

Studio Belleza

En production

/home/jordy/projects/Studio Belleza/studio-belleza/src/lib/slots.ts

Pahono (moteur Bookflow)

Livré

/home/jordy/projects/PACIFIK'AI/solutions/bookflow/dashboard/src/lib/booking-core.ts

Aqua Safari / résa multi-opérateur

Démo simulée

/home/jordy/projects/tourisme-backoffice/src/lib/booking/disponibilite.ts

Vérifié contre le code le 2026-08-27. Au-delà de quatre-vingt-dix jours sans revérification, une fiche décrit un souvenir, pas un dépôt.

beautesantetourismerestaurationcoachinglocation