Guide d’installation pour Maria Bookings Standard et Pro
Installez et gérez Maria Bookings Standard et Pro avec les étapes de configuration, réservations, outils admin, e-mails, lieux, rôles et support.
Maria Bookings est une application web de prise de rendez-vous en ligne destinée aux entreprises de services. Elle comprend une page de réservation publique, une page de gestion des réservations, un tableau de bord administrateur, la gestion des services et du personnel, des notifications par e-mail, des règles de réservation, des paramètres multilingues et la gestion des rendez-vous clients.
Ce guide couvre à la fois Maria Bookings Standard et Maria Bookings Pro.
1. Présentation des éditions
Maria Bookings Standard
Maria Bookings Standard est conçu pour une seule entreprise ou un seul établissement. Il comprend le système de réservation principal et tous les outils d'administration essentiels.
- Page de réservation publique
- Page de gestion des réservations client
- Tableau de bord administrateur
- Gestion des rendez-vous
- Gestion des clients
- Gestion des services
- Gestion du personnel/des prestataires
- Horaires du personnel et congés
- Notifications et modèles d'e-mail
- Règles de réservation
- Image de marque et couleurs
- Paramètres de langue et de devise
- Journaux d'activité
- Comptes utilisateurs et accès basé sur les rôles
- Prise en charge de la protection anti-bot
- Prise en charge des flux de calendrier
Maria Bookings Pro
Maria Bookings Pro comprend tout ce qui est inclus dans Standard et ajoute des fonctionnalités multi-établissements pour les entreprises en croissance disposant de plusieurs succursales ou de responsables d'établissement.
- Tout ce qui est inclus dans Standard
- Plusieurs établissements
- Flux de réservation basé sur l'établissement
- Services spécifiques à un établissement
- Affectation du personnel spécifique à un établissement
- Rôle de responsable (Manager)
- Accès du responsable restreint à l'établissement assigné
- Statistiques de performance par établissement
- Détection des problèmes de réservation liés à une configuration incomplète des établissements/services/personnel
- Réservation publique et gestion administrative tenant compte des établissements
2. Prérequis
- Node.js 22 LTS ou version ultérieure
- npm
- Un environnement d'hébergement capable d'exécuter une application Node.js
- Une base de données prise en charge : SQLite, PostgreSQL, MySQL ou MariaDB
- Un domaine ou sous-domaine pour une utilisation en production
- Les identifiants du fournisseur de messagerie si des notifications par e-mail sont requises
Bases de données prises en charge
- SQLite : Adapté uniquement au développement local ou à l'hébergement sur VPS.
- PostgreSQL : Recommandé pour Vercel, Neon, Supabase, Railway et Render.
- MySQL/MariaDB : Adapté à Railway, PlanetScale, VPS et autres hébergeurs compatibles MySQL.
Important : SQLite ne doit pas être utilisé sur Vercel car Vercel utilise un système de fichiers éphémère. Utilisez PostgreSQL pour les déploiements sur Vercel.
3. Fichiers du package
Après l'achat ou la compilation, le package de l'application contient les fichiers d'exécution nécessaires pour faire fonctionner Maria Bookings.
Package Standard
maria-bookings/Package Pro
maria-bookings-pro/Utilisez le package correspondant à votre licence. Standard et Pro sont des builds distincts. Pro n'est pas une version verrouillée ou désactivée de Standard ; il inclut des fonctionnalités supplémentaires liées aux établissements et aux responsables.
4. Installation
Étape 1 : Téléverser l'application
Téléversez le package Maria Bookings sur votre serveur ou plateforme d'hébergement.
Pour Standard, téléversez :
maria-bookingsPour Pro, téléversez :
maria-bookings-proÉtape 2 : Installer les dépendances
Ouvrez un terminal dans le dossier de l'application et exécutez :
npm install --omit=devÉtape 3 : Créer les variables d'environnement
Créez un fichier .env ou ajoutez des variables d'environnement dans le tableau de bord de votre hébergeur.
Variables obligatoires
PORT=3000
NODE_ENV=production
JWT_SECRET=your-long-random-jwt-secret
SETUP_SECRET=your-long-random-setup-secretJWT_SECRET est utilisé pour les sessions de connexion de l'administrateur. Utilisez une valeur aléatoire forte d'au moins 32 caractères.
SETUP_SECRET protège l'assistant d'installation. Vous devez saisir la même valeur lors de la configuration.
Exemple SQLite
DB_TYPE=sqlite
DB_PATH=./data/appointments.dbUtilisez SQLite uniquement pour le développement local ou l'hébergement sur VPS.
Exemple PostgreSQL
DB_TYPE=postgres
DATABASE_URL=postgresql://user:password@host:5432/dbname?sslmode=requirePostgreSQL est recommandé pour Vercel, Neon, Supabase, Railway et Render.
Exemple MySQL/MariaDB
DB_TYPE=mysql
DATABASE_URL=mysql://user:password@host:3306/dbnameParamètre de proxy inverse
Si l'application s'exécute derrière Nginx, Cloudflare, Railway, Render, Vercel ou un autre proxy, définissez :
TRUST_PROXY=1Si l'application n'est pas derrière un proxy, définissez :
TRUST_PROXY=0Étape 4 : Démarrer l'application
Exécutez :
npm startPar défaut, l'application s'exécute sur :
http://localhost:3000Étape 5 : Ouvrir l'assistant de configuration
Visitez :
/setup.htmlExemple :
https://yourdomain.com/setup.htmlÉtape 6 : Terminer la configuration
L'assistant de configuration vous guide à travers :
- La sélection ou la confirmation du type de base de données
- La saisie du secret de configuration
- Le test de la connexion à la base de données
- La création du compte administrateur
- La définition du nom de l'entreprise
- La sélection de la langue de l'administrateur
Les mots de passe administrateur doivent être robustes et inclure :
- Au moins 10 caractères
- Au moins une lettre majuscule
- Au moins une lettre minuscule
- Au moins un chiffre
- Au moins un caractère spécial
Une fois la configuration terminée, la page de configuration est verrouillée et l'application redirige les utilisateurs vers le panneau d'administration.
5. Principales URL de l'application
- Site public :
/ - Page de réservation :
/booking.html - Page de gestion des réservations :
/manage.html - Panneau d'administration :
/admin - Assistant de configuration :
/setup.html
6. Présentation du panneau d'administration
Le panneau d'administration est l'endroit où les propriétaires d'entreprise et les utilisateurs autorisés gèrent le système de réservation.
Tableau de bord
Le tableau de bord affiche l'activité de réservation, les rendez-vous à venir, les réservations récentes, le total des rendez-vous, le personnel actif, les services actifs et les clients.
Statistiques
La section statistiques fournit des rapports sur les rendez-vous, les revenus, le statut des réservations, les réservations terminées, les réservations en attente et la performance du personnel.
Dans Pro, les statistiques peuvent également inclure la performance par établissement.
Rendez-vous
Utilisez Rendez-vous pour consulter, rechercher, filtrer, modifier, confirmer, terminer, annuler ou supprimer des réservations.
Les statuts de rendez-vous comprennent :
- En attente
- Confirmé
- Terminé
- Annulé
- Absence
Clients
Utilisez Clients pour consulter les dossiers clients, effectuer des recherches par nom, e-mail ou téléphone, et consulter l'historique des rendez-vous.
Services
Utilisez Services pour créer et gérer les services réservables.
Chaque service peut comprendre :
- Nom
- Description
- Durée
- Prix
- Catégorie
- Ordre de tri
- Statut actif ou inactif
Personnel
Utilisez Personnel pour gérer les prestataires de services, les membres de l'équipe, les horaires, les affectations de services, les photos de profil et les congés.
Chaque membre du personnel peut comprendre :
- Nom
- Titre
- Biographie
- Photo
- Téléphone
- Services assignés
- Horaire hebdomadaire
- Congés
Modèles d'e-mail
Utilisez Modèles d'e-mail pour personnaliser l'objet et le corps des e-mails de notification.
Les types de modèles pris en charge comprennent :
- E-mail de nouvelle réservation au client
- E-mail de nouvelle réservation au prestataire
- E-mail de nouvelle réservation à l'administrateur
- E-mail de confirmation de réservation au client
- E-mail d'annulation au client
- E-mail d'annulation au prestataire
- E-mail d'annulation à l'administrateur
- E-mail de rappel au client
- E-mail de rappel au prestataire
Paramètres
Utilisez Paramètres pour configurer l'identité de l'entreprise, les règles de réservation publique, la langue, la devise, l'image de marque, l'envoi d'e-mails, la protection anti-bot, le référencement (SEO) et le comportement du système.
Journaux d'activité
Les journaux d'activité enregistrent les actions administratives importantes. Les journaux peuvent être activés ou désactivés, et leur durée de conservation peut être configurée.
Utilisateurs
Utilisez Utilisateurs pour gérer les comptes de connexion des administrateurs et du personnel.
Les administrateurs disposent d'un accès complet. Les utilisateurs du personnel peuvent être restreints à des zones et des permissions spécifiques.
7. Fonctionnalités Pro
Établissements
Maria Bookings Pro ajoute une section Établissements. Utilisez-la pour créer et gérer des succursales ou des sites d'entreprise.
Chaque établissement peut comprendre :
- Nom
- Slug
- Adresse
- Fuseau horaire
- Statut
Réservation basée sur l'établissement
Dans Pro, le flux de réservation publique comprend une étape de sélection de l'établissement. Les clients choisissent un établissement avant de sélectionner le service, le personnel, la date et l'heure.
Services par établissement
Les services peuvent être valables pour l'ensemble de l'organisation ou spécifiques à un établissement.
- Services de l'organisation : Partagés entre les établissements.
- Services de l'établissement : Disponibles uniquement dans une succursale spécifique.
Responsables (Managers)
Maria Bookings Pro comprend le rôle de Responsable. Les responsables peuvent être affectés à un établissement et ne peuvent gérer que les données autorisées pour cet établissement.
Selon les paramètres de l'administrateur, les responsables peuvent être autorisés à créer, modifier ou supprimer des services pour leur propre établissement.
Problèmes de réservation
Pro comprend une détection des problèmes de réservation pour aider les administrateurs à repérer les erreurs de configuration susceptibles de masquer des services lors de la réservation publique.
Exemples de problèmes de réservation :
- Un établissement n'a pas de personnel
- Un établissement n'a pas de services
- Un service n'a pas de personnel assigné
- Un service de l'organisation n'est réservable dans aucun établissement
- Un service n'est réservable que dans certains établissements
8. Flux de réservation public
Flux de réservation Standard
- Le client ouvre
/booking.html - Le client sélectionne un service
- Le client sélectionne un membre du personnel ou le premier prestataire disponible
- Le client sélectionne une date et un créneau horaire disponible
- Le client saisit son nom, son e-mail, son téléphone et des notes
- Le client vérifie la réservation
- Le client confirme la réservation
- L'application affiche un code de référence
Flux de réservation Pro
- Le client ouvre
/booking.html - Le client sélectionne un établissement
- Le client sélectionne un service disponible dans cet établissement
- Le client sélectionne un membre du personnel ou le premier prestataire disponible
- Le client sélectionne une date et un créneau horaire disponible
- Le client saisit son nom, son e-mail, son téléphone et des notes
- Le client vérifie la réservation
- Le client confirme la réservation
- L'application affiche un code de référence
Les nouvelles réservations sont créées comme étant en attente par défaut. Les administrateurs ou les prestataires peuvent les confirmer depuis le panneau d'administration ou depuis les liens de confirmation dans l'e-mail si les notifications par e-mail sont activées.
9. Gestion d'une réservation en tant que client
Les clients peuvent gérer leur propre réservation depuis :
/manage.htmlPour consulter une réservation, le client saisit le code de référence affiché après la réservation.
Pour annuler une réservation, il peut être nécessaire pour le client de se vérifier à l'aide de l'adresse e-mail complète ou du numéro de téléphone utilisé lors de la réservation.
Les rendez-vous terminés ne peuvent pas être annulés en ligne.
10. Règles de réservation
Les règles de réservation sont gérées depuis Admin > Paramètres.
Les paramètres de réservation disponibles comprennent :
- Fuseau horaire de l'entreprise
- Horaires d'ouverture de l'organisation
- Intervalle des créneaux en minutes
- Délai de préavis minimum en heures
- Nombre maximal de jours à l'avance
- Si le numéro de téléphone est requis
- Libellé du personnel affiché sur le formulaire de réservation
- Si les clients peuvent choisir un prestataire
- Paramètres de notification par e-mail
- Paramètres des e-mails de rappel
Les horaires du personnel peuvent remplacer les horaires généraux de l'organisation. Des congés peuvent être ajoutés pour des membres individuels du personnel.
11. Configuration des e-mails
Maria Bookings prend en charge plusieurs fournisseurs de messagerie.
Fournisseurs de messagerie pris en charge
- SMTP
- Resend
- SendGrid
- Amazon SES
- Mailgun
- Postmark
- Webhook
Exemple SMTP
MAIL_PROVIDER=smtp
SMTP_HOST=smtp.example.com
SMTP_PORT=587
SMTP_SECURE=false
SMTP_USER=your-smtp-user
SMTP_PASS=your-smtp-password
SMTP_FROM=Appointments <noreply@yourdomain.com>Exemple Resend
MAIL_PROVIDER=resend
RESEND_API_KEY=re_xxxxxxxx
MAIL_FROM=Appointments <noreply@yourdomain.com>Exemple SendGrid
MAIL_PROVIDER=sendgrid
SENDGRID_API_KEY=SG.xxxxxxxx
MAIL_FROM=Appointments <noreply@yourdomain.com>Exemple Amazon SES
MAIL_PROVIDER=ses
AWS_ACCESS_KEY_ID=your-access-key
AWS_SECRET_ACCESS_KEY=your-secret-key
AWS_REGION=eu-north-1
MAIL_FROM=noreply@yourdomain.comExemple Mailgun
MAIL_PROVIDER=mailgun
MAILGUN_API_KEY=key-xxxxxxxx
MAILGUN_DOMAIN=mg.yourdomain.com
MAILGUN_API_BASE=https://api.mailgun.net
MAIL_FROM=Appointments <noreply@yourdomain.com>Exemple Postmark
MAIL_PROVIDER=postmark
POSTMARK_SERVER_TOKEN=xxxxxxxx
POSTMARK_MESSAGE_STREAM=outbound
MAIL_FROM=Appointments <noreply@yourdomain.com>Exemple Webhook
MAIL_PROVIDER=webhook
MAIL_WEBHOOK_URL=https://your-endpoint.example/hooks/mail
MAIL_WEBHOOK_SECRET=optional-bearer-token
MAIL_FROM=Appointments <noreply@yourdomain.com>Après avoir modifié les variables d'environnement de messagerie, redémarrez l'application. Rendez-vous ensuite dans Admin > Paramètres > Envoi d'e-mails et envoyez un e-mail de test.
12. E-mails de rappel
Maria Bookings peut envoyer des e-mails de rappel avant les rendez-vous.
Les rappels pris en charge comprennent :
- E-mails de rappel 24 heures avant
- E-mails de rappel 1 heure avant
- E-mails de rappel optionnels pour le prestataire
Sur un VPS, les rappels s'exécutent automatiquement tant que l'application est en cours d'exécution.
Sur Vercel ou un hébergement sans serveur, configurez une requête cron vers :
/api/internal/remindersDéfinissez un secret cron dans l'environnement :
CRON_SECRET=your-long-random-cron-secret13. Protection anti-bot
Maria Bookings prend en charge la protection anti-bot pour les formulaires publics de réservation et de contact.
Fournisseurs pris en charge
- Cloudflare Turnstile
- hCaptcha
- Google reCAPTCHA v2
Variables d'environnement
TURNSTILE_SECRET_KEY=your-secret-key
HCAPTCHA_SECRET_KEY=your-secret-key
RECAPTCHA_SECRET_KEY=your-secret-keyLes clés de site peuvent être saisies dans Admin > Paramètres > Protection anti-bot. Les clés secrètes doivent rester dans l'environnement du serveur et ne pas être stockées publiquement.
14. Langues et devise
Maria Bookings comprend une prise en charge multilingue pour le panneau d'administration, la page de réservation publique, la page de gestion des réservations, le portail public et les modèles d'e-mail.
Les paramètres de langue sont disponibles dans Admin > Paramètres > Langue et devise.
- Langue de l'administrateur : Utilisée pour le panneau d'administration et les e-mails destinés aux administrateurs/au personnel.
- Langue du site public : Utilisée pour la réservation publique, la gestion des réservations, le portail public et les e-mails clients.
- Symbole de devise : Utilisé pour les prix des services et les récapitulatifs de réservation publique.
15. Image de marque et référencement (SEO)
Les paramètres de marque sont disponibles dans Admin > Paramètres.
Vous pouvez configurer :
- Nom de l'entreprise
- Slogan ou description
- Adresse
- URL du logo
- Couleur principale
- Couleur d'accent
- Visibilité de la mention « propulsé par »
- URL canonique du site
- Titre SEO
- Description SEO
- Mots-clés SEO
L'application fournit également des fichiers publics de découverte, comme les points d'accès robots et sitemap.
16. Rôles et permissions des utilisateurs
Administrateur
Les administrateurs disposent d'un accès complet à tous les paramètres, utilisateurs, journaux, services, personnel, clients et rendez-vous.
Personnel
Les comptes du personnel peuvent être liés à des profils de personnel/prestataire. Les utilisateurs du personnel peuvent être restreints à leurs propres rendez-vous et à des menus d'administration limités.
Responsable (Manager)
Le rôle de Responsable est disponible dans Pro. Les responsables peuvent être affectés à un établissement et restreints aux opérations spécifiques à cet établissement.
17. Flux de calendrier
Les membres du personnel peuvent disposer d'URL privées d'abonnement au calendrier. Celles-ci permettent de consulter les rendez-vous dans des applications de calendrier compatibles.
Les administrateurs peuvent régénérer une URL de calendrier si un ancien lien ne doit plus être utilisé.
18. Liste de contrôle recommandée pour la première configuration
- Installer les dépendances.
- Configurer les variables d'environnement.
- Démarrer l'application.
- Ouvrir
/setup.html. - Tester la connexion à la base de données.
- Créer le compte administrateur.
- Ouvrir le panneau d'administration.
- Mettre à jour l'identité de l'entreprise et l'image de marque.
- Définir le fuseau horaire, la langue et la devise.
- Ajouter des services.
- Ajouter des membres du personnel.
- Affecter des services au personnel.
- Définir les horaires du personnel.
- Configurer l'envoi d'e-mails.
- Envoyer un e-mail de test.
- Tester une réservation publique.
- Confirmer, terminer et annuler un rendez-vous de test.
Liste de contrôle supplémentaire pour Pro
- Ajouter des établissements.
- Affecter du personnel aux établissements.
- Créer des services valables pour toute l'organisation ou spécifiques à un établissement.
- Affecter des services au personnel de chaque établissement.
- Vérifier les problèmes de réservation.
- Tester le flux de réservation publique pour chaque établissement.
- Créer des comptes de responsable si nécessaire.
- Vérifier les restrictions d'accès des responsables.
19. Mise à jour de Maria Bookings
- Sauvegardez les fichiers de l'application.
- Sauvegardez la base de données.
- Téléversez le nouveau package Standard ou Pro.
- Conservez vos valeurs
.envexistantes. - Exécutez
npm install --omit=devsi les dépendances ont changé. - Redémarrez l'application.
- Ouvrez le panneau d'administration et vérifiez que le tableau de bord se charge.
- Testez une réservation depuis la page de réservation publique.
Ne remplacez pas une installation Pro par le package Standard, sauf si vous souhaitez délibérément supprimer les fonctionnalités Pro.
20. Dépannage
L'application ne démarre pas
- Vérifiez que Node.js 22 LTS ou une version ultérieure est installé.
- Vérifiez que
npm install --omit=devs'est terminé avec succès. - Vérifiez que les variables d'environnement requises sont définies.
- Consultez les journaux du serveur pour détecter des paramètres de base de données ou de messagerie manquants.
La configuration indique que la connexion à la base de données a échoué
- Vérifiez
DB_TYPE. - Vérifiez
DATABASE_URLouDB_PATH. - Vérifiez que le serveur de base de données est accessible depuis votre plateforme d'hébergement.
- Pour PostgreSQL, vérifiez les paramètres SSL requis par votre fournisseur.
Le secret de configuration est rejeté
- Vérifiez que la valeur saisie dans l'assistant de configuration correspond exactement à
SETUP_SECRET. - Redémarrez l'application après avoir modifié les variables d'environnement.
Les e-mails ne sont pas envoyés
- Vérifiez que
MAIL_PROVIDERest correctement configuré. - Vérifiez que tous les identifiants requis du fournisseur sont présents.
- Redémarrez l'application après avoir modifié les variables de messagerie.
- Utilisez Admin > Paramètres > Envoi d'e-mails pour envoyer un e-mail de test.
Aucun créneau horaire n'apparaît
- Vérifiez que le service est actif.
- Vérifiez que le membre du personnel est actif.
- Vérifiez que le membre du personnel est affecté au service sélectionné.
- Vérifiez que l'horaire du personnel inclut le jour sélectionné.
- Vérifiez que la date se situe dans la fenêtre maximale de jours à l'avance pour la réservation.
- Vérifiez que les règles de préavis minimum ne bloquent pas le créneau.
- Dans Pro, vérifiez que l'établissement dispose de personnel et de services réservables.
Les clients ne peuvent pas annuler leurs réservations
- Vérifiez que le code de référence de la réservation est correct.
- Vérifiez que le client utilise l'e-mail ou le numéro de téléphone complet de la réservation pour la vérification.
- Vérifiez que le rendez-vous n'est pas déjà terminé.
Les services d'établissement Pro sont masqués lors de la réservation
- Ouvrez Problèmes de réservation dans le panneau d'administration.
- Vérifiez que l'établissement est actif.
- Vérifiez que le service est actif.
- Vérifiez que du personnel est affecté à cet établissement.
- Vérifiez que le personnel est lié au service.
21. Recommandations de sécurité
- Utilisez des valeurs aléatoires fortes pour
JWT_SECRET,SETUP_SECRETetCRON_SECRET. - Utilisez HTTPS en production.
- Gardez les identifiants de la base de données confidentiels.
- N'exposez pas publiquement le fichier
.env. - Utilisez des identifiants de fournisseurs de messagerie fiables.
- Activez la protection anti-bot pour les formulaires publics si le spam devient un problème.
- N'accordez au personnel et aux responsables que les permissions dont ils ont besoin.
- Régénérez les URL de flux de calendrier si un lien privé est partagé accidentellement.
- Sauvegardez la base de données avant les mises à jour.
22. Assistance
Pour toute assistance, contactez Maria Stella Tech :