I dati, e cosa ne facciamo

Abordocampo · aggiornata il 29 ottobre 2026
Nessun cookie di tracciamento. Nessun tracciatore. Nessun tracciatore e nessuna pubblicità: sulle pagine pubbliche contiamo le visite con Vercel Web Analytics, senza cookie e senza riconoscere la persona; nell’app e nella pagina della società non c’è. Per questo non trovi un banner da chiudere: non c’è niente da acconsentire. Quello che il sito ricorda — che sei entrato, se preferisci la vista chiara o scura, i gol che non sono ancora partiti — sta nel tuo telefono e non arriva a noi. L’unico cookie è quello tecnico dell’hub delle guide (/hub, si chiama hub): tiene aperta la porta a chi ha scritto la password o ha aperto il suo link, per sei mesi, solo lì; contiene una firma, non un dato personale, e non serve a riconoscerti altrove. È un cookie necessario al servizio che hai chiesto, e per questo non vuole un consenso. Lo stesso vale per il cookie demo del sito di prova (prova-bordocampo.vercel.app), che si apre con un codice: una firma, sei mesi, solo lì. Dal 27/10/2026 c’è anche il cookie tecnico della sessione (si chiama adc_ e un codice): quando entri, la password non resta nel telefono, dove uno script potrebbe leggerla, ma chiusa e cifrata in questo cookie, che nessuno script può leggere e che viaggia solo verso il nostro sito. Dura sei mesi, si spegne quando esci, e smette di aprire se la password cambia o l’accesso viene tolto. Anche questo è necessario al servizio che hai chiesto (restare dentro) e non vuole un consenso. Le visite delle pagine pubbliche (questa vetrina, non l’app) le contiamo con Vercel Web Analytics: nessun cookie, nessun identificativo della persona (un’impronta che cambia ogni giorno e non si rilegge), solo quante pagine e da dove. Nell’app e nella pagina della società non c’è.

Questa pagina non è un modulo legale copiato: descrive quello che il prodotto fa davvero, e per ogni cosa dice dove sta scritta nel codice. Se una frase qui dentro non fosse vera, sarebbe un difetto da correggere — non una formula da sistemare.

Di chi sono i dati

Di ogni società i suoi. Una società che entra qui porta i nomi dei suoi tesserati, le sue domeniche e le sue foto, e nessun’altra società li vede: ogni annata sta in uno spazio separato del database, non in una tabella comune con una colonna che dice di chi è. Un tenant è uno schema Postgres a sé — tenant.js, suSchema()

Dove stanno

In Irlanda, nella regione eu-west-1 di Supabase. La scelta è stata fatta per questo motivo: i dati di bambini italiani restano in Europa. db.js — la connessione a Supabase, regione eu-west-1; vercel.json — regions: dub1

La copia di sicurezza. Ogni trenta minuti un nostro server in Italia (un VPS di Aruba) legge il database con un accesso di sola lettura, ne fa una copia compressa e la mette in un secondo spazio Supabase nostro, privato, sempre in Irlanda. Sul server la copia passa e basta: finito il giro non ne resta niente. Teniamo le copie delle ultime 24 ore, poi una al giorno per 14 giorni; poi si cancellano da sole. strumenti/copia-ogni-trenta.mjs — il giro; ruolo copia_lettura — solo SELECT; secchio privato copie-database

L’app sul telefono, e le notifiche

L’app degli store è lo stesso sito dentro un guscio: i dati stanno dove stanno per il sito, e sul telefono resta solo il tuo accesso (la password, o il link). Se accendi le notifiche, il telefono ci dà un identificativo del dispositivo, che non dice chi sei: lo teniamo per mandarle e lo cancelliamo quando esci o elimini l’accesso. Le notifiche passano dai servizi di Google (Android) e Apple (iPhone), e per questo non contengono mai il nome di un bambino: dicono che c’è una convocazione o un gol, e il resto si legge nell’app. Il tuo accesso lo elimini dall’app, dalla campanella: come si fa. dispositivi.js — l’identificativo, tolto all’uscita; push.js — i testi, senza nomi di persone; accessi.js — togliMe

Le password non si rileggono, nemmeno da qui

Nel database non c’è nessuna password: c’è solo la sua impronta, diversa per ognuno anche a parità di password. Vuol dire una cosa concreta e scomoda anche per noi: una password dimenticata non si recupera, se ne assegna una nuova. Nessuno qui dentro può leggere la tua. accessi.js — crypto.scryptSync(pw, sale, 32)

Le foto dei bambini

Stanno in un deposito privato, non raggiungibile da chi non ha il permesso. Gli indirizzi per vederle li firma il server a ogni visita e scadono dopo sei ore (la scadenza del link non cancella una copia già salvata da chi l’ha aperto): un link copiato oggi domani non apre niente. foto.js — DURATA_FIRMA = 6 * 60 * 60

