Un CRM per una rete commerciale sul territorio smette di essere utile molto prima di quanto sembri. Finche' lavori su pochi account, bastano pipeline, note e bigliettini promemoria. Quando invece devi coprire centinaia o migliaia di saloni, distribuire la responsabilità tra Area Manager e agenti, pianificare visite per CAP e Comune, e distinguere in pochi secondi tra attivo, inattivo, pratica legale o primo contatto, la tabella si rompe. Serve una mappa, o ancora meglio: serve un CRM territoriale.
Questo è il contesto del progetto che stiamo impostando con Framesi, storica azienda italiana del canale professionale haircare, usando Twenty come base CRM open source e aggiungendo il livello che a Twenty, da solo, manca: GIS, cartografia operativa, geocodifica, filtri territoriali e permessi basati sull'area di competenza.

Perchè il desiderio di Framesi non può essere un CRM qualsiasi
Dalle ultime richieste operative che abbiamo raccolto il quadro è chiaro. La rete commerciale vuole partire da una mappatura completa delle licenze presenti sul territorio, importarle automaticamente, e poi aggiornarle man mano che il rapporto con il salone evolve. Fin qui nulla di strano.
Il punto e' che qui il dato geografico non e' un dettaglio accessorio, ma il centro del lavoro quotidiano.
Le esigenze espresse da Framesi sono tipiche di un prodotto che viene proposto a una rete commerciale distribuita sul territorio:
- stati cliente gestibili in modo dinamico, con spazio per molti piu' casi di un piccolo elenco chiuso di 3 o 4 etichette;
- visibilita' diversa tra Area Manager e agente, con accesso solo alla propria area di competenza quando serve;
- scheda salone con agente assegnato, ultima visita, prossima visita, note e dati commerciali;
- filtri rapidi per stato, agente, CAP, Comune e Provincia;
- pianificazione visite partendo dalla geografia reale, non da una tabella ordinata alfabeticamente.
Se togli la mappa da questo problema resta un CRM monco. Il commerciale sul territorio non ragiona per riga, ragiona per itinerario, cluster, densità commerciale, sovrapposizione di zone, prossimità tra punti visita.
Perche' partire da Twenty, e non riscrivere tutto da zero
Anche qui abbiamo preferito i fatti al folklore.
Le informazioni più utili sono queste:
- Twenty è un CRM open source, alternativa aperta a Salesforce;
- il progetto è pensato per team tecnici che vogliono costruire o estendere un CRM come estenderebbero il resto del proprio stack;
- la documentazione ufficiale espone un modello di estensione basato su oggetti, campi, viste, layout, componenti React, funzioni di logica server-side, skill e agenti;
- il prodotto può essere usato in cloud oppure self-hosted;
- il repository pubblico, al momento della nostra verifica del 28/07/2026, mostrava 53,8 mila stelle, 8,2 mila fork e 713 contributori, un segnale concreto di adozione e vitalita' del progetto;
- lo stack pubblico e' moderno e riconoscibile: TypeScript, React, NestJS, PostgreSQL, Redis.

Questo rende Twenty una base molto interessante per un progetto come Framesi. Non perchè faccia tutto da solo ma, al contrario, perchè fa bene la parte di base sulla quale costruire sopra.
Autenticazione, permessi, modello dati CRM, viste, workflow e oggetti custom sono tutte cose che non ha senso ricostruire da zero se esiste già una piattaforma aperta, estendibile e self-hostabile che le risolve in modo serio.
Dove Twenty si ferma
Qui serve un po' di onestà tecnica. Twenty non nasce come piattaforma geospaziale. Per il caso Framesi, il nucleo CRM di Twenty va esteso con un livello specialistico che gestisca:
- geocodifica e normalizzazione degli indirizzi dei saloni;
- arricchimento territoriale automatico con CAP, Comune, Provincia e coordinate;
- rappresentazione cartografica performante di migliaia di punti;
- filtri spaziali e filtri amministrativi combinati;
- perimetri di competenza di agenti e Area Manager;
- pianificazione visuale delle visite e lettura operativa dello stato commerciale sul territorio.
Questa parte non la risolvi con un plugin generico. Serve una dorsale geospaziale vera, con database territoriale, API ad hoc e interfaccia mappa costruita per il caso d'uso: le nostre specialità.
Cosa stiamo costruendo nel progetto
L'architettura che stiamo impostando per Framesi puo' essere letta come somma di due strati.
Il primo e' il cuore CRM, dove Twenty ha molto senso:
- oggetto salone con campi custom;
- gestione utenti e ruoli;
- viste elenco e schede record;
- automazioni di base e storico attivita';
- estendibilita' futura senza lock-in proprietario.
Il secondo e' il livello territoriale, che e' quello che rende il progetto davvero diverso:
- import automatico della base saloni e licenze sul territorio;
- classificazione iniziale nello stato "Da sviluppare";
- stati operativi espandibili in autonomia con nome, colore e icona;
- mappa con filtri per stato, agente, CAP, Comune, Provincia;
- scheda salone con visite, note, agenda commerciale e assegnazioni;
- visibilità completa per Area Manager e visibilità limitata alla propria area per l'agente.
In altre parole, non stiamo aggiungendo una mappa a un CRM. Stiamo trasformando un CRM in uno strumento quotidiano di presidio commerciale del territorio.
Architettura applicativa
Il modo corretto di impostare un progetto del genere, secondo noi, è separare con chiarezza ciò che appartiene al CRM e ciò che appartiene al GIS.
Twenty resta il sistema di record per entità, attività, relazioni e permessi applicativi. Il layer geospaziale si occupa invece di ingestione dati territoriali, geocodifica, arricchimenti amministrativi, query spaziali e rendering cartografico.
Detto in modo più concreto:
- Twenty gestisce utenti, schede cliente, campi custom, workflow, viste, cronologia commerciale.
- PostgreSQL/PostGIS gestisce geometrie, filtri spaziali, CAP, Comuni, Province, assegnazioni territoriali e future analisi geografiche.
- Il frontend custom con mappa rende operativa la cartografia, dentro o a fianco del workspace CRM.
- I connettori di ingestione caricano e aggiornano la base di licenze e saloni, evitando caricamenti manuali fragili.
Questo approccio è più semplice del riscrivere tutto. Ma è anche più serio del limitarsi a configurare un CRM standard e sperare che il territorio si adatti.
In pratica, la parte che oggi Twenty presenta bene in forma tabellare e di workspace applicativo è un ottimo punto di partenza. Il salto che stiamo progettando per Framesi consiste nell'agganciare quella base a una mappa che diventa il posto principale in cui la rete commerciale legge il territorio e decide la giornata.
La parte interessante
Il caso Framesi non vale solo per il beauty professionale. Vale per qualsiasi organizzazione che abbia rete fisica, presidio locale e forza vendita distribuita:
- franchising;
- reti di agenti;
- assicurazioni con logica territoriale;
- utility e servizi sul campo;
- distribuzione B2B;
- field service commerciale.
In tutti questi casi, il salto non è "comprare un CRM". Il salto è avere un sistema che unisce workflow commerciale e geografia operativa.
Se una piattaforma non ti fa vedere in dieci secondi quali clienti sono attivi in un CAP, quali sono da ripassare nel Comune accanto e quali agenti hanno scoperture territoriali, quella piattaforma sta lasciando opportunità nel dimenticatoio.
Perchè per noi questo progetto è interessante
Ci sono progetti in cui il dato geografico serve a fare scena. Qui serve a lavorare meglio.
È un caso d'uso pulito: una rete commerciale reale, un'organizzazione italiana con processi concreti, una base open source sensata come Twenty, e un gap evidente che può essere colmato solo con sviluppo su misura e competenza GIS, nessuna fuffa, nessun concetto vago di trasformazione digitale.
Solo una domanda: come facciamo a far lavorare meglio una rete vendita che si muove davvero sul territorio?
La risposta, in questo caso, passa da qui.
Se stai valutando un progetto simile, trovi qui la pagina dedicata ai nostri servizi di sviluppo software su misura e qui una riflessione più ampia su quando conviene costruire una piattaforma su misura invece di adattare un SaaS.
Domande frequenti
Twenty ha già una mappa pronta per una rete vendita territoriale?
No, non nel senso richiesto da un caso come Framesi. Twenty copre bene oggetti, viste, permessi e logica CRM, ma la parte cartografica, geospaziale e di analisi territoriale va aggiunta con sviluppo dedicato.
Perché non usare direttamente Salesforce o HubSpot?
Si può, ma qui il punto è un altro: controllare il modello dati, evitare lock-in, poter self-hostare quando serve e aggiungere estensioni tecniche con stack noto. Twenty è interessante proprio per questo.
Quali dati territoriali servono davvero a un CRM di questo tipo?
Coordinate, CAP, Comune, Provincia, eventuali perimetri di competenza, stato commerciale del punto vendita e storico operativo. Senza questi campi, il territorio resta un testo libero.
Un agente deve vedere tutto il database?
Non necessariamente. In molti casi, come quello discusso con Framesi, ha senso che l'Area Manager abbia visibilità ampia mentre l'agente veda e gestisca soltanto la propria area o i saloni assegnati.
Questo approccio vale solo per il beauty professionale?
No. Vale per qualunque organizzazione con rete commerciale fisica e logica territoriale: franchising, assicurazioni, distribuzione, field service, reti tecniche, canali partner.
Ringraziamenti
Un grazie a Raffaele Sansone, nostro contatto in Framesi, per il confronto operativo e per la chiarezza con cui ha messo sul tavolo i bisogni reali della rete commerciale. Un grazie anche a Framesi e a Twenty per il supporto e per il contesto che rende possibile costruire un CRM territoriale serio, invece di fermarsi all'ennesima personalizzazione superficiale di un gestionale generico.
