Objets et champs du CRM, créés à la souris ou en TypeScript
Twenty est un CRM open source écrit en TypeScript : un serveur NestJS adossé à PostgreSQL et Redis, une interface React. L'équipe y taille son propre modèle de données, avec des objets et des champs personnalisés affichés en table, en Kanban ou en calendrier. Le README montre aussi ces objets, champs et vues déclarés dans du code avec le SDK twenty-sdk, puis publiés sur un espace de travail par la CLI twenty. Le projet résume l'idée ainsi : un CRM qu'on construit, livre et versionne comme le reste de sa stack.
Automatisations en JavaScript et courrier synchronisé sur les fiches
- Workflows : un workflow part de la création, de la modification ou de la suppression d'un enregistrement, d'un horaire, d'un clic ou d'un webhook. Ses étapes créent, modifient ou suppriment des enregistrements, bouclent sur une liste, attendent, envoient un e-mail, exécutent du JavaScript, appellent une API HTTP ou confient une tâche à un agent IA.
- Courrier et agendas : Gmail et Google Agenda, Outlook et le calendrier Microsoft, ou tout autre fournisseur par IMAP, SMTP et CalDAV. Chaque échange se range sur l'enregistrement qu'il concerne.
- API : REST et GraphQL, webhooks et serveur MCP, dans toutes les offres.
- Droits : rôles personnalisés, avec des permissions par objet et par champ.
- IA sur une instance auto-hébergée : les modèles d'OpenAI, Anthropic, Google, Mistral et xAI fonctionnent dans toutes les offres, gratuite comprise, dès que leur clé d'API est renseignée.
- Applications sous la licence de son choix : une exception ajoutée à l'AGPL laisse une application qui ne passe que par les API, les webhooks et les SDK de Twenty sous la licence voulue, propriétaire comprise. La CLI et les SDK sont sous MIT.
Gratuit sur son serveur, sauf le SSO et les journaux d'audit
L'auto-hébergement gratuit s'arrête aux fonctions de l'offre Pro. D'après la documentation de facturation, il comprend tout le contenu de Pro, avec un support limité à Discord. Le SSO (SAML 2.0, Google Workspace, Microsoft Entra ID), les permissions par enregistrement, les journaux d'audit et les espaces de travail illimités demandent une clé Organization payante, obtenue depuis le panneau d'administration. Les fournisseurs d'IA personnalisés, modèles locaux compris, ne sont gratuits que jusqu'à 25 sièges.
Le code n'est pas entièrement sous AGPL-3.0. Le fichier LICENSE place sous licence commerciale les fichiers marqués /* @license Enterprise */, dont l'usage en production suppose un abonnement Enterprise Edition. Selon la FAQ juridique, modifier Twenty pour sa propre équipe n'oblige à rien publier ; revendre une version modifiée impose d'en publier les changements ou d'acheter la licence Organization. Krayin, CRM Laravel sous MIT, n'impose pas cette publication.
Le fichier Docker Compose officiel lance quatre conteneurs. Serveur et worker partagent l'image twentycrm/twenty, à côté de PostgreSQL 16 et de Redis. La documentation demande au moins 2 Go de RAM, et PostgreSQL 15 au minimum depuis la v2.34. Perdre la variable ENCRYPTION_KEY rend illisibles les secrets stockés en base, jetons OAuth et secrets TOTP compris. Sur une instance auto-hébergée, la synchronisation Gmail passe par son propre projet Google Cloud et ses identifiants OAuth, celle de Microsoft 365 par une application Azure et une licence Microsoft 365 pour chaque utilisateur.
Le projet vise les équipes techniques et se présente comme « l'alternative ouverte à Salesforce ». Le README le destine aux équipes qui veulent bâtir un CRM sur mesure ; la page « Why Twenty » l'oppose au recours à un consultant Salesforce et à l'apprentissage d'Apex.
La v2.51.0 est sortie le 25 octobre 2026. Les versions 2.46 à 2.51 ont toutes paru entre le 12 et le 25 octobre. Depuis la v1.23, une instance peut sauter directement à la dernière version : le serveur applique les migrations au démarrage, et le guide de mise à jour demande une sauvegarde de la base avant chaque montée.