E di ogni bambino la società registra se le sue foto si possono pubblicare: non una casella, ma il modulo firmato da chi esercita la responsabilità genitoriale, mandato dalla famiglia dal suo link o caricato dalla pagina della società, e conservato come copia nello stesso deposito privato. Vale solo dopo che qualcuno della società ha visto la firma. Le foto sono della giornata, non del singolo bambino, quindi non c’è un filtro che tolga un viso da una foto di gruppo: chi non ha il consenso lo vede la società prima di caricare, nell’elenco «I consensi foto», ed è lei a decidere cosa pubblicare. cruscotto.js — senza_consenso: si conta e si segnala; un consenso arrivato dalla famiglia e non ancora visto conta come mancante; foto.js non lo guarda

Quando il consenso si firma nell’app o dal link, con la firma restano chi ha firmato e in che veste, la data e l’ora, il testo firmato con la sua impronta, l’indirizzo IP e il tipo di telefono: sono la prova che quella firma è stata data da quella persona, e la ricevuta in PDF li riporta tutti. Una risposta non si cancella: se cambi idea se ne scrive un’altra, e vale l’ultima. visita.js — firmaPer: x-forwarded-for, user-agent, impronta; tabella consensi nel registro

Chi tiene la piattaforma conta, non legge

Noi teniamo il portale di sopra. Da lì vediamo quante persone ha una società, quanti tornei, quanti certificati in scadenza. Non vediamo un nome. Non è un filtro che qualcuno potrebbe dimenticare: è che quelle query non leggono quelle colonne, e una funzione toglie comunque i nomi da quello che passa di lì. cruscotto.js — senzaNomi(), e le query che contano senza selezionare

Quando serve assistenza si entra dalla porta della società, con una sessione che dura mezz’ora — e quell’ingresso resta scritto nel registro della società, che la società può sempre leggere. Non chiediamo mai a nessuno la sua password.

Il link pubblico di un torneo

Una società può condividere il programma di un torneo con un link che apre chiunque. Dentro non c’è un solo bambino: squadre, orari, campi, risultati, classifica. Niente marcatori, niente convocati, niente foto, niente nomi. Anche qui non è un filtro: sono quali tabelle si leggono, e quelle dei bambini non vengono toccate. pubblico-torneo.js — legge eventi, partite, tabellone; non tocca persone né convocazioni

Per le categorie di base — Piccoli Amici, Primi Calci, Pulcini, Esordienti — la FIGC chiede che i risultati e le classifiche non si pubblichino. Lo decide la società, annata per annata, con una levetta sola che vale per le famiglie, per il link pubblico e per la TV: è lei a rispondere del comunicato, e lo legge accanto alla levetta e ogni volta che condivide il link di un torneo. Spenta, il link mostra squadre, campi e orari e basta. categoria.js — CU n. 2 FIGC-SGS 2026/27, pag. 12 e 13; pubblico-torneo.js — senzaRisultati; vetrina_annate nel registro

Del certificato medico la società tiene la copia, e la tiene lei

Il certificato del medico è un documento sanitario di un minore. Fino al 30 settembre 2026 ne entrava la data e basta; dal 1° ottobre la famiglia manda la foto del certificato (o il PDF) dal suo link, oppure la carica la segreteria, e la società ne tiene la copia nel suo deposito privato: gli stessi indirizzi firmati a sei ore delle foto, visibili a chi ha la password della pagina della società. Dal link della famiglia la copia non si riapre: chi ha il link vede il nome del bambino, la data, e che la copia è arrivata. Accanto resta scritto chi l’ha mandata e chi, nella società, l’ha vista. Finché la società non l’ha vista, il bambino non è convocabile: la data dichiarata dalla famiglia da sola non basta. Quando arriva un certificato nuovo, la copia vecchia si toglie. allegati.js — il deposito; visita.js — la porta della famiglia; anagrafe_documenti.file nel registro

Cosa non c’è, per scelta

Quello che il tuo telefono ricorda

Nel browser restano poche cose, e ci restano perché il servizio che hai chiesto funzioni: il nome utente e la password con cui sei entrato — o il lasciapassare dell’invito, se sei entrato da un link — così non la ribatti ogni weekend; il bambino che hai scelto in «di chi sei la famiglia?»; la vista chiara o scura; i gol che non sono ancora partiti quando al campo manca la rete; quali avvisi hai già letto e le ultime scelte fatte nelle grafiche. Non sono cookie, non viaggiano, e spariscono con «esci» o cancellando i dati del sito.

Le notifiche sul telefono

Partono solo se le accendi tu, dalla campanella, e il telefono ti chiede il permesso. Da quel momento il server tiene l’indirizzo di consegna che il tuo browser gli dà (una stringa senza il tuo nome), e ogni avviso passa dal servizio di notifiche del tuo telefono — Google (Android e Chrome), Apple (iPhone, dall’app sulla schermata Home), Mozilla (Firefox). Il messaggio viaggia cifrato: quel servizio vede che ti è arrivato qualcosa, non cosa dice. Si spengono dalla stessa campanella, e un telefono che non risponde più si dimentica da solo. push.js — web-push con chiavi VAPID; push_iscrizioni nell’annata; sw.js non ha nessun fetch: niente copie

Chi altro tocca i dati

