Multi-tenant
Un tenant est un client de l'éditeur : un gérant, son ou ses établissements, et l'ensemble de leurs données. La plateforme sert tous les tenants depuis une même application, en garantissant que les données de l'un ne sont jamais visibles d'un autre.
1. Provisionnement automatique (A1)
La création d'un tenant est entièrement automatique. À l'issue du parcours d'inscription, le tenant est opérationnel sans aucune intervention technique de l'éditeur.
Le provisionnement enchaîne :
- La création du tenant et de son espace de données isolé (cf. §2).
- La création du compte gérant, premier utilisateur du tenant.
- L'initialisation de la localisation à partir du pays et de la ville déclarés (cf. Localisation).
- L'ouverture de la période d'essai ou de l'abonnement choisi (cf. Formules).
- Le lancement de l'assistant de configuration.
Règle métier : un provisionnement qui échoue en cours de route ne doit laisser aucun tenant à moitié créé. Soit le tenant est complet et utilisable, soit il n'existe pas.
2. Isolation des données (A2)
L'isolation repose sur une base de données par tenant.
- Toutes les données métier d'un tenant (établissements, praticiens, clients, réservations, ventes, stocks) sont stockées dans sa propre base.
- Les données communes à tous les tenants (référentiels pays, types d'établissement, prestations prédéfinies, grille tarifaire, abonnements) sont tenues dans une base centrale gérée par l'éditeur.
- Aucun écran, export ou API d'un tenant ne peut lire la base d'un autre tenant.
Une base par tenant simplifie la sauvegarde, la restauration et la suppression d'un client à la demande (cf. Données personnelles).
3. Migrations multi-bases (A4)
Chaque évolution du modèle de données doit être appliquée à toutes les bases des tenants. Les migrations sont orchestrées :
- Journalisées : pour chaque tenant, on sait quelle migration a été appliquée, quand, et avec quel résultat.
- Réversibles : chaque migration prévoit son retour arrière.
- Un échec sur un tenant ne doit pas bloquer les autres. Le tenant en échec est signalé dans la supervision.
4. Environnements, déploiement, sauvegarde, réplication (A10)
- La plateforme dispose d'environnements distincts, au minimum développement, recette et production.
- Les bases des tenants sont sauvegardées et répliquées.
5. Points à préciser
- Liste exacte des environnements et circuit de déploiement.
- Fréquence des sauvegardes, durée de rétention et délai de restauration visé.
- Stratégie de réplication (géographie, bascule).
- Comportement d'une migration en échec : retour arrière automatique ou intervention manuelle.