Outils

Supabase pour un outil interne : le tutoriel complet

Votre prototype marche, et il oublie tout dès que l'onglet se ferme. Voici où ranger les données.

Louis Graffeuil
Fondateur Tandem
Publié
9 minde lecture
Pile de trois disques clairs en argile mate figurant une base de données, reliée par un câble coral à une tuile sombre portant un cadenas

Supabase est l'endroit où vivent les données d'un outil interne. La plateforme fournit une base de données, la gestion des comptes utilisateurs et les règles d'accès, sans aucun serveur à administrer. Pour une PME qui fait construire son premier outil métier, c'est la brique qui transforme une maquette en logiciel utilisable par une équipe.

Ce tutoriel s'adresse à un dirigeant ou à un responsable d'équipe. Il ne contient aucune ligne de code. Il décrit les quatre décisions qui engagent l'entreprise, dans l'ordre où elles se présentent, et les trois pièges qui coûtent cher quand vous les découvrez après la mise en service.

Pourquoi votre prototype perd ses données à chaque rechargement

Un outil généré par l'intelligence artificielle affiche un écran convaincant en quelques minutes. Les boutons répondent, les formulaires se remplissent, la liste se met à jour. Puis l'utilisateur recharge la page et tout a disparu. Rien n'a bugué. L'information n'avait simplement nulle part où aller.

C'est exactement là que s'arrête la démonstration de mon tutoriel sur la création d'une application avec l'IA. Nous avons monté une application fonctionnelle en direct, du premier prompt à la mise en ligne. Et au moment de montrer le résultat, la phrase qui tombe est celle-ci : « on ne sauvegarde pas en base de données, donc dès qu'on rafraîchit, le contenu disparaît ». La séquence s'arrête sur cette limite, et c'est elle que cet article reprend.

La méthode en trois temps, un bac à sable pour tester, un générateur pour l'écran, puis un agent de code pour la suite. La base de données arrive après, et elle change la nature de l'outil.
Schéma des quatre couches d'un outil interne, interface, logique métier, base de données et accès, la troisième mise en avant en coral
Les deux premières couches se génèrent en langage naturel. Les deux dernières se décident, et elles engagent l'entreprise pour des années.

Un outil interne qui ne retient rien reste une maquette. Dès qu'une équipe doit y saisir des congés, suivre des interventions ou qualifier des demandes, il faut un endroit où l'information survit à la fermeture de l'onglet, où deux personnes voient la même chose, et où une suppression accidentelle se rattrape.

Construire cet outil, ou l'acheter ?

La question se pose avant d'ouvrir le moindre outil technique. Une plateforme qui rend la construction facile rend aussi facile la construction de choses qui existent déjà, et qu'une entreprise paiera deux fois, une fois en abonnement et une fois en maintenance.

Je détaillais cet arbitrage dans une publication sur le choix entre construire et acheter ses agents IA, et le constat vaut tel quel pour les outils internes. Entre 2023 et 2025, la mode du prototype maison est retombée, la dette technique a fait peur et le retour sur investissement des approches maison a déçu. Dans beaucoup de cas, la solution du marché reste la plus adaptée, parce que son éditeur itère plus vite que vous ne le ferez jamais sur un sujet qui restera toujours périphérique chez vous.

Visuel de ma publication LinkedIn sur l'arbitrage entre construire et acheter un agent IA
Le support client est le cas d'école. La quasi-totalité des essais s'y font sur une application tierce. Le sur-mesure se justifie là où votre process n'a pas d'équivalent sur étagère.

Sur nos missions d'outils internes, l'arbitrage se tranche en atelier, avant la première maquette. Tandem accompagne plus de 50 entreprises et une centaine de missions, et la décision de ne pas construire est l'une des plus rentables que nous ayons rendues.

Étape 1, créer le projet et choisir la région

La création d'un projet Supabase prend environ deux minutes. Vous donnez un nom, un mot de passe de base de données et une région. Le nom se change, le mot de passe se change, la région jamais. C'est la seule décision irréversible de toute la mise en place, et elle arrive avant que vous ayez compris de quoi il s'agit.

