Voir toute la documentation

Guide d’installation pour Maria Bookings Standard et Pro

Maria Bookings App - Logiciel de rendez-vous en ligne 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-bookings

Pour 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-secret

JWT_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.db

Utilisez 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=require

PostgreSQL est recommandé pour Vercel, Neon, Supabase, Railway et Render.

Exemple MySQL/MariaDB

DB_TYPE=mysql
DATABASE_URL=mysql://user:password@host:3306/dbname

Paramè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=1

Si l'application n'est pas derrière un proxy, définissez :

TRUST_PROXY=0

Étape 4 : Démarrer l'application

Exécutez :

npm start

Par défaut, l'application s'exécute sur :

http://localhost:3000

Étape 5 : Ouvrir l'assistant de configuration

Visitez :

/setup.html

Exemple :

https://yourdomain.com/setup.html

Étape 6 : Terminer la configuration

L'assistant de configuration vous guide à travers :

  1. La sélection ou la confirmation du type de base de données
  2. La saisie du secret de configuration
  3. Le test de la connexion à la base de données
  4. La création du compte administrateur
  5. La définition du nom de l'entreprise
  6. 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
  • E-mail
  • 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

  1. Le client ouvre /booking.html
  2. Le client sélectionne un service
  3. Le client sélectionne un membre du personnel ou le premier prestataire disponible
  4. Le client sélectionne une date et un créneau horaire disponible
  5. Le client saisit son nom, son e-mail, son téléphone et des notes
  6. Le client vérifie la réservation
  7. Le client confirme la réservation
  8. L'application affiche un code de référence

Flux de réservation Pro

  1. Le client ouvre /booking.html
  2. Le client sélectionne un établissement
  3. Le client sélectionne un service disponible dans cet établissement
  4. Le client sélectionne un membre du personnel ou le premier prestataire disponible
  5. Le client sélectionne une date et un créneau horaire disponible
  6. Le client saisit son nom, son e-mail, son téléphone et des notes
  7. Le client vérifie la réservation
  8. Le client confirme la réservation
  9. 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.html

Pour 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.com

Exemple 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/reminders

Définissez un secret cron dans l'environnement :

CRON_SECRET=your-long-random-cron-secret

13. 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-key

Les 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

  1. Installer les dépendances.
  2. Configurer les variables d'environnement.
  3. Démarrer l'application.
  4. Ouvrir /setup.html.
  5. Tester la connexion à la base de données.
  6. Créer le compte administrateur.
  7. Ouvrir le panneau d'administration.
  8. Mettre à jour l'identité de l'entreprise et l'image de marque.
  9. Définir le fuseau horaire, la langue et la devise.
  10. Ajouter des services.
  11. Ajouter des membres du personnel.
  12. Affecter des services au personnel.
  13. Définir les horaires du personnel.
  14. Configurer l'envoi d'e-mails.
  15. Envoyer un e-mail de test.
  16. Tester une réservation publique.
  17. Confirmer, terminer et annuler un rendez-vous de test.

Liste de contrôle supplémentaire pour Pro

  1. Ajouter des établissements.
  2. Affecter du personnel aux établissements.
  3. Créer des services valables pour toute l'organisation ou spécifiques à un établissement.
  4. Affecter des services au personnel de chaque établissement.
  5. Vérifier les problèmes de réservation.
  6. Tester le flux de réservation publique pour chaque établissement.
  7. Créer des comptes de responsable si nécessaire.
  8. Vérifier les restrictions d'accès des responsables.

19. Mise à jour de Maria Bookings

  1. Sauvegardez les fichiers de l'application.
  2. Sauvegardez la base de données.
  3. Téléversez le nouveau package Standard ou Pro.
  4. Conservez vos valeurs .env existantes.
  5. Exécutez npm install --omit=dev si les dépendances ont changé.
  6. Redémarrez l'application.
  7. Ouvrez le panneau d'administration et vérifiez que le tableau de bord se charge.
  8. 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=dev s'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_URL ou DB_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_PROVIDER est 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_SECRET et CRON_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 :

contact@mariastellatech.com