Le parcours de référence, rejoué en cadence et narré. Ce n'est pas un
verdict : le vert et le rouge viennent des gates. Ceci répond à l'autre
question — à quoi ça ressemble pour un humain.
L'administration de la plateforme, au-dessus du multi-tenant
Montre la chaîne de provisionnement — organisation, ACP, comptes — qui précède tous les autres parcours. Et la contrainte qui la borne : le superadmin n'appartient à aucune organisation.
administrateur
1 échange réseau refusé ou message de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
Le panneau d'affichage, et qui le lit
Remplace la feuille scotchée près des boîtes aux lettres. Le syndic rédige une annonce de travaux et la publie ; une copropriétaire la retrouve en cherchant « ascenseur », l'ouvre et lit le texte entier. Puis le syndic archive : une annonce périmée cesse d'encombrer le panneau sans disparaître de l'historique.
syndiccopropriétaire
7 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
[404] POST /api/v1/notices/a5b6b381-54bf-48cc-ba5c-97072630f2ed/view
[error] Failed to increment view count: ApiError: API Error: 404
at v (/_astro/api.DU12slzA.js:2:4408)
[404] POST /api/v1/notices/a5b6b381-54bf-48cc-ba5c-97072630f2ed/view
[error] Failed to increment view count: ApiError: API Error: 404
at v (/_astro/api.DU12slzA.js:2:4408)
[404] POST /api/v1/notices/a5b6b381-54bf-48cc-ba5c-97072630f2ed/view
[error] Failed to increment view count: ApiError: API Error: 404
at v (/_astro/api.DU12slzA.js:2:4408)
Balayage complet — comptable
Tous les écrans du produit, ouverts un par un par un comptable. Ce parcours ne démontre pas une valeur : il établit un état des lieux, et rend visibles les écrans que personne n'avait jamais ouverts.
comptable
30 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[403] GET /api/v1/stats/dashboard
[warning] [RouteGuard] Access denied to /admin for role accountant
[warning] [RouteGuard] Access denied to /documents for role accountant
[error] Failed to load models: Error: Failed to fetch models
at se (/_astro/McpChatbot.fqm_Eb5R.js:1:783)
at async /_astro/McpChatbot.fqm_Eb5R.js:1:4323
[requestfailed] GET /mcp/v1/models — net::ERR_ABORTED
[warning] [RouteGuard] Access denied to /meetings for role accountant
[403] GET /api/v1/stats/owner/dues-by-acp
[403] GET /api/v1/stats/owner
[error] Error fetching owner dashboard data: ApiError: Only Owner can access these statistics
at v (/_astro/api.DU12slzA.js:2:4408)
at async Promise.all (index 0)
at async Ce (/_astro/OwnerDashboard.BhLuA0A6.js:1:13677)
[warning] [RouteGuard] Access denied to /owner for role accountant
[warning] [RouteGuard] Access denied to /syndic for role accountant
[warning] [RouteGuard] Access denied to /tickets for role accountant
[403] GET /api/v1/organizations?per_page=50&page=1
[error] Error loading organizations: ApiError: Only SuperAdmin can access all organizations
at v (/_astro/api.DU12slzA.js:2:4408)
at async t (/_astro/organisations-recherche.CH4tnSID.js:1:157)
at async de (/_astro/AcpList.DA-FeESY.js
[warning] [RouteGuard] Access denied to /admin/acps for role accountant
[warning] [RouteGuard] Access denied to /admin/acps/onboarding for role accountant
[warning] [RouteGuard] Access denied to /admin/board-members for role accountant
[warning] [RouteGuard] Access denied to /admin/gamification for role accountant
[warning] [RouteGuard] Access denied to /admin/gdpr for role accountant
[warning] [RouteGuard] Access denied to /admin/monitoring for role accountant
[warning] [RouteGuard] Access denied to /admin/organization-detail for role accountant
[403] GET /api/v1/organizations?per_page=50&page=1
[error] Error loading organizations: ApiError: Only SuperAdmin can access all organizations
at v (/_astro/api.DU12slzA.js:2:4408)
at async t (/_astro/organisations-recherche.CH4tnSID.js:1:157)
at async $ (/_astro/OrganizationList.Cu8
[warning] [RouteGuard] Access denied to /admin/organizations for role accountant
[403] GET /api/v1/role-assignments
[warning] [RouteGuard] Access denied to /admin/role-assignments for role accountant
[403] GET /api/v1/stats/seed-data
[error] Failed to load seed stats: ApiError: Only SuperAdmin can access seed data statistics
at v (/_astro/api.DU12slzA.js:2:4408)
at async G (/_astro/SeedManager.B0iQXYlQ.js:4:1712)
at async /_astro/SeedManager.B0iQXYlQ.js:4:1657
[warning] [RouteGuard] Access denied to /admin/seed for role accountant
[warning] [RouteGuard] Access denied to /admin/subscriptions for role accountant
Balayage complet — copropriétaire
Tous les écrans du produit, ouverts un par un par un copropriétaire. Ce parcours ne démontre pas une valeur : il établit un état des lieux, et rend visibles les écrans que personne n'avait jamais ouverts.
copropriétaire
30 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[403] GET /api/v1/dashboard/accountant/stats
[warning] [RouteGuard] Access denied to /accountant for role owner
[warning] [RouteGuard] Access denied to /admin for role owner
[warning] [RouteGuard] Access denied to /call-for-funds for role owner
[warning] [RouteGuard] Access denied to /expenses for role owner
[warning] [RouteGuard] Access denied to /invoice-workflow for role owner
[warning] [RouteGuard] Access denied to /journal-entries for role owner
[error] Failed to load models: Error: Failed to fetch models
at se (/_astro/McpChatbot.fqm_Eb5R.js:1:783)
at async /_astro/McpChatbot.fqm_Eb5R.js:1:4323
[requestfailed] GET /mcp/v1/models — net::ERR_ABORTED
[warning] [RouteGuard] Access denied to /owner-contributions for role owner
[warning] [RouteGuard] Access denied to /payment-reminders for role owner
[warning] [RouteGuard] Access denied to /reports for role owner
[warning] [RouteGuard] Access denied to /syndic for role owner
[403] GET /api/v1/organizations?per_page=50&page=1
[error] Error loading organizations: ApiError: Only SuperAdmin can access all organizations
at v (/_astro/api.DU12slzA.js:2:4408)
at async t (/_astro/organisations-recherche.CH4tnSID.js:1:157)
at async de (/_astro/AcpList.DA-FeESY.js
[warning] [RouteGuard] Access denied to /admin/acps for role owner
[warning] [RouteGuard] Access denied to /admin/acps/onboarding for role owner
[warning] [RouteGuard] Access denied to /admin/board-members for role owner
[warning] [RouteGuard] Access denied to /admin/gamification for role owner
[warning] [RouteGuard] Access denied to /admin/gdpr for role owner
[warning] [RouteGuard] Access denied to /admin/monitoring for role owner
[warning] [RouteGuard] Access denied to /admin/organization-detail for role owner
[403] GET /api/v1/organizations?per_page=50&page=1
[error] Error loading organizations: ApiError: Only SuperAdmin can access all organizations
at v (/_astro/api.DU12slzA.js:2:4408)
at async t (/_astro/organisations-recherche.CH4tnSID.js:1:157)
at async $ (/_astro/OrganizationList.Cu8
[warning] [RouteGuard] Access denied to /admin/organizations for role owner
[403] GET /api/v1/role-assignments
[warning] [RouteGuard] Access denied to /admin/role-assignments for role owner
[403] GET /api/v1/stats/seed-data
[error] Failed to load seed stats: ApiError: Only SuperAdmin can access seed data statistics
at v (/_astro/api.DU12slzA.js:2:4408)
at async G (/_astro/SeedManager.B0iQXYlQ.js:4:1712)
at async /_astro/SeedManager.B0iQXYlQ.js:4:1657
[warning] [RouteGuard] Access denied to /admin/seed for role owner
Balayage complet — administrateur
Tous les écrans du produit, ouverts un par un par un administrateur. Ce parcours ne démontre pas une valeur : il établit un état des lieux, et rend visibles les écrans que personne n'avait jamais ouverts.
administrateur
30 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
[400] GET /api/v1/dashboard/accountant/stats
[400] GET /api/v1/dashboard/accountant/transactions?limit=5
[warning] [RouteGuard] Access denied to /accountant for role superadmin
[404] GET /api/v1/buildings/da1c41b0-7916-435a-a3a0-4d35365da4c1/bookable-resources/available
[404] GET /api/v1/buildings/da1c41b0-7916-435a-a3a0-4d35365da4c1/bookable-resources/available
[401] GET /api/v1/budgets/stats
[error] Error loading stats: ApiError: User does not belong to an organization
at v (/_astro/api.DU12slzA.js:2:4408)
at async G (/_astro/BudgetList.DqgKCaM5.js:1:10978)
at async Promise.all (index 1)
at async /_astro/BudgetList.D
[400] GET /api/v1/call-for-funds
[warning] [RouteGuard] Access denied to /call-for-funds for role superadmin
[warning] [RouteGuard] Access denied to /documents for role superadmin
[400] GET /api/v1/energy-campaigns
[401] GET /api/v1/etats-dates/stats
[warning] [RouteGuard] Access denied to /expenses for role superadmin
[warning] [RouteGuard] Access denied to /invoice-workflow for role superadmin
[warning] [RouteGuard] Access denied to /journal-entries for role superadmin
[error] Failed to load models: Error: Failed to fetch models
at se (/_astro/McpChatbot.fqm_Eb5R.js:1:783)
at async /_astro/McpChatbot.fqm_Eb5R.js:1:4323
[requestfailed] GET /mcp/v1/models — net::ERR_ABORTED
[warning] [RouteGuard] Access denied to /meetings for role superadmin
[warning] [RouteGuard] Access denied to /owner for role superadmin
[401] GET /api/v1/board-members/my-mandates
[warning] [RouteGuard] Access denied to /owner-contributions for role superadmin
[warning] [RouteGuard] Access denied to /payment-reminders for role superadmin
[warning] [RouteGuard] Access denied to /reports for role superadmin
[warning] [RouteGuard] Access denied to /syndic for role superadmin
[401] GET /api/v1/tickets/statistics
[warning] [RouteGuard] Access denied to /tickets for role superadmin
[warning] [RouteGuard] Access denied to /owner/contact for role superadmin
[warning] [RouteGuard] Access denied to /owner/documents for role superadmin
[warning] [RouteGuard] Access denied to /owner/expenses for role superadmin
Balayage complet — syndic
Tous les écrans du produit, ouverts un par un par un syndic. Ce parcours ne démontre pas une valeur : il établit un état des lieux, et rend visibles les écrans que personne n'avait jamais ouverts.
syndic
30 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[warning] [RouteGuard] Access denied to /accountant for role syndic
[403] GET /api/v1/stats/dashboard
[warning] [RouteGuard] Access denied to /admin for role syndic
[warning] [RouteGuard] Access denied to /journal-entries for role syndic
[error] Failed to load models: Error: Failed to fetch models
at se (/_astro/McpChatbot.fqm_Eb5R.js:1:783)
at async /_astro/McpChatbot.fqm_Eb5R.js:1:4323
[requestfailed] GET /mcp/v1/models — net::ERR_ABORTED
[403] GET /api/v1/stats/owner/dues-by-acp
[403] GET /api/v1/stats/owner
[error] Error fetching owner dashboard data: ApiError: Only Owner can access these statistics
at v (/_astro/api.DU12slzA.js:2:4408)
at async Promise.all (index 0)
at async Ce (/_astro/OwnerDashboard.BhLuA0A6.js:1:13677)
[warning] [RouteGuard] Access denied to /owner for role syndic
[warning] [RouteGuard] Access denied to /reports for role syndic
[403] GET /api/v1/organizations?per_page=50&page=1
[error] Error loading organizations: ApiError: Only SuperAdmin can access all organizations
at v (/_astro/api.DU12slzA.js:2:4408)
at async t (/_astro/organisations-recherche.CH4tnSID.js:1:157)
at async de (/_astro/AcpList.DA-FeESY.js
[warning] [RouteGuard] Access denied to /admin/acps for role syndic
[warning] [RouteGuard] Access denied to /admin/acps/onboarding for role syndic
[warning] [RouteGuard] Access denied to /admin/board-members for role syndic
[warning] [RouteGuard] Access denied to /admin/gamification for role syndic
[warning] [RouteGuard] Access denied to /admin/gdpr for role syndic
[warning] [RouteGuard] Access denied to /admin/monitoring for role syndic
[warning] [RouteGuard] Access denied to /admin/organization-detail for role syndic
[403] GET /api/v1/organizations?per_page=50&page=1
[error] Error loading organizations: ApiError: Only SuperAdmin can access all organizations
at v (/_astro/api.DU12slzA.js:2:4408)
at async t (/_astro/organisations-recherche.CH4tnSID.js:1:157)
at async $ (/_astro/OrganizationList.Cu8
[warning] [RouteGuard] Access denied to /admin/organizations for role syndic
[403] GET /api/v1/role-assignments
[warning] [RouteGuard] Access denied to /admin/role-assignments for role syndic
[warning] [RouteGuard] Access denied to /admin/seed for role syndic
[warning] [RouteGuard] Access denied to /admin/subscriptions for role syndic
[warning] [RouteGuard] Access denied to /admin/user-owner-links for role syndic
[403] GET /api/v1/organizations?per_page=50&page=1
[error] Error loading organizations: ApiError: Only SuperAdmin can access all organizations
at v (/_astro/api.DU12slzA.js:2:4408)
at async t (/_astro/organisations-recherche.CH4tnSID.js:1:157)
at async ye (/_astro/UserListAdmin.BBljg
Le comptable tient les comptes, et n'approuve pas ce qu'il saisit
Montre le rôle le mieux cadré du produit : de la saisie d'une dépense au bilan, en passant par l'écriture en partie double et l'appel de fonds. Et démontre la séparation des rôles — le bouton « approuver » n'existe pas pour lui.
comptable
1 échange réseau refusé ou message de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
Le conseil de copropriété, obligatoire au-delà de vingt lots
Montre une élection à deux voix : le syndic élit un copropriétaire au conseil, et l'élu découvre son mandat. Le conseil surveille le syndic — ce n'est pas un comité de plus, c'est un contre-pouvoir que la loi impose aux grandes copropriétés.
syndicconseil
1 échange réseau refusé ou message de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
Le copropriétaire, dix étapes — de la connexion au paiement d'un appel de fonds
Démontre le parcours du rôle le plus peuplé et le moins éprouvé du produit (#807) : ses lots agrégés sur deux ACP, le vote en assemblée, et les deux points où l'écran casse aujourd'hui (#807, #779).
copropriétaire
4 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
[warning] [RouteGuard] Access denied to /owner-contributions for role owner
[404] GET /api/v1/convocations/meeting/56ca39db-d5d3-43a0-a92e-5cade810d106
[404] GET /api/v1/meetings/56ca39db-d5d3-43a0-a92e-5cade810d106/ag-session
Un incident signalé, reçu, confié, clos
Le cycle de vie complet d'un incident, de la copropriétaire qui constate une fuite au syndic qui clôture le dossier. Dix étapes, toutes des gestes : on remplit le formulaire, on l'envoie, on cherche le ticket dans la liste, on l'ouvre, on l'assigne, on le résout, on le clôture. C'est le cas d'usage qui justifie un logiciel de syndic.
copropriétairesyndic
30 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
[404] GET /api/v1/buildings/1096e00e-ac55-4949-b9e9-5ba7ae4e3891/owners
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
[403] GET /api/v1/acps/864240a8-1fe9-4d02-a5ff-b5220bd114a6
L'acte de base, et le compteur qui devient vert
La question de support la plus fréquente du produit, filmée. Un immeuble dont les quotités ne somment pas à l'acte de base bloque toute dépense en 422, et rien ne dit au syndic pourquoi. Ici le compteur affiche 800/1000 en rouge ; le syndic encode le lot manquant, il passe à 1000/1000 en vert, et le lot reçoit son propriétaire — sans qui il ne vote ni ne paie.
syndic
2 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
[403] GET /api/v1/organizations?per_page=1000
Le modérateur communauté, et la porte qu'il ne peut pas franchir
Montre ce que vit quelqu'un à qui on a donné un rôle que le produit ne sert pas encore. Le compte existe, la connexion aboutit, et chaque module communautaire le renvoie à l'accueil.
modérateur
12 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
[warning] Unrecognized feature: 'web-share'.
[warning] No available adapters.
[warning] [RouteGuard] Access denied to /notices for role community.moderator
[warning] Unrecognized feature: 'web-share'.
[warning] No available adapters.
[warning] [RouteGuard] Access denied to /polls for role community.moderator
[warning] Unrecognized feature: 'web-share'.
[warning] No available adapters.
[warning] [RouteGuard] Access denied to /exchanges for role community.moderator
[warning] Unrecognized feature: 'web-share'.
[warning] No available adapters.
Chacun voit son périmètre — le syndic, puis le copropriétaire
Démontre que deux rôles se relaient sur la même copropriété et que l'écran d'accueil de chacun reflète ce qu'il a le droit de voir.
syndiccopropriétaire
30 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[warning] Unrecognized feature: 'web-share'.
[401] POST /api/v1/auth/refresh
[warning] No available adapters.
[401] POST /api/v1/auth/refresh
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
[403] GET /api/v1/organizations?per_page=1000
Le prestataire : un rôle réel, et un écran qu'il n'a pas encore
Montre ce qu'un produit honnête fait d'un rôle qu'il connaît sans encore le servir : il le dit. Le prestataire s'inscrit, se connecte, et reçoit une phrase plutôt qu'une barre de navigation vide.
prestataire
3 échanges réseau refusés ou messages de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
[warning] Unrecognized feature: 'web-share'.
[warning] No available adapters.
Le SEL : un service rendu, des crédits qui changent de main
La partie du produit qui ne ressemble à aucun logiciel de syndic. Une copropriétaire offre trois heures de bricolage, un voisin les demande, elle accepte, elle rend le service, il la note — et les crédits se déplacent. Ce déplacement est invisible sur une capture : c'est pourtant tout ce qui distingue un SEL d'un panneau de petites annonces.
copropriétaireconseil
1 échange réseau refusé ou message de la console — tous ne sont pas des défauts
[401] POST /api/v1/auth/refresh
Consulter la copropriété, et compter les voix
Un syndic prépare son assemblée sans convoquer personne : il ouvre un sondage, le publie, une copropriétaire vote, il clôture et lit le dépouillement. Huit étapes, presque toutes des gestes — on choisit un immeuble, on rédige la question, on ajoute une option, on coche, on dépose sa voix.
syndiccopropriétaire
1 échange réseau refusé ou message de la console — tous ne sont pas des défauts