Organisations
v2.0Gestion multi-tenant : organisations, membres, roles et acces aux dossiers. Centralisez la gestion de vos cabinets et equipes avec un systeme de permissions granulaire.
Presentation #
Le systeme d'organisations d'Innov'Paie permet de gerer plusieurs cabinets ou entites au sein d'une meme plateforme. Chaque organisation est un espace isole qui regroupe ses propres domaines, identifiants OpenPaye, abonnements et membres.
Un utilisateur peut appartenir a plusieurs organisations et passer de l'une a l'autre via le switcher d'organisation dans la barre laterale. Les principales caracteristiques sont :
- Isolation des donnees - Chaque organisation dispose de ses propres domaines, dossiers, salaries et documents. Aucun partage de donnees entre organisations.
- Gestion des membres - Invitez des collaborateurs avec des roles specifiques (owner, admin, member, viewer) et gerez finement leurs acces.
- Identifiants OpenPaye dedies - Chaque organisation dispose de ses propres identifiants OpenPaye, chiffres et securises cote serveur.
- Abonnement Stripe lie - La facturation est geree au niveau de l'organisation via un compte Stripe Customer dedie.
- Acces granulaire aux dossiers - Controlez precisement quels membres peuvent acceder a quels dossiers de paie.
- Archivage des domaines et dossiers - Archivez les domaines et dossiers inactifs sans les supprimer, pour garder un historique propre.
Creation d'une organisation #
Il existe deux manieres de creer une organisation dans Innov'Paie, selon le moment ou l'utilisateur souhaite la configurer.
Lors de l'inscription
Lors de la creation d'un compte utilisateur, un champ optionnel companyName est disponible. Si ce champ est renseigne, une organisation est automatiquement creee avec ce nom et l'utilisateur en devient le owner (proprietaire).
- L'organisation est creee avec le nom de l'entreprise fourni
- L'utilisateur obtient automatiquement le role owner
- Les identifiants OpenPaye sont configures ulterieurement
Depuis les parametres
Apres inscription, un utilisateur peut creer une nouvelle organisation depuis la page de parametres des organisations. Cette methode necessite de fournir les identifiants OpenPaye pour validation.
- Renseigner le nom de l'organisation
- Fournir les identifiants OpenPaye (nom d'utilisateur + mot de passe)
- Les identifiants sont valides via connexion Puppeteer a OpenPaye
- Les identifiants sont chiffres et stockes en base de donnees
- La synchronisation des domaines demarre en arriere-plan
Flux de creation (depuis les parametres)
Roles et hierarchie #
Chaque membre d'une organisation se voit attribuer un role qui determine ses permissions. Les roles suivent une hierarchie stricte : un role superieur dispose de toutes les permissions des roles inferieurs.
| Role | Niveau | Description | Permissions cles |
|---|---|---|---|
| Owner | 4 | Proprietaire de l'organisation | Tous les droits, transfert de propriete, suppression de l'organisation, ne peut pas etre supprime |
| Admin | 3 | Administrateur de l'organisation | Gestion des membres, invitations, modification des parametres, acces a tous les dossiers |
| Member | 2 | Membre de l'organisation | Acces aux domaines et dossiers assignes, execution des automatisations, consultation des documents |
| Viewer | 1 | Observateur en lecture seule | Consultation des dossiers et documents uniquement, aucune modification possible |
Matrice des permissions
| Action | Viewer | Member | Admin | Owner |
|---|---|---|---|---|
| Voir les dossiers | ||||
| Lire les documents | ||||
| Executer des automatisations | ||||
| Inviter des membres | ||||
| Modifier les roles | ||||
| Gerer les acces dossiers | ||||
| Modifier les parametres | ||||
| Transferer la propriete | ||||
| Supprimer l'organisation |
Gestion des membres #
Les administrateurs et proprietaires peuvent gerer les membres de l'organisation : inviter de nouveaux collaborateurs, modifier leurs roles et revoquer leurs acces.
Inviter des membres
Admin+Envoyez une invitation par email a un collaborateur. Il recevra un lien pour rejoindre l'organisation. Vous pouvez definir son role au moment de l'invitation.
- Saisir l'adresse email du collaborateur
- Choisir le role a attribuer (viewer, member, admin)
- Un email d'invitation est envoye automatiquement
Modifier les roles
Admin+Changez le role d'un membre existant. Un admin ne peut promouvoir un membre qu'a un niveau egal ou inferieur au sien. Seul le owner peut promouvoir quelqu'un au role admin.
- Selectionnez le membre dans la liste
- Choisissez le nouveau role
- Le changement est effectif immediatement
Retirer un membre
Admin+Supprimez un membre de l'organisation. Il perdra immediatement acces a toutes les donnees. Le proprietaire (owner) ne peut pas etre retire.
Quitter une organisation
TousTout membre peut quitter une organisation de son propre chef. Le proprietaire doit d'abord transferer la propriete avant de pouvoir quitter.
Acces aux dossiers #
Le systeme d'acces aux dossiers permet de controler finement quels membres peuvent acceder a quels dossiers de paie. Cette fonctionnalite est particulierement utile pour les cabinets comptables gerant de nombreux clients.
isRestricted: true). Dans ce cas, seuls les membres ayant un acces explicite (via FolderAccess) ou les admins/owners peuvent y acceder.
Operations disponibles
Lister les acces d'un dossier
Consultez la liste de tous les membres ayant acces a un dossier specifique, avec leur role et la date d'attribution de l'acces.
Accorder un acces
Attribuez l'acces a un dossier restreint a un membre specifique. L'acces est effectif immediatement. Admin+ requis.
Revoquer un acces
Retirez l'acces d'un membre a un dossier restreint. Le membre perd immediatement la visibilite sur ce dossier et ses documents. Admin+ requis.
Guards de securite
Cote backend, l'acces aux dossiers est protege par des guards NestJS qui verifient a la fois l'appartenance a l'organisation et les droits specifiques :
// DomainOwnerGuard et FolderOwnerGuard verifient :
1. L'utilisateur est-il proprietaire direct (legacy) ?
2. L'utilisateur est-il membre de l'organisation ?
3. Le dossier est-il restreint ?
4. Si restreint, l'utilisateur a-t-il un FolderAccess ?
5. Si admin/owner, acces implicite a tout.
Switcher d'organisation #
Le switcher d'organisation est un composant situe dans la barre laterale, juste en dessous du logo Innov'Paie. Il permet de basculer rapidement entre les differentes organisations auxquelles l'utilisateur appartient.
Fonctionnement
-
1Le switcher affiche le nom et le logo de l'organisation actuellement selectionnee
-
2En cliquant dessus, un menu deroulant affiche toutes les organisations de l'utilisateur
-
3En selectionnant une autre organisation, le contexte change immediatement
-
4Les domaines, dossiers, salaries et documents affiches sont ceux de la nouvelle organisation
-
5L'organisation selectionnee est persistee dans le
localStoragepour etre conservee entre les sessions
organisations.store.ts) persiste l'UUID de l'organisation courante dans le localStorage. Ainsi, lorsque l'utilisateur revient sur la plateforme, il retrouve directement l'organisation qu'il avait selectionnee.
CreateOrganisationModal) sans quitter la page en cours.
Parametres de l'organisation #
La page de parametres de l'organisation (/organisations) regroupe toutes les informations et options de configuration de l'organisation courante.
Informations de l'entreprise
Les informations suivantes peuvent etre configurees par les administrateurs et le proprietaire :
| Champ | Description | Requis |
|---|---|---|
| Nom | Nom de l'organisation / cabinet | |
| Logo | Logo de l'entreprise (affiche dans le switcher) | Optionnel |
| Adresse email de contact de l'entreprise | Optionnel | |
| Telephone | Numero de telephone de contact | Optionnel |
| SIRET | Numero SIRET de l'entreprise (14 chiffres) | Optionnel |
| Site web | URL du site web de l'entreprise | Optionnel |
| Adresse | Adresse postale du siege social | Optionnel |
Facturation Stripe
Chaque organisation est liee a un Stripe Customer dedie. Cela permet de gerer les abonnements, factures et methodes de paiement au niveau de l'organisation plutot qu'au niveau de l'utilisateur individuel.
- Un Stripe Customer est cree automatiquement a la creation de l'organisation
- Les abonnements sont factures a l'organisation, pas a l'utilisateur
- Seuls les admins et le owner peuvent gerer la facturation
Gestion des membres
La page de parametres inclut une section dediee a la gestion des membres. Elle affiche la liste de tous les membres avec :
- Nom, prenom et email de chaque membre
- Role actuel avec badge de couleur
- Date d'ajout a l'organisation
- Actions rapides : modifier le role, retirer le membre
Archivage
Les domaines et dossiers d'une organisation peuvent etre archives. L'archivage permet de masquer les elements inactifs sans les supprimer, preservant ainsi l'historique et les donnees.
Archiver un domaine
Le domaine et tous ses dossiers sont masques de la vue par defaut. Les donnees restent intactes et peuvent etre restaurees a tout moment.
Archiver un dossier
Le dossier est masque de la liste active. Les documents, salaries et historique d'automatisations sont conserves et restaurables.