La documentation des régions de l'éditeur distingue deux familles. Les régions spécifiques désignent une ville, Paris, Francfort ou l'Irlande. Les régions générales désignent un continent, et l'éditeur écrit noir sur blanc que sa région générale Europe couvre aussi Londres et Zurich, qui ne sont pas des États membres de l'Union européenne.

Comparaison entre la région générale Europe, qui inclut Londres et Zurich hors Union européenne, et les régions spécifiques Paris, Francfort et Irlande
Le réglage proposé par défaut est le réglage général. Pour une entreprise française qui traite des données de salariés, c'est le mauvais.

Choisissez Paris si vos utilisateurs sont en France. La latence sera meilleure et la question de la localisation des données se règle d'elle-même au moment où un délégué à la protection des données la posera. La même documentation prend d'ailleurs soin de préciser que le choix d'une région est un contrôle de localisation, et qu'il ne vaut à lui seul aucune preuve de conformité.

Étape 2, poser les tables de votre outil

Une base de données s'organise en tables, et une table ressemble à un onglet de tableur. Les colonnes décrivent la nature de l'information, les lignes contiennent les enregistrements. Une table « interventions » aura une colonne date, une colonne client, une colonne technicien et une colonne statut. Le vocabulaire s'arrête à peu près là.

La différence avec un tableur tient en trois points, et ce sont ceux qui comptent pour une équipe. Une base refuse les données incohérentes au lieu de les accepter en silence. Elle relie les tables entre elles, donc un client ne se ressaisit jamais deux fois. Et elle supporte que dix personnes écrivent en même temps sans écraser le travail des autres.

  • Listez les objets avant les écrans. Un outil de suivi d'interventions manipule des clients, des sites, des techniciens et des interventions. Ces quatre mots sont vos quatre tables.
  • Nommez les colonnes en français courant. Vous relirez ce schéma dans deux ans, et le prestataire qui reprendra l'outil aussi.
  • Prévoyez une colonne de date de création partout. Elle ne sert à rien le premier mois, et elle sauve toutes les enquêtes qui suivent.
  • Gardez les documents à part. Les photos de chantier et les PDF vont dans le stockage de fichiers, la base ne garde que leur référence.

Étape 3, fermer l'accès à chaque table

Voici le point qui fait la différence entre un outil interne et une fuite de données. Un outil web communique avec sa base en utilisant une clé publique, et cette clé vit dans le navigateur de chacun de vos salariés. Elle est conçue pour être lisible. N'importe qui sachant ouvrir la console d'un navigateur peut la récupérer en quelques secondes.

Ce qui protège vos données, c'est la politique d'accès posée sur chaque table, appelée sécurité au niveau des lignes. La documentation de l'éditeur sur ce mécanisme demande de l'activer sur chaque table d'un schéma exposé, et précise qu'une nouvelle table du schéma public démarre avec tous les privilèges déjà accordés aux trois rôles de la base. Autrement dit, la protection ne s'enclenche pas d'office.

Comparaison entre une table sans politique d'accès, lisible et modifiable par la clé publique, et une table protégée où chaque salarié ne voit que ses propres lignes
Rien ne distingue les deux à l'usage. L'outil fonctionne aussi bien dans les deux cas, et c'est précisément ce qui rend l'oubli indétectable.

Le coût de cet oubli est documenté. La vulnérabilité CVE-2025-48757, publiée en mai 2025 et notée 9,3 sur 10 en gravité, décrit des applications générées par un assistant de création dont les tables étaient lisibles et modifiables sans aucune authentification. Le relevé qui l'accompagne faisait état de plus de 170 applications concernées, exposant adresses, numéros de téléphone et données de paiement. L'éditeur de l'outil de génération conteste la qualification et renvoie la responsabilité à ses clients, ce qui ne change rien pour l'entreprise dont les données sont sorties.

Étape 4, brancher l'outil et ranger les clés

Votre outil se connecte à la base avec deux clés qui n'ont pas du tout le même statut. La clé publique part dans le navigateur et ne peut lire que ce que vos politiques d'accès autorisent. La clé secrète ignore toutes ces politiques et voit l'intégralité de la base. Elle n'a rien à faire ailleurs que sur un serveur.

Un détail de fraîcheur a échappé à tous les tutoriels français. L'éditeur a changé le nom de ces clés. Sa documentation sur les clés d'API décrit désormais des clés « publishable » et « secret », et annonce la dépréciation des anciennes clés anon et service_role pour la fin 2026. Un tutoriel qui vous fait chercher la clé anon dans l'interface vous fait chercher quelque chose qui est en train de disparaître.

La clé secrète se range dans les variables d'environnement de votre hébergeur, jamais dans le code. C'est le même réflexe que celui décrit dans notre tutoriel de mise en ligne, et il vaut pour toutes les clés d'un projet.

Pour la suite, deux lectures utiles. Notre tutoriel de déploiement sur Vercel couvre la mise en ligne de l'outil et le réglage des variables d'environnement. Notre guide de Claude Code pour les non-développeurs explique comment faire écrire et modifier le code de l'outil en langage naturel, une fois la base en place.

Combien coûte la base de données d'un outil interne ?

Les tarifs relevés en octobre 2026 sur la grille officielle tiennent en trois lignes. Ils sont affichés en dollars hors taxes, donc une société française paie en plus la conversion et la taxe sur la valeur ajoutée.

FormulePrix mensuelBase incluseSauvegardesMise en pause
Gratuite0 $500 Mo, 2 projets actifsAucuneAprès une semaine sans activité
ProÀ partir de 25 $ par projet8 Go de disque7 joursAucune
TeamÀ partir de 599 $8 Go de disque14 joursAucune
Grille tarifaire relevée en octobre 2026 sur la page officielle de l'éditeur.

La ligne qui compte pour un outil interne est la dernière. L'éditeur écrit que les projets gratuits sont mis en pause après une semaine d'inactivité, et la remise en service se fait à la main depuis le tableau de bord. Un outil que votre équipe ouvre tous les jours ne verra jamais la différence. Un outil de clôture mensuelle, de campagne saisonnière ou d'inventaire annuel sera éteint à chaque fois qu'on en aura besoin.

L'absence de sauvegarde sur la formule gratuite disqualifie le même usage pour une autre raison. Une donnée métier supprimée par erreur ne se récupère pas, et le coût de cette perte dépasse largement les quelques centaines d'euros annuels de la formule payante. Pour un outil qu'une équipe utilise vraiment, la formule Pro représente autour de 300 $ par an et par projet, soit nettement moins qu'une licence de logiciel métier pour cinq personnes.

Ce que Supabase ne règle pas pour vous

La plateforme couvre la technique. Elle ne couvre ni la conformité, ni la gouvernance, et il vaut mieux le savoir avant qu'un client ou un comité social et économique ne pose la question.

Le registre des sous-traitants de l'éditeur, daté de juin 2026, liste 24 entités, dont les hébergeurs Amazon Web Services, Google, Cloudflare, Fly.io et Vercel, et OpenAI pour le traitement du langage. Ce document a une particularité que je n'avais vue sur aucun registre comparable. Il n'indique aucun pays. Le registre de Clay en nomme 34 avec leur pays, celui de Mistral en nomme 25 de la même façon. Ici, la question de l'endroit où transitent les données reste ouverte à la lecture du document officiel.

Ces questions relèvent de la gouvernance de l'outil davantage que de son code. Elles rejoignent celles que nous traitons dans notre article sur la sécurité des agents IA en entreprise, et elles se posent dans le même ordre : d'abord ce que l'outil touche, ensuite qui y accède, enfin ce qu'il reste quand quelque chose tourne mal.

Par où commencer pour votre premier outil interne ?

Commencez par la décision de ne pas construire. Listez ce que fait l'outil envisagé, et cherchez honnêtement si un logiciel du marché le couvre. Si la réponse est oui, la meilleure base de données est celle que vous n'aurez pas à maintenir.

Si le process est bien spécifique à votre entreprise, Supabase est un choix solide pour la porter, à quatre conditions qui tiennent toutes dans la première journée de travail. Prenez une région européenne nommée plutôt que la région générale. Activez la protection sur chaque table dès sa création. Rangez la clé secrète dans les variables d'environnement de votre hébergeur. Et passez sur la formule payante dès que l'outil entre réellement en service, pour les sauvegardes autant que pour l'absence de mise en pause.

Le reste s'apprend en marchant. Si vous préférez cadrer le besoin avant d'écrire la première table, notre audit IA sert exactement à ça, trier ce qui mérite un outil sur mesure et ce qui se règle avec un abonnement existant.

Questions fréquentes

Supabase, c'est quoi exactement ?

Supabase est une plateforme qui fournit la base de données d'une application web, ainsi que la gestion des comptes utilisateurs, le stockage de fichiers et les règles d'accès. Elle repose sur PostgreSQL, une base de données libre utilisée depuis plus de vingt-cinq ans. Pour une entreprise, l'intérêt est de disposer de ces briques sans administrer de serveur et sans équipe d'infrastructure dédiée.

Faut-il savoir coder pour utiliser Supabase ?

Pour créer un projet, poser des tables et activer les protections, non. Tout se fait dans une interface web avec des formulaires. Pour brancher ces tables à un outil métier, il faut du code, mais ce code se fait écrire en langage naturel par un assistant de développement. Ce qui ne se délègue pas, ce sont les décisions de structure et d'accès, et c'est précisément l'objet de ce tutoriel.

Les données d'un outil interne sur Supabase restent-elles en Europe ?

Cela dépend d'un réglage posé à la création du projet, et il ne se change plus ensuite. Si vous choisissez une région spécifique comme Paris, Francfort ou l'Irlande, la base reste dans l'Union européenne. Si vous laissez la région générale Europe, l'éditeur précise qu'elle couvre aussi Londres et Zurich, hors Union. Son registre de sous-traitants, daté de juin 2026, n'indique par ailleurs aucun pays pour les 24 entités listées.

Le plan gratuit de Supabase suffit-il pour un outil d'entreprise ?

Pour une maquette ou un essai, oui. Pour un outil en service, non, et pour deux raisons relevées en octobre 2026 sur la grille officielle. Les projets gratuits sont mis en pause après une semaine sans activité, ce qui éteint un outil utilisé une fois par mois. Et la formule gratuite ne comprend aucune sauvegarde, donc une suppression accidentelle est définitive. La formule Pro démarre à 25 dollars par mois et par projet.

Quel est le risque principal d'un outil interne mal configuré ?

Une table laissée sans politique d'accès. La clé publique de l'outil vit dans le navigateur de chaque utilisateur et n'importe qui peut la lire. Sans politique posée sur la table, cette clé permet de lire et de modifier toutes les lignes. La vulnérabilité CVE-2025-48757, publiée en mai 2025 et notée 9,3 sur 10, décrit exactement ce scénario sur plus de 170 applications générées par un assistant de création.

À lire ensuite

Tous les articles →
OutilsFenêtre de navigateur en argile claire qui décolle d'un socle rond, reliée par un câble coral à un petit serveur sombre

Déployer sur Vercel un site fait avec l'IA : le tutoriel complet

Rédigé par Louis Graffeuil
OutilsClaude Code sans coder : illustration d'une demande en langage courant transformée en livrable

Claude Code sans coder : du besoin métier au livrable

Rédigé par Louis Graffeuil
OutilsEnveloppe posée sur un bloc de tri sombre d'où partent trois câbles vers trois bacs

Tutoriel n8n : automatiser le tri des mails entrants d'une PME

Rédigé par Louis Graffeuil