Le défi
Cleopatra INK exploitait son studio de maquillage permanent avec trois outils déconnectés : une application de calendrier pour les réservations, une caisse distincte pour les paiements en studio et une feuille Google Sheets pour les commissions des artistes. Les rapprocher en fin de mois prenait plus de 12 heures, la propriétaire ne pouvait pas voir d’un coup d’œil quelle artiste était réellement rentable, et les litiges avec les artistes sur « combien suis-je payée pour cette retouche ? » étaient une source de friction récurrente. Pendant ce temps, les acomptes étaient encaissés à la main par téléphone — si bien que les absences faisaient doublement mal (une fois pour le fauteuil vide, une fois pour la bataille de rétrofacturation).
La demande : condenser toute l’exploitation du studio en un seul SaaS — réservation publique, acomptes sécurisés, paiement en studio, répartition automatisée des gains des artistes, pièces jointes de formulaires de consentement et tableau de bord du propriétaire avec revenus et performance des artistes — conçu spécifiquement pour le flux de travail de la beauté permanente (acompte + solde, rôles de designer + artiste, services multi-séances, parrainages) plutôt qu’un CRM de salon générique.
Notre solution
Nous avons construit Cleopatra INK comme un SaaS multi-tenant unique en trois volets coordonnés : une page de réservation publique, une console d’exploitation en studio et un portail en libre-service pour les artistes — le tout propulsé par une API Node.js + Express, MongoDB Atlas et une couche de paiement Stripe + Stripe Connect qui gère l’ensemble du flux d’argent.
La page de réservation publique est le haut de l’entonnoir. Un client choisit un service (microblading, lip blush, eyeliner, retrait, retouche), choisit une artiste (avec profil, portfolio et avis), choisit un créneau selon les disponibilités en direct, remplit le formulaire de consentement et verse un acompte via Stripe Checkout — le tout dans un parcours adapté au mobile. Un SMS de confirmation est envoyé via Twilio avec une URL de report par lien magique, de sorte que le taux d’absence baisse sans appel téléphonique.
La console d’exploitation en studio est ce que la réception et l’artiste utilisent réellement pendant le rendez-vous. Ils voient l’agenda du jour, les formulaires de consentement joints à chaque rendez-vous, l’état de l’acompte et un bouton « Take Payment » en un geste qui ouvre un Stripe Checkout pour le solde. Dès que le solde est payé, le système exécute la répartition des commissions : la part du studio va au compte Stripe principal de la plateforme ; la part de l’artiste va directement à son compte Stripe Connect ; les frais de produit / salle / parrain sont déduits avant la répartition, le tout piloté par des règles de commission par service et par artiste que le propriétaire définit une fois et oublie.
Le portail en libre-service des artistes fait disparaître les litiges sur les gains. Chaque artiste se connecte à un portail qui affiche chaque rendez-vous effectué, le montant brut, chaque frais ou répartition et le montant net versé — avec la date de transfert par Stripe. Pas de feuille de calcul, pas de courriel, pas de négociation de fin de mois ; le calcul fait office de registre.
Pour le propriétaire, un tableau de bord financier consolide les revenus par service, par artiste, par lieu et par période, avec un export en un clic. Un programme de parrainage suit de bout en bout les recommandations designer / artiste, de sorte qu’un designer qui amène un nouveau client est payé automatiquement. Les formulaires de consentement, fichiers de design et ententes signées sont stockés dans S3 avec des URL signées à durée limitée — jamais exposés par un accès direct aux objets.
En arrière-plan : les webhooks Stripe arrivent de façon idempotente dans l’API Node.js ; les acomptes, soldes, remboursements et transferts Stripe Connect sont rapprochés d’un registre par rendez-vous afin que le propriétaire puisse justifier chaque dollar à tout moment.
- Réservation publique mobile-first — service + artiste + créneau + formulaire de consentement + acompte Stripe, en un seul parcours
- Confirmation par SMS Twilio avec URL de report par lien magique — le taux d’absence baisse sans appel téléphonique
- Console d’exploitation en studio avec l’agenda du jour, les formulaires de consentement joints et « Take Payment » en un geste
- Répartition automatisée des gains des artistes via Stripe Connect — part du studio, part de l’artiste, frais de salle / produit / parrain, sur le même paiement, de façon idempotente
- Règles de commission par service et par artiste — à définir une fois, puis à oublier ; le calcul devient le registre
- Portail en libre-service des artistes — chaque rendez-vous, brut, chaque frais, net, date de versement — les litiges sur les gains n’ont plus où se loger
- Programme de parrainage designer + artiste avec versement automatique au parrain lorsqu’un client recommandé réserve pour la première fois
- Tableau de bord financier du propriétaire avec revenus par service, artiste, lieu et période, plus export en un clic
- Formulaires de consentement, fichiers de design et ententes signées stockés dans S3 avec uniquement des URL signées à durée limitée — aucun accès direct aux objets
- EarningsLedger par rendez-vous avec rapprochement par somme de contrôle — le propriétaire peut justifier chaque dollar à tout moment