Réservation par service et par prestataire, en PHP
Easy!Appointments est une application web de prise de rendez-vous écrite en PHP, à installer sur son propre serveur. Elle part d'une équipe : l'administrateur déclare des services (durée, prix, catégorie) et des prestataires, chacun avec ses horaires, ses pauses et ses jours d'exception. Sur la page publique, le client choisit un service, un prestataire ou « n'importe lequel », puis un créneau. Des comptes secrétaires gèrent l'agenda des prestataires qui leur sont confiés.
Cal.com donne lui aussi au client une page où choisir son créneau, mais son dépôt public, devenu Cal.diy, demande Node.js et PostgreSQL, là où Easy!Appointments se contente de PHP et MySQL. Rallly répond à un autre besoin : faire voter un groupe sur des dates.
Le comparatif des outils de prise de rendez-vous open source met en regard sa pile et son rythme de versions avec ceux des autres outils.
Agendas Google et CalDAV synchronisés, installation dans un dossier
- Logé à côté d'un site existant : le projet revendique une installation dans un simple dossier du serveur, au besoin dans une base MySQL déjà en place.
- Agendas synchronisés : chaque prestataire relie son Google Calendar, synchronisé dans les deux sens, ou un serveur CalDAV. Une tâche cron (
php index.php console sync) synchronise tous les prestataires d'un coup. - Liens de visioconférence : depuis la 1.6.0, un lien Jitsi accompagne les rendez-vous pris en ligne, et un réglage ajoute un lien Google Meet pour les prestataires synchronisés avec Google.
- Points de branchement : une API REST décrite par un fichier OpenAPI, des webhooks, et un annuaire LDAP ou Active Directory pour les comptes.
- CAPTCHA sur les formulaires publics depuis la 1.6.0, avec ALTCHA comme alternative au CAPTCHA image.
- Interface en 41 langues, français compris.
Ni rappel ni paiement, correctifs de sécurité en bêta
PHP 8.2 et MySQL ; le Docker du dépôt sert au développement. Le guide d'installation demande Apache 2.4 avec mod_rewrite, PHP 8.2 et MySQL 5.7 au minimum, ce que la plupart des hébergeurs fournissent. On téléverse les fichiers, on remplit config.php, et un assistant web termine l'installation. Le docker-compose.yml du dépôt n'est pas fait pour la production, prévient la documentation. L'image de production alextselegidis/easyappointments vient d'un dépôt à part et attend MySQL dans un second conteneur.
Ni rappel avant le rendez-vous, ni paiement. Les e-mails partent quand un rendez-vous est créé, modifié ou annulé. Le rappel automatique avant le rendez-vous est demandé depuis septembre 2021 (ticket #1132, toujours ouvert). Un service porte un prix, mais le code ne contient aucun module de paiement.
Gratuit, avec la marque en pied de page. Le code est sous GPL-3.0, usage commercial compris. La page de réservation affiche « Powered By Easy!Appointments », écrit en dur dans son gabarit. L'auteur vend à part des licences de marque blanche, dont une « Extended » pour les éditeurs SaaS et les revendeurs, ainsi que de l'hébergement géré et du support, sans prix publié.
Taillé pour une équipe de services. La page d'accueil cite la santé, l'éducation, les salons ou le recrutement ; en solo, le guide conseille un seul prestataire au nom de l'entreprise.
Un mainteneur, des versions stables espacées. Alex Tselegidis signe 3 577 commits du dépôt, ouvert en 2014 ; le contributeur suivant, 41. Vingt-huit mois séparent la 1.4.3 (mars 2022) de la 1.5.0 (juillet 2024). Ont suivi la 1.5.1 (janvier 2025), la 1.5.2 (septembre 2025) et la 1.6.0 (27 mai 2026). La 1.6.1 est en bêta depuis le 7 septembre 2026.
Sept avis de sécurité publiés en 2026. Le plus grave, classé « high », touchait la 1.5.2 et permettait de prendre la main sur des rendez-vous ; la 1.6.0 le corrige. Les notes des préversions 1.6.1 listent d'autres correctifs de sécurité, dont un CAPTCHA contournable et des mots de passe CalDAV de prestataires renvoyés aux comptes secrétaires. Le 7 octobre 2026, aucune version stable ne les contenait.