Cinque fornitori per i dati, più i servizi di notifica del tuo telefono e, quando acceso, Stripe per i pagamenti; tutti per nostro conto. Supabase (Supabase Inc., USA) ospita il database in Irlanda, e le copie di sicurezza: come ogni fornitore di hosting può tecnicamente accedere ai byte che custodisce. Aruba (Aruba S.p.A., Italia) ospita il server che fa la copia ogni trenta minuti: i dati ci passano, non ci restano. Vercel (Vercel Inc., USA) serve le pagine da Dublino e, come ogni server, vede l’indirizzo IP di chi apre il sito e lo tiene nei suoi registri tecnici per qualche giorno. Resend (Resend Inc., USA) spedisce le email del servizio — la conferma dell’iscrizione, il link dei documenti a una famiglia, il codice prima di una firma, la ricevuta del consenso — e vede quindi l’indirizzo e il testo di quelle email; senza la posta configurata non parte nessuna mail. Anthropic (Anthropic PBC, USA) è il modello di intelligenza artificiale, a pagamento e con la clausola che non addestra sui dati: legge una distinta o un calendario fotografati quando qualcuno li carica (nel foglio ci sono i nomi dei convocati), e cerca sul web lo stemma di una squadra avversaria (lì passa solo il nome di un club). Si chiama solo in quei due momenti, mai sui dati dell’archivio. Niente Google Fonts, niente analytics, niente pubblicità; i servizi di notifica di Google, Apple e Mozilla sono descritti sopra. La diretta video: quando lo staff collega la diretta di una partita su YouTube e chi segue la squadra apre il Live, il video si carica da youtube-nocookie.com (Google), la forma di YouTube senza biscotti di profilazione, che vede l’indirizzo di rete di chi guarda; nient’altro dell’app ci arriva. Senza una diretta collegata non si carica niente. vercel.json — regions: dub1; posta.js — Resend via HTTP; ai.js, stemmi.js — le due chiamate al modello

Per quanto tempo restano

Finché la società esiste: sono la sua stagione. Un torneo cancellato resta nel cestino trenta giorni, poi sparisce; le copie di sicurezza dell’archivio durano anch’esse trenta giorni. Un bambino che lascia la società si spegne: esce dalla rosa, ma le domeniche in cui c’era restano com’erano; la copia del suo certificato medico e dei suoi documenti si cancella alla fine della stagione in cui è uscito (30 giugno), salvo che la società chieda per iscritto di tenerla, e un consenso alle immagini firmato resta con la sua ricevuta. Una società senza accessi da dodici mesi riceve un avviso; se nessuno entra nei dodici mesi dopo, viene cancellata per intero, avvisata trenta giorni prima. Una società che chiude viene cancellata per intero, subito, con tutte le sue annate; le copie di sicurezza spariscono entro trenta giorni, e dopo non resta niente da noi. cestino.js — GIORNI_NEL_CESTINO = 30; piattaforma.js — eliminaSocieta fa drop schema

Perché possiamo trattarli, e i tuoi diritti

I dati del servizio li trattiamo perché servono al contratto con la società (art. 6.1.b GDPR); il registro di chi ha fatto cosa, la sicurezza e il conteggio delle visite stanno sul nostro interesse legittimo a tenere il servizio sicuro e a sapere se funziona (art. 6.1.f). Li teniamo finché la società esiste; il registro dodici mesi; i dati delle fatture dieci anni. Puoi chiederci di vederli, correggerli, cancellarli, limitarli, portarli altrove e opporti: scrivi a ciao@abordocampo.it, rispondiamo entro trenta giorni. Puoi anche rivolgerti al Garante per la protezione dei dati personali (garanteprivacy.it).

Chi siamo, e a chi si scrive

Abordocampo è di Kaiser S.r.l. (Viale Abruzzi 16, 20131 Milano, P. IVA 03231690839, PEC kaisersrl@pec.it), che è il titolare del trattamento per i dati di cui sopra: quelli del servizio — gli accessi, il registro di chi ha fatto cosa, le impronte delle password, l’email di chi apre una società, la prova e i pagamenti (quando finisce la prova, fino a quando è pagato, i voucher usati).

Per i dati dei tesserati decide la società, non noi: è lei che li raccoglie, che dà gli accessi e che risponde alle famiglie. Noi teniamo lo strumento, e li trattiamo per suo conto. Se sei un genitore, la strada per sapere cosa c’è scritto su tuo figlio, correggerlo o farlo togliere è la tua società: la richiesta si fa a lei.

Dall’app e dai link personali una famiglia non cancella niente da sola. Può ritirare il consenso alle foto, e basta: il resto lo fa la società, che spegne il tesserato e toglie i documenti. Quando serve togliere anche la riga in anagrafe e le copie dei documenti, la società lo chiede a noi e lo facciamo noi, a mano. visita.js — le scritture della famiglia sono quattro: scrivi, consenso, firma, ritira; nessuna cancella

Per tutto il resto:
ciao@abordocampo.it — richieste sui dati, all’attenzione del responsabile della protezione dei dati, Roberto Ruggeri (anche via PEC: kaisersrl@pec.it)
ciao@abordocampo.it — qualunque altra cosa