Progetti
BarbierItalia: perché il gestionale e il sito del salone sono lo stesso prodotto
Un salone perde prenotazioni per due motivi banali: nessuno risponde al telefono mentre si lavora, e chi cerca un barbiere alle undici di sera non trova un modo per fissare l'appuntamento. BarbierItalia parte da qui e arriva a una scelta di prodotto poco ovvia: l'agenda del salone e il sito del salone sono la stessa cosa, invece di due strumenti da tenere allineati a mano.
Il costo nascosto delle prenotazioni prese al telefono
Il telefono suona mentre l'operatore ha le mani sulla testa di un cliente. Rispondere significa fermarsi e far aspettare chi è sulla poltrona. Non rispondere significa affidarsi al fatto che quella persona richiami. Non esiste una terza opzione, e la scelta si ripete decine di volte in una giornata piena.
Poi c'è il problema della memoria. Una prenotazione presa a voce va scritta da qualche parte: un quaderno, un'agenda cartacea, un foglietto che qualcuno trascriverà più tardi. Ogni passaggio è un punto in cui entrano il nome sbagliato, l'orario sbagliato o l'operatore sbagliato. Le doppie prenotazioni nascono raramente dalla distrazione: nascono soprattutto dal fatto che due persone scrivono sullo stesso foglio in momenti diversi, senza vedere quello che ha appena scritto l'altra.
Dal lato del cliente il vincolo è speculare. Il salone è aperto negli orari in cui il cliente lavora. La voglia di prenotare arriva la sera, la domenica, durante una pausa. In quel momento il telefono del salone non risponde e la prenotazione non avviene: viene rimandata, e spesso dimenticata.
La prenotazione online toglie di mezzo le chiamate di routine, quelle che chiedono soltanto un orario libero, e lascia al telefono le cose che meritano una voce umana: un cambio dell'ultimo minuto, una richiesta particolare, un cliente storico che vuole parlare con il suo barbiere. Il guadagno reale sta qui, nelle mani che restano libere per il lavoro sulla poltrona.
Scheda dentro un portale o indirizzo proprio del salone
Dentro un portale di prenotazioni un salone è una riga in una lista. Sta accanto ai concorrenti della stessa via, compete per la posizione e, quando porta i propri clienti su quella pagina, sta portando traffico a un catalogo dove esistono anche gli altri. Funziona per farsi scoprire da chi non ti conosce. Funziona molto meno per chi ti conosce già.
Per questo BarbierItalia tiene separate due funzioni che di solito vengono confuse. La directory pubblica serve alla scoperta: chi cerca un barbiere in una città nuova non ha un nome in testa, ha una zona e un orario. Lì hanno senso la ricerca per città o per prossimità, il listino, gli orari, gli operatori e le recensioni. Le città su cui stiamo lavorando in questa prima fase sono Roma, Milano, Napoli, Torino, Palermo, Genova, Bologna, Firenze, Bari e Catania.
Chi invece ti conosce cerca il tuo nome. Quella persona deve atterrare su un indirizzo che è tuo, nomeSalone.barbieritalia.it, con le tue foto, il tuo listino e il pulsante Prenota in evidenza. Nessun confronto con il salone accanto, nessuna lista in cui perdersi.
La differenza vera sta sul piano tecnico, prima che su quello estetico. Il modello diffuso è sito vetrina più widget di prenotazione: due sistemi, due fonti di verità, e un giorno gli orari sul sito non coincidono più con quelli dell'agenda perché qualcuno ha aggiornato uno solo dei due. Qui il sito è una vista del gestionale. Il listino pubblicato è il listino su cui si prenota. I turni mostrati sono i turni salvati nel pannello. Non esiste una sincronizzazione da mantenere, perché non ci sono due copie del dato.
Il motore di disponibilità: perché una griglia fissa produce buchi e sovrapposizioni
Gli orari disponibili hanno l'aspetto di un elenco. Nascono in realtà da una sottrazione fatta al volo: il turno dell'operatore scelto, meno gli appuntamenti già confermati, meno le chiusure, il tutto filtrato dalla durata effettiva del servizio richiesto. Tutti e quattro gli elementi pesano sul risultato, e togliere il quarto è l'errore più comune.
Ipotizziamo la classica griglia fissa di mezz'ore. Un taglio dura venti minuti: prenotato alle nove, la griglia libera lo slot successivo alle nove e mezza e i dieci minuti in mezzo spariscono. Una regolazione di barba da un quarto d'ora ne brucia quindici. Un colore da cinquanta minuti sta peggio: o occupa due caselle e ne spreca dieci, oppure la casella delle nove e mezza risulta libera mentre l'operatore è ancora occupato, e a quel punto la doppia prenotazione è dentro il sistema, non più sul quaderno.
Il secondo elemento è l'operatore. La disponibilità si misura sulla singola persona che esegue il servizio. Ognuno ha i suoi giorni, il suo orario, la sua pausa. Se il cliente sceglie chi lo serve, il calcolo va fatto sul turno di quella persona; se non sceglie, va costruita l'unione delle disponibilità di chi può eseguire quel servizio, che è un'operazione diversa e più costosa.
Il terzo elemento sono le chiusure. Giorno di riposo settimanale, festività, ferie, chiusura anticipata, un pomeriggio bloccato per un corso. Nel mestiere fanno parte della normalità: devono pesare quanto un appuntamento nel calcolo, senza correzioni manuali caso per caso.
C'è poi il bordo della giornata, che quasi nessuna griglia fissa gestisce bene. Un servizio da cinquanta minuti non può iniziare venti minuti prima della chiusura. La griglia fissa mostra quello slot come libero perché la casella esiste; il calcolo per durata lo scarta perché il servizio non ci sta dentro.
L'ultimo punto si scopre in produzione. La lista di orari che il cliente vede è una fotografia scattata quando la pagina si è aperta. Fra quella fotografia e il tocco su Conferma passano minuti, a volte molti. Se il controllo avviene solo in lettura, due clienti che stanno guardando la stessa pagina prendono lo stesso orario. La disponibilità va quindi ricalcolata anche al momento della scrittura, con la conferma che fallisce in modo esplicito se nel frattempo lo spazio si è chiuso. La regola che ci siamo dati è semplice: la disponibilità si ricalcola sempre a partire dai dati di base, senza mai essere salvata come stato.
Il beneficio di tutto questo si vede sull'agenda a fine giornata. Gli orari proposti si agganciano alla coda degli appuntamenti già presi invece che alla mezz'ora tonda, e la giornata si compatta invece di riempirsi di frammenti da dieci minuti che nessun servizio potrà mai occupare.
Prenotare senza account, disdire con un link firmato
Ogni campo obbligatorio in un modulo di prenotazione è una porta da cui qualcuno esce. La registrazione è la porta più larga: chiede una password da inventare, una email da verificare e un consenso da leggere, tutto prima di aver ottenuto qualcosa. Per un taglio di capelli è uno scambio sproporzionato.
Tre campi bastano
Nome, cognome e telefono. Sono i dati che servono davvero al salone per riconoscere chi arriva e per chiamarlo se qualcosa cambia. Tutto il resto è raccolta di informazioni che nessuno userà.
La password è un costo che paga il cliente
Chi prenota due volte l'anno non ricorda la password. La recupera, oppure abbandona. Il recupero password è la funzione più usata dei sistemi che nessuno voleva usare.
Il link di disdetta al posto dell'account
Alla conferma viene generato un link unico per quella prenotazione. Chi lo possiede può disdire quella prenotazione e nessun'altra. Non c'è un'area riservata da proteggere, non c'è una credenziale da recuperare, e la disdetta resta a un tocco di distanza dentro il messaggio di conferma.
Meno dati raccolti, meno dati da proteggere
La minimizzazione è insieme un principio del GDPR da citare nell'informativa e una scelta architetturale: quello che non conserviamo non possiamo perderlo, e l'informativa di un sistema che tiene tre campi si scrive in una pagina.
Le mancate presenze restano tracciate lo stesso
Senza account, l'identità del cliente è il numero di telefono. L'anagrafica del pannello ricostruisce da lì lo storico delle visite e delle assenze, che è poi l'informazione per cui il salone tiene davvero un archivio.
Lo stesso principio in un altro settore
Su Beachfy, la piattaforma per stabilimenti balneari a cui stiamo lavorando, la prenotazione dell'ombrellone segue la stessa logica: nessuna registrazione obbligatoria e un codice della forma BCH- che vale come biglietto digitale e come chiave per ordinare al bar. Quando la prenotazione è occasionale, l'account diventa quasi sempre un ostacolo travestito da servizio.
Il sito per barbershop su sottodominio e i quattro preset
Ogni salone abbonato riceve un sito completo al posto di una semplice pagina profilo. La personalizzazione passa dal pannello e resta dentro confini scelti in fase di progetto.
Un indirizzo riconoscibile
nomeSalone.barbieritalia.it. È un indirizzo da scrivere sull'insegna, da mettere nella biografia di Instagram e da dettare al telefono senza doverlo compitare tre volte.
Il pulsante Prenota è integrato nel prodotto
Non porta a un servizio esterno con un'altra grafica e un'altra intestazione. Apre lo stesso motore di disponibilità che alimenta l'agenda interna del salone.
Personalizzazione dal pannello
Colori, carattere, raggio degli angoli e ordine delle sezioni si cambiano da un'interfaccia, senza toccare una riga di codice e senza chiedere un intervento a noi.
Quattro preset di partenza
Classico, Elegante, Moderno e Deciso. Servono a dare un punto di partenza coerente a chi non ha voglia di scegliere quindici valori diversi, e a evitare il risultato tipico degli editor completamente liberi: testo grigio chiaro su fondo bianco.
Vincoli scelti di proposito
I parametri esposti sono pochi per scelta. Contrasto, leggibilità e comportamento su schermo piccolo restano garantiti in tutte le combinazioni possibili, perché le combinazioni possibili sono un insieme finito che abbiamo potuto verificare.
App mobile white-label
Per il singolo salone è prevista un'app mobile con il proprio nome, per i clienti che preferiscono un'icona sulla schermata iniziale a un indirizzo da digitare.
Il pannello di gestione, pensato prima per il telefono
Un gestionale per barbieri non si usa seduti a una scrivania. Si usa in piedi, con una mano, fra un cliente e l'altro, spesso con il telefono appoggiato al ripiano. Per questo abbiamo costruito l'interfaccia partendo dallo schermo piccolo, allargandola solo dopo.
Agenda multi-operatore
La giornata di tutti gli operatori sullo stesso schermo, perché il carico si sposta da una postazione all'altra e serve vederlo insieme.
Listino con prezzi e durate
La durata è il parametro che il motore usa per decidere quali orari mostrare: sbagliarla di dieci minuti si vede subito sull'agenda della settimana.
Turni
Orari e giorni per singolo operatore, con le chiusure. È la base della sottrazione da cui nasce ogni slot proposto.
Anagrafica clienti
Storico delle visite e delle mancate presenze. Quando un nome torna, il salone sa già se è la terza volta che non si presenta.
Panoramica giornaliera
Appuntamenti previsti e incasso atteso della giornata, per capire a colpo d'occhio come sta andando senza aprire un foglio di calcolo.
Il modello commerciale, senza percentuali nascoste
La parte economica di un software per barbieri conta quanto le funzioni. Un canone prevedibile e una commissione su ogni prenotazione producono comportamenti opposti nel salone che li subisce.
| Voce | Come funziona |
|---|---|
| Canone | 29 euro al mese oppure 249 euro all'anno |
| Commissioni sulle prenotazioni | Nessuna, indipendentemente dal numero di appuntamenti |
| Prova | 30 giorni, senza inserire una carta |
| Pagamento dell'abbonamento | Stripe, con portale di fatturazione per fatture e disdetta autonoma |
| Incasso della prestazione | Resta al salone: la piattaforma non incassa per conto tuo |
| IVA | Non applicata, regime forfettario |
Le scelte tecniche e il motivo di ognuna
Nessuna di queste scelte è stata fatta perché la tecnologia era interessante. Ognuna risolve un vincolo preciso del prodotto.
Next.js con App Router e Turbopack
Le pagine della directory e i siti dei saloni devono essere indicizzabili e veloci alla prima visita, perché è lì che arriva chi cerca un barbiere in una città. Il rendering lato server dà pagine complete ai motori di ricerca, e la stessa applicazione serve tutti i sottodomini senza duplicare un progetto per salone.
Tailwind v4
I preset di stile diventano insiemi di variabili, non fogli di stile separati da mantenere. Aggiungere un preset significa aggiungere valori, non copiare un tema.
Firebase per autenticazione e archiviazione
L'accesso dei gestori e le immagini caricate dai saloni stanno su servizi gestiti. Preferiamo spendere il tempo sul motore di disponibilità, che è la parte in cui il prodotto si gioca davvero, e non su un sistema di login riscritto da zero.
Stripe con portale di fatturazione
Abbonamenti, fatture, cambio di piano e disdetta passano dal portale di Stripe. Il salone disdice da solo, senza scriverci una email e senza aspettare una risposta. Riscrivere questa parte in casa sarebbe stato lavoro puro senza alcun vantaggio per chi paga.
reCAPTCHA sul modulo di prenotazione
Un modulo pubblico che non richiede account è un bersaglio naturale per l'invio automatico. Senza una barriera, l'agenda di un salone si riempie di appuntamenti falsi in una notte.
CSP e HSTS con preload
Il sito del salone gira su un sottodominio condiviso con quelli degli altri saloni. Una politica sui contenuti restrittiva e il traffico forzato su HTTPS sono il minimo in un ambiente multi-tenant, dove un problema su un cliente non deve toccare gli altri.
PWA
Il pannello si installa sul telefono dell'operatore e si apre come un'applicazione, senza passare dal browser e senza pubblicare un aggiornamento sugli store a ogni correzione.
Domande frequenti sul gestionale per barbieri
Sì. Agenda, listino, turni e anagrafica funzionano da soli, e il salone resta comunque prenotabile dalla directory pubblica. Il sito su sottodominio è incluso nell'abbonamento, quindi lasciarlo spento significa rinunciare a qualcosa che stai già pagando.
Partendo dal turno dell'operatore scelto, sottraendo gli appuntamenti già confermati e le chiusure, e filtrando il risultato con la durata effettiva del servizio richiesto. Non esiste una griglia fissa di mezz'ore: un servizio da venti minuti libera l'orario dopo venti minuti, e un servizio lungo non viene proposto se non entra prima della chiusura.
No. Servono nome, cognome e numero di telefono. Alla conferma riceve un link personale con cui può disdire quella prenotazione, senza password e senza area riservata.
No. Il costo è il canone di 29 euro al mese o 249 euro all'anno, con IVA non applicata per regime forfettario. Il denaro della prestazione lo incassa il salone come ha sempre fatto: la piattaforma non fa da intermediario sui pagamenti dei clienti.
Al momento no: l'indirizzo è nomeSalone.barbieritalia.it. È un limite che dichiariamo apertamente sul sito del prodotto, insieme ai promemoria disponibili solo via email e all'export clienti su richiesta.