1. Titolare del trattamento
Il Titolare del trattamento dei dati personali è:
- Nome: Michele Bogoni
- P.IVA: 04555040239
- Sede legale: Via Novella, 5/E – 37032 Monteforte d'Alpone (VR)
- Email: info@truereply.it
Per qualsiasi richiesta relativa al trattamento dei dati personali, l'utente può contattare il Titolare all'indirizzo email sopra indicato.
2. Tipologie di dati raccolti
2.1 Dati degli utenti registrati (Clienti TrueReply)
Al momento della registrazione e durante l'utilizzo del servizio, raccogliamo:
- Dati identificativi e di contatto: nome, cognome, indirizzo email e numero di telefono, lasciati all’iscrizione, al checkout o alla richiesta della demo personalizzata, e la partita IVA, se il Cliente la indica. Chi usa l’accesso gratuito li conferma nella richiesta di verifica, e un operatore usa il numero di telefono per contattarlo prima di sbloccare il numero +39 e gli invii in uscita
- Dati di autenticazione: password (hash crittografico tramite Firebase Authentication)
- Dati di fatturazione: ragione sociale, indirizzo, partita IVA, codice destinatario e telefono indicati al checkout, elaborati e conservati da Stripe Inc.; una copia resta sul profilo del Cliente per la gestione dell’account e della fatturazione. TrueReply non memorizza né ha accesso ai dati delle carte di credito
- Recapito per l’assistenza: il nome e il numero di telefono che il Cliente lascia all’assistente di supporto nella dashboard quando chiede di essere ricontattato da una persona del team. Sono conservati sul suo profilo per non doverglieli richiedere a ogni richiesta successiva, e ci vengono trasmessi solo se è lui a fornirli
- Dati di utilizzo: numero di conversazioni, messaggi, minuti voce consumati, configurazione del chatbot
- Contenuti caricati: documenti, URL e testi caricati nella knowledge base del chatbot
2.2 Dati dei visitatori dei siti dei clienti (Utenti finali del chatbot)
Quando un visitatore interagisce con un chatbot TrueReply installato sul sito di un nostro cliente, raccogliamo:
- Messaggi di chat: il contenuto della conversazione con il chatbot
- Identificativo visitatore casuale per browser: un ID casuale generato dal browser e memorizzato localmente (localStorage) per garantire la continuità della sessione
- Identificativo di sessione: un UUID casuale generato per ogni sessione di chat
- URL della pagina: la pagina web su cui si trova il visitatore al momento dell'interazione
- Tipo di dispositivo: mobile o desktop
- Dati di contatto volontariamente forniti: nome, email, telefono o altre informazioni che il visitatore sceglie di condividere durante la conversazione (lead capture)
- Dati di chiamata vocale, in entrata e in uscita (se attivo): numero del chiamante o del destinatario, data, durata, talk-time, trascrizione della conversazione, esito. La registrazione audio è trattata solo ove attiva, cioè per le chiamate con l'assistente dimostrativo del Fornitore (il numero dimostrativo, la chiamata di prova richiesta dal sito e la richiamata della demo personalizzata), in cui l'assistente informa della registrazione all'inizio della chiamata, e, nelle soluzioni su misura, ove prevista su istruzione del Titolare; per le chiamate dei Clienti delle soluzioni pronte all'uso vengono trattate solo trascrizioni e metadati (vedi la sezione 7)
- Dati delle campagne in uscita (se attivo): liste di contatti caricate dal Cliente o scelte dal Cliente fra i contatti della propria anagrafica in base allo stato, attestazioni di consenso e relativa fonte, elenchi di opt-out e di soppressione validi per l'intero account
- Messaggi WhatsApp (se attivo): contenuto dei messaggi, media, e metadati quali numeri di mittente e destinatario, data e ora, stato di consegna e lettura
- Corrispondenza email della casella collegata (se attivo): quando il cliente collega al servizio una propria casella di posta elettronica, trattiamo, dal momento del collegamento, i messaggi che vi arrivano e i messaggi che ne partono, sia quelli inviati tramite il servizio sia quelli che il cliente scrive dal proprio programma di posta: mittente e destinatari, oggetto, data e ora, identificativi tecnici del messaggio e della conversazione, corpo del messaggio ed eventuali allegati in formato PDF o immagine. Gli interessati di questo trattamento sono i terzi corrispondenti del cliente, cioè chiunque scriva alla casella collegata o riceva un messaggio da essa: non hanno alcun rapporto diretto con TrueReply, che non li contatta e non li informa direttamente. L'informativa nei loro confronti resta a carico del cliente, che è Titolare del trattamento (vedi la sezione 9); dal mittente autenticato di un messaggio ricevuto il servizio ricava inoltre una scheda dell'anagrafica di contatto del cliente (vedi più sotto)
- Anagrafica di contatto unificata: per conto del cliente il servizio riconduce a un unico contatto le interazioni che la stessa persona ha su canali diversi (chat sul sito, WhatsApp, telefono ed email), usando come chiavi il numero di telefono e l'indirizzo email normalizzati; il cliente può anche inserire a mano un contatto, indicandone il recapito. Il contatto raccoglie nome e cognome, i recapiti (fino a cinque numeri di telefono e cinque indirizzi email, con l'indicazione di come sono stati acquisiti), l'eventuale azienda, le etichette e le variabili configurate dal cliente, lo stato di ciascun canale, la scelta del cliente su chi risponde a quel contatto (l'assistente AI, una persona del suo team indicata per nome, oppure nessuno), uno stato del contatto che il cliente sceglie fra cinque valori predefiniti (nuovo, da ricontattare, in corso, concluso, non interessato) e una nota di testo libero che il cliente può scrivere sul contatto; non contiene il contenuto delle conversazioni; sul canale email il contatto nasce dal mittente autenticato di un messaggio ricevuto che supera il filtro automatico, con il suo indirizzo e il nome da lui indicato nell'intestazione del messaggio
- Dati di esecuzione delle automazioni: quando il cliente configura un'automazione, registriamo l'evento che la innesca (canale, identificativo di sessione, contatto associato ed eventuali dati del lead o anteprima del messaggio), l'esecuzione conseguente con il suo esito, i singoli passi eseguiti con una sintesi troncata dei parametri utilizzati e della risposta ricevuta, e le eventuali attese di una risposta dell'interessato
2.3 Dati raccolti sul sito truereply.it
Navigando sul sito truereply.it, raccogliamo dati tramite:
- Google Analytics 4: dati di navigazione anonimizzati (pagine visitate, durata sessione, origine del traffico, tipo di dispositivo)
- Meta Pixel (Facebook): dati di navigazione per finalità di remarketing e analisi delle conversioni pubblicitarie
- Misurazione conversioni server-side (Conversions API di Meta e analoga misurazione Google): per chi lascia un contatto (modulo, chat, richiesta di demo dall’assistente telefonico o da WhatsApp) o attiva un piano, trasmettiamo a Meta e Google identificatori in forma hashata (indirizzo email, numero di telefono) ed eventuali parametri di click pubblicitario (fbc/fbp), al solo fine di misurare e ottimizzare le campagne pubblicitarie. La base giuridica è il consenso prestato al momento dell'invio del contatto o dell'attivazione, mediante accettazione della presente informativa, distinto e indipendente dal consenso ai cookie espresso tramite il banner
- Verifica del possesso del numero per la chiamata di prova: chi richiede la chiamata dimostrativa da un numero di cellulare riceve su WhatsApp, allo stesso numero, un codice di verifica a sei cifre: la telefonata parte solo dopo che il codice viene inserito, per accertare che il numero appartenga davvero a chi lo ha lasciato. Il numero di telefono non è mai conservato in chiaro: il sistema ne conserva solo un'impronta crittografica non reversibile, valida al massimo 24 ore e cancellata non appena il codice è verificato o scade. La base giuridica è il consenso, prestato spuntando la relativa casella nel modulo di richiesta
- Microsoft Clarity: registrazioni anonime delle sessioni, heatmap e dati di interazione con la pagina per migliorare l'esperienza utente
- Brevo (Sendinblue): indirizzo email, in caso di iscrizione volontaria alla newsletter
2.4 Dati delle agenzie partner
Quando un'agenzia chiede di diventare partner di TrueReply, e per tutta la durata del rapporto, raccogliamo:
- Dati dell’agenzia: ragione sociale, partita IVA, codice fiscale se indicato, sede legale, indirizzo PEC e nome del legale rappresentante
- Dati del referente: nome, ruolo e indirizzo email della persona che compila la registrazione, che all’approvazione diventa il primo operatore dell’agenzia
- Prova dell’accettazione dei documenti contrattuali: versione e impronta dei documenti accettati, data e ora, indirizzo IP e tipo di browser (user agent), registrati dal server al momento dell’invio
- Dati degli operatori dell’agenzia: indirizzo email e credenziali di accesso alla dashboard (password come hash crittografico tramite Firebase Authentication) di chi opera per conto dell’agenzia, ed eventuale indirizzo email a cui l’agenzia riceve le notifiche
3. Finalità e base giuridica del trattamento
| Finalità | Dati trattati | Base giuridica |
|---|---|---|
| Erogazione del servizio SaaS e gestione dell'account | Dati identificativi e di contatto, di autenticazione, di utilizzo | Esecuzione del contratto (art. 6.1.b GDPR) |
| Elaborazione pagamenti e fatturazione | Dati di fatturazione (tramite Stripe) | Esecuzione del contratto (art. 6.1.b GDPR) |
| Funzionamento del chatbot AI | Messaggi di chat, dati di sessione, URL pagina, tipo dispositivo | Legittimo interesse del Titolare e dei clienti (art. 6.1.f GDPR) |
| Lead capture per conto dei clienti | Dati di contatto forniti volontariamente dal visitatore | Consenso dell'interessato (art. 6.1.a GDPR) |
| Servizio vocale AI inbound | Numero chiamante, data, durata, talk-time, trascrizione, esito | Trattamento per conto del Cliente, su base giuridica determinata dal Cliente Titolare; per gli scopi tecnici propri del Fornitore, legittimo interesse (art. 6.1.f GDPR) |
| Chiamate vocali AI outbound per conto del Cliente | Numero destinatario, data, durata, talk-time, trascrizione, esito, attestazioni di consenso, elenchi di opt-out | Per le chiamate promozionali, consenso raccolto dal Cliente Titolare (art. 6.1.a GDPR e art. 130 Codice Privacy). Per le chiamate di servizio legate a un rapporto già in essere con la persona chiamata — un ordine, un appuntamento, un contratto in corso — esecuzione del contratto o legittimo interesse del Cliente Titolare (art. 6.1.b e 6.1.f GDPR). La qualificazione della singola chiamata è del Cliente, che la attesta al momento della pubblicazione dell'automazione; TrueReply agisce come Responsabile del trattamento |
| Messaggistica WhatsApp per conto del Cliente | Contenuto e metadati dei messaggi WhatsApp | Base giuridica determinata dal Cliente Titolare; TrueReply agisce come Responsabile del trattamento |
| Canale email conversazionale sulla casella del Cliente (se attivo): lettura dei messaggi in arrivo e dei messaggi inviati dalla casella, messa a disposizione nell'area riservata, generazione della proposta di risposta su richiesta del Cliente, gestione del thread | Contenuto e metadati della corrispondenza email della casella collegata, allegati in formato PDF e immagine, credenziali di accesso alla casella | Base giuridica determinata dal Cliente Titolare, che resta tenuto a informare i propri corrispondenti; TrueReply agisce come Responsabile del trattamento |
| Anagrafica di contatto unificata: riconoscimento della stessa persona fra i canali del Cliente e gestione della relazione | Nome, recapiti telefonici ed email, azienda, etichette, variabili configurate dal Cliente, stato di ciascun canale, scelta del Cliente su chi risponde, stato del contatto, nota di testo libero | Base giuridica determinata dal Cliente Titolare, che resta tenuto a informare le persone del proprio team di cui indica il nome fra quelle che rispondono ai contatti, come precisato nella sezione 9; TrueReply agisce come Responsabile del trattamento |
| Prenotazione di appuntamenti sui calendari Google del Cliente, anche per le persone del suo team (se attivo): proporre, fissare, spostare e disdire appuntamenti per conto del Cliente | Dati forniti da chi prenota, servizio e orario dell'appuntamento; per le persone del team, nome, eventuali altre denominazioni, descrizione, servizi offerti, fasce orarie, luoghi, identificativi dei calendari e disponibilità (intervalli occupati; nei luoghi che ospitano un solo appuntamento alla volta anche orari, stato e tipo degli eventi delle altre persone, senza titoli né identità degli invitati) | Base giuridica determinata dal Cliente Titolare, che resta tenuto a informare le persone del proprio team, come precisato nella sezione 9; TrueReply agisce come Responsabile del trattamento |
| Esecuzione di automazioni configurate dal Cliente, inclusa la trasmissione di dati ai sistemi di terzi che il Cliente stesso indica | Evento che innesca l'automazione, dati del contatto e della conversazione utilizzati nei passi, parametri ed esiti delle azioni eseguite | Istruzione documentata del Cliente Titolare ai sensi dell'art. 28.3.a GDPR, su base giuridica determinata dal Cliente; TrueReply agisce come Responsabile del trattamento |
| Registrazione delle operazioni rilevanti (audit) e prova dell'opt-out | Identificativo dell'operatore, azione, destinatario in forma mascherata, data e ora; numero telefonico oggetto di opt-out | Obbligo del Responsabile (artt. 28.3.h e 32 GDPR) e accountability (art. 5.2 GDPR); per gli opt-out, art. 130 del Codice Privacy |
| Analisi del traffico e miglioramento del sito | Dati di navigazione (GA4, Clarity) | Consenso (art. 6.1.a GDPR) |
| Remarketing, pubblicità e misurazione conversioni | Dati di navigazione (Meta Pixel); per chi lascia un contatto — modulo, chat, oppure richiesta di demo personalizzata dall’assistente telefonico o da WhatsApp — o attiva un piano, identificatori hashati (email, telefono) inviati a Meta e Google via Conversions API | Consenso (art. 6.1.a GDPR): banner cookie per i dati di navigazione; accettazione dell'informativa al momento dell'invio del contatto o dell'attivazione per la misurazione server-side |
| Verifica del possesso del numero di telefono prima della chiamata di prova del sito | Numero di telefono | Consenso dell'interessato (art. 6.1.a GDPR) |
| Invio newsletter | Indirizzo email | Consenso dell'interessato (art. 6.1.a GDPR) |
| Sviluppo di soluzioni custom su commissione | Dati identificativi, dati di progetto | Esecuzione del contratto (art. 6.1.b GDPR) |
| Registrazione delle agenzie partner, valutazione della richiesta e gestione del rapporto | Dati dell'agenzia, del referente e degli operatori | Esecuzione del contratto e di misure precontrattuali adottate su richiesta dell'agenzia (art. 6.1.b GDPR); per i dati del legale rappresentante, del referente e degli operatori, legittimo interesse del Titolare a gestire il rapporto con le persone che l'agenzia indica (art. 6.1.f GDPR) |
| Prova dell'accettazione dei documenti contrattuali da parte dell'agenzia | Versione e impronta dei documenti, data e ora, indirizzo IP, tipo di browser | Legittimo interesse del Titolare a dimostrare l'accettazione e a tutelare i propri diritti (art. 6.1.f GDPR) |
| Adempimento di obblighi legali e fiscali | Dati identificativi, dati di fatturazione | Obbligo legale (art. 6.1.c GDPR) |
4. Modalità del trattamento
I dati personali sono trattati con strumenti informatici e telematici, con logiche strettamente correlate alle finalità sopra indicate e, comunque, in modo da garantire la sicurezza e la riservatezza dei dati stessi.
Trattamento tramite intelligenza artificiale: i messaggi inviati dagli utenti finali al chatbot vengono elaborati da modelli di intelligenza artificiale di terze parti (OpenAI o Anthropic Claude per la chat testuale, a seconda dell'assistente e della funzione; Google Gemini per la voce) al fine di generare risposte pertinenti. I messaggi vengono inviati ai fornitori AI esclusivamente per l'elaborazione in tempo reale e non vengono utilizzati per l'addestramento dei modelli. Le conversazioni vengono salvate su database Firestore per consentire al cliente di monitorare le interazioni.
Fornitori AI della chat testuale: la generazione delle risposte della chat sul sito, su WhatsApp e, se attivo, sul canale email è affidata, per gli assistenti che la utilizzano, a OpenAI Ireland Ltd. Per i dati dello Spazio economico europeo OpenAI Ireland Ltd può trasferirli a società affiliate e a fornitori situati fuori dallo Spazio economico europeo, in particolare negli Stati Uniti, sulla base delle SCC o di una decisione di adeguatezza: l'elaborazione avviene quindi anche negli Stati Uniti. TrueReply disattiva l'archiviazione delle richieste e delle risposte sul servizio API di OpenAI; OpenAI conserva per un massimo di 30 giorni i soli registri necessari ai controlli di prevenzione degli abusi e non utilizza i contenuti trasmessi tramite API per addestrare i propri modelli. Anthropic PBC resta sub-responsabile per le altre funzioni elencate alla sezione 5: i riassunti e la classificazione delle conversazioni, l'estrazione delle variabili, la lettura dei documenti e delle pagine caricati nella knowledge base, l'assistenza nella dashboard e la generazione delle risposte della chat degli assistenti non affidati a OpenAI e dei turni in cui OpenAI non è utilizzato (ad esempio quelli che contengono allegati o quelli in cui è indisponibile).
Trattamento tramite embeddings: i documenti caricati nella knowledge base vengono trasformati in rappresentazioni numeriche (embeddings) tramite Google (Vertex AI), in regione UE, per consentire la ricerca semantica. I contenuti vengono inviati a Google esclusivamente per l'elaborazione in tempo reale, non vengono utilizzati per l'addestramento dei suoi modelli e non sono soggetti a conservazione permanente.
Trattamento dei messaggi WhatsApp: i messaggi scambiati sul numero WhatsApp Business del Cliente sono trattati da TrueReply in qualità di Responsabile, esclusivamente per erogare il servizio di assistenza AI, transitando attraverso la WhatsApp Business Platform di Meta. Il contenuto è elaborato dai modelli AI per generare le risposte e salvato su database per consentire al Cliente di monitorare le conversazioni.
Trattamento della corrispondenza email (se attivo): quando il Cliente collega al servizio una propria casella di posta elettronica, TrueReply legge, dal momento del collegamento, i messaggi che vi arrivano e i messaggi che ne partono, e li rende disponibili al Cliente nell'area riservata, dove il Cliente può richiedere all'assistente AI una proposta di risposta, rivederla e disporne l'invio, rispondere scrivendo personalmente il testo o inviare nuove email di propria iniziativa, anche con allegati — l'invio parte sempre dalla casella e con l'identità del Cliente. Nessuna risposta è inviata in modo automatico. La lettura della posta inviata comprende anche i messaggi che il Cliente scrive dal proprio programma di posta e quelli che aprono una corrispondenza nuova: serve a mostrare al Cliente lo scambio completo e a far sì che la proposta di risposta tenga conto di ciò che è già stato detto. Non vi rientrano i messaggi in uscita che i marcatori tecnici standard o l'oggetto identificano come spediti automaticamente (risposte di fuori sede, comunicazioni di liste e newsletter, inviti di calendario, avvisi di mancato recapito), gli invii a più di dieci destinatari visibili e i messaggi diretti agli indirizzi e ai domini che il cliente ha escluso nelle impostazioni del canale — che sui messaggi inviati si applicano al destinatario. Lo storico della casella non viene importato. La posta che il fornitore della casella ha classificato come indesiderata è resa disponibile al Cliente con un contrassegno della sua provenienza e può essere esclusa dal trattamento nelle impostazioni del canale; anche su di essa nessuna proposta di risposta è generata senza una richiesta del Cliente. Il fornitore della casella (il provider di posta o il gestore aziendale del Cliente) resta un fornitore del Cliente e non un sub-responsabile di TrueReply. Poiché una casella aziendale riceve corrispondenza di ogni genere, il trattamento è delimitato dalle seguenti misure:
- Filtro automatico prima dell'intelligenza artificiale: prima di qualsiasi elaborazione da parte dei modelli AI, un filtro deterministico scarta i messaggi non conversazionali (avvisi di mancato recapito, risposte automatiche e messaggi di sistema, newsletter e comunicazioni di liste, indirizzi di sola notifica). Di questi messaggi vengono conservati i soli metadati, cioè mittente, oggetto e data: il contenuto non è trasmesso ad alcun fornitore AI e dal loro mittente non nasce alcuna scheda di contatto
- Messaggi che non richiedono risposta: quando l'assistente riconosce che un messaggio non richiede risposta, ne vengono conservati i soli metadati e il motivo, non il corpo del messaggio
- Limitazione dei mittenti e dei destinatari trattati: il Cliente può limitare il trattamento ai soli domini che indica ed escludere indirizzi e domini determinati; per impostazione predefinita sono esclusi i messaggi provenienti dal dominio del Cliente stesso. Sui messaggi INVIATI gli stessi elenchi si applicano al destinatario: per impostazione predefinita non entra nel Servizio la corrispondenza diretta a indirizzi del dominio del Cliente, e un indirizzo escluso resta fuori in entrambi i versi
- Elaborazione AI: il contenuto dei messaggi è elaborato dai fornitori AI indicati alla sezione 5 (OpenAI e Anthropic Claude, a seconda dell'assistente e del contenuto) esclusivamente su richiesta del Cliente, per predisporre la proposta di risposta, alle stesse condizioni indicate sopra per la chat (elaborazione in tempo reale, nessun utilizzo per l'addestramento dei modelli)
- Limiti di invio e trasparenza: il servizio invia ai soli destinatari definiti dal Cliente (un destinatario principale e, ove il Cliente li indichi, ulteriori destinatari in copia o in copia nascosta, fino a dieci in totale per messaggio), non dispone di alcuna funzione di invio massivo, applica un limite giornaliero di invii per casella e l'assistente non avvia autonomamente nuove conversazioni email: le nuove email partono solo su iniziativa del Cliente, con testo scritto dal Cliente e verso i destinatari da lui indicati; per impostazione predefinita la risposta è indirizzata al mittente del messaggio originario e ogni modifica dei destinatari è una scelta espressa del Cliente in sede di revisione; ogni proposta di risposta è predisposta con l'indicazione — attiva per impostazione predefinita e modificabile dal Cliente, poiché ogni invio segue la sua revisione — di essere stata preparata da un assistente AI. I messaggi il cui mittente non risulti autenticato dai controlli tecnici standard del protocollo non danno mai luogo a invii automatici
- Allegati: saranno trattati esclusivamente allegati in formato PDF o immagine ed entro i limiti dimensionali previsti; gli altri formati non verranno scaricati né conservati. I file trattati saranno conservati in un archivio dedicato, separato per cliente e non accessibile pubblicamente, con download consentito solo tramite collegamenti temporanei firmati emessi previa autenticazione. Il contenuto degli allegati ammessi potrà essere letto dai modelli AI per rispondere nel contesto della conversazione in cui l'allegato è arrivato
- Caselle PEC: escluse dal canale, il collegamento è rifiutato dal servizio
Allegati e contenuti multimediali su WhatsApp: sul canale WhatsApp il servizio scarica dai server di Meta le immagini (JPEG, PNG, WebP, GIF) e i documenti PDF ricevuti, entro i limiti dimensionali previsti, e li conserva con la conversazione in un archivio dedicato in UE, separato per cliente e non accessibile pubblicamente, accessibile solo previa autenticazione. Il contenuto di questi file può essere letto dai modelli AI per rispondere nel turno in cui arrivano. Le note vocali sono trascritte in testo tramite Google (Vertex AI), con elaborazione nell'Unione Europea: il testo trascritto diventa contenuto del messaggio e l'audio non è conservato. Gli altri contenuti multimediali (video, adesivi, file audio che non sono note vocali) e gli altri formati non vengono scaricati né conservati, e di essi resta nella conversazione un segnaposto testuale con l'eventuale didascalia. Il chatbot del sito non consente l'invio di allegati.
Anagrafica di contatto unificata: per conto del Cliente il servizio riconduce a un unico contatto le interazioni che la stessa persona ha su canali diversi, usando come chiavi il numero di telefono e l'indirizzo email normalizzati. Sul canale email, dal mittente autenticato di un messaggio ricevuto che supera il filtro automatico e non è escluso dal Cliente il servizio crea o aggiorna una scheda con l'indirizzo e il nome indicato dal mittente nell'intestazione del messaggio. Il collegamento a una scheda già esistente avviene solo sull'indirizzo del mittente. Quando l'indirizzo non ha ancora una scheda, il servizio legge, con una regola fissa e senza modelli di intelligenza artificiale, i numeri di telefono che il mittente ha scritto nel testo, firma compresa: li usa soltanto per segnalare al Cliente, sulla scheda nuova, un possibile doppione di una scheda che li ha già come recapito, e non li conserva né li aggiunge alla scheda nuova. Né un numero né un nome scritti nel testo collegano due schede. L'anagrafica è il registro dei contatti del Cliente, ha finalità propria e distinta dal contenuto delle conversazioni e non ne conserva il testo. Il Cliente può inserire a mano un contatto, indicandone il recapito (un numero di telefono o un indirizzo email, che nessun canale ha verificato) ed eventualmente il nome, e può indicare, per ciascun contatto, chi risponde: l'assistente AI, una persona del proprio team, il cui nome il Cliente sceglie e conserva in un elenco, oppure nessuno. Si tratta di una scelta di gestione del Cliente, che ne è Titolare, e non dell'opposizione dell'interessato, che resta registrata a parte. Quando il Cliente indica «nessuno» per un contatto, il servizio, ad eccezione della chat del sito (descritta più avanti), non risponde a quella persona e non ne registra le comunicazioni su WhatsApp, per email e al telefono: la chiamata telefonica è deviata al numero che il Cliente ha indicato (se il Cliente toglie dopo quel numero, la chiamata arriva all'assistente come per ogni altra persona), e il contenuto di un messaggio WhatsApp o di un'email non viene conservato (di un messaggio WhatsApp resta per 7 giorni un registro tecnico di servizio, con l'identificativo del messaggio, il tipo e la data, senza il contenuto; di un'email scartata restano per 183 giorni il solo indirizzo del mittente, l'oggetto e la data). Sulla chat del sito il servizio può riconoscere la persona solo quando lascia un recapito: fino ad allora l'assistente risponde e il testo della conversazione si conserva come per ogni altra, insieme alle variabili che ne vengono estratte, alla riga della conversazione nel foglio Google collegato dal Cliente (se c'è) e a un eventuale appuntamento già prenotato sul calendario del Cliente, mentre il lead che porta quel recapito non si registra. A quel contatto il servizio non invia nemmeno messaggi, telefonate o email per conto del Cliente. Quando il Cliente indica una persona del proprio team, su WhatsApp i messaggi di quel contatto si registrano ma l'assistente AI non risponde (le note vocali, le immagini e i PDF ricevuti sono comunque trascritti o letti, per completare la registrazione della conversazione), e i messaggi promozionali e le campagne verso quel contatto non partono, mentre quelli di servizio sì. Le liste di esclusione che il Cliente aveva già (numeri e indirizzi che aveva escluso) sono trasferite dal servizio in questa scelta: per ciascun recapito il servizio crea una scheda con il solo recapito, impostata su «nessuno». Il Cliente può inoltre scrivere su ciascun contatto una nota di testo libero, di al massimo 2.000 caratteri, che nessun assistente AI legge: il Cliente ne è Titolare e può annotarvi qualunque informazione, anche appartenente a categorie particolari di dati, ed è per questo che la nota è sempre protetta da cifratura applicativa di campo, per tutti i Clienti. I campi identificativi dell'anagrafica (nome, cognome, nome visualizzato, azienda e valori dei recapiti e degli identificativi WhatsApp) sono conservati senza cifratura applicativa di campo, anche per i Clienti che hanno dichiarato assistenti destinati al trattamento di categorie particolari di dati. Lo stesso vale per la scelta su chi risponde e per lo stato del contatto, uno fra cinque valori predefiniti: li imposta il Cliente (anche tramite chi opera per suo conto o, per lo stato, un'automazione che ha configurato), nessun assistente AI li scrive e lo stato non è letto da nessun assistente AI. Restano la cifratura dell'infrastruttura a riposo, la protezione del trasporto e i controlli di accesso. I contenuti conversazionali, la nota di testo libero del contatto e gli altri dati soggetti alla protezione per categorie particolari conservano la cifratura applicativa prevista.
Esecuzione di automazioni configurate dal Cliente: sulla base di regole che il Cliente configura, un evento della conversazione (un messaggio, un lead, l'esito di una chiamata, un appuntamento, una richiesta ricevuta su un indirizzo webhook dedicato al flusso o una pianificazione oraria) può avviare l'esecuzione di un'automazione. Le azioni oggi disponibili sono otto: l'invio di un avviso interno al Cliente e al suo personale, per posta elettronica o su WhatsApp, verso l'intestatario dell'account oppure verso un massimo di cinque recapiti che il Cliente scrive nella regola (mai un recapito ricavato dalla conversazione o dal payload di un terzo); l'invio di un'email al destinatario finale del Cliente, ad esempio il promemoria di un appuntamento, che parte dall'infrastruttura di posta di TrueReply con il nome dell'attività del Cliente e il suo indirizzo come recapito di risposta, entro tetti giornalieri per account; l'invio di un messaggio WhatsApp basato su un template approvato da Meta; l'aggiunta di una riga al foglio Google collegato dal Cliente; l'aggiornamento delle variabili estratte e delle etichette della conversazione in corso; l'impostazione o la rimozione dello stato di un contatto; una chiamata HTTP verso un endpoint pubblico che il Cliente configura; una chiamata vocale automatica verso un numero telefonico indicato dalle regole del Cliente, condotta dall'assistente vocale del Cliente e dal numero assegnato al suo account. L'avviso interno e l'email al destinatario finale transitano dal fornitore SMTP indicato alla sezione 5, il messaggio WhatsApp dalla WhatsApp Business Platform di Meta, la riga del foglio dai servizi Google, la chiamata HTTP raggiunge l'endpoint scelto dal Cliente e la chiamata vocale transita dall'operatore telefonico indicato alla sezione 5; l'aggiornamento delle variabili della conversazione e l'impostazione dello stato di un contatto non comportano alcuna trasmissione all'esterno. TrueReply esegue queste azioni come istruzione documentata del Cliente Titolare e non ne determina né il contenuto né il destinatario. Di ogni esecuzione restano registrati l'evento che l'ha innescata, i passi eseguiti con una sintesi troncata dei parametri e dell'esito, e le eventuali attese di risposta, per i tempi indicati alla sezione 7. Il Cliente può inoltre configurare, per ciascuno dei suoi assistenti, indirizzi HTTPS dei propri sistemi (webhook) ai quali il servizio invia, con firma, gli eventi che il Cliente sceglie, anche il cambio di stato di un contatto, mai con la nota di testo libero. TrueReply esegue l'invio come istruzione documentata del Cliente e non ne determina il destinatario. Le automazioni che il Cliente configura possono inoltre partire quando cambia lo stato di un contatto e leggerlo in una condizione o in un messaggio; il cambio fatto da un'automazione risulta come tale (identificativo dell'automazione e dell'esecuzione) e il servizio non attribuisce mai a un contatto uno stato di propria iniziativa. Quando lo stato di un contatto è «non interessato», il servizio non avvia per quel contatto messaggi promozionali automatici né campagne: è una scelta del Cliente, che ne è Titolare, e non un'opposizione dell'interessato, che resta registrata a parte. Queste elaborazioni riguardano l'identità del contatto, lo stato dei canali e lo stato del contatto: non producono decisioni automatizzate che generino effetti giuridici o incidano in modo analogamente significativo sull'interessato ai sensi dell'art. 22 GDPR.
Trattamento delle chiamate in uscita: le chiamate vocali AI in uscita per conto del Cliente sono erogate con presidi di conformità non disattivabili dal Cliente: disclosure AI come prima frase di ogni chiamata, finestre orarie consentite, utilizzo del numero +39 reale del Cliente come identificativo chiamante (senza mascheramento), gestione dell'opt-out con elenco di soppressione valido per l'intero account, e un'attestazione di responsabilità sottoscritta dal Cliente: al momento dell'importazione di ogni lista per le campagne o dell'aggiunta di contatti scelti dalla sua anagrafica in base allo stato, e al momento della pubblicazione dell'automazione per le chiamate che partono da un'automazione, dove non esiste alcuna lista da importare.
Classificazione e sintesi tramite AI: il testo trascritto delle chiamate e delle conversazioni può essere elaborato da modelli di intelligenza artificiale (Anthropic Claude) per la classificazione delle richieste di opt-out, l'estrazione delle variabili e la generazione di riassunti, al solo fine di erogare il servizio.
5. Responsabili del trattamento e destinatari dei dati
Per l'erogazione del servizio, il Titolare si avvale dei seguenti sub-responsabili del trattamento:
| Fornitore | Servizio | Sede | Privacy Policy |
|---|---|---|---|
| Google Cloud / Firebase | Hosting (incluso il sito truereply.it), database, autenticazione, cloud functions, ricerca semantica / embeddings (Vertex AI), gestione delle chiavi di cifratura (Cloud KMS), scrittura sui fogli Google collegati dal cliente e archiviazione degli allegati (canale email, ove attivato, e immagini e PDF ricevuti su WhatsApp) | UE (eur3) | privacy.google.com |
| Stripe Inc. | Elaborazione pagamenti, fatturazione | USA (SCC) | stripe.com/privacy |
| OpenAI Ireland Ltd | Elaborazione conversazionale AI (modelli GPT): generazione delle risposte della chat sul sito, su WhatsApp e, se attivo, sul canale email, per gli assistenti che la utilizzano | UE (Irlanda), con trasferimento negli USA (SCC) | openai.com/policies/privacy-policy |
| Anthropic PBC | Elaborazione conversazionale AI (Claude): generazione delle risposte della chat sul sito, su WhatsApp e, se attivo, sul canale email, per gli assistenti non affidati a OpenAI e per i turni in cui OpenAI non è utilizzato (ad esempio quelli che contengono allegati o quelli in cui è indisponibile); riassunti e classificazioni delle conversazioni; estrazione dei dati; lettura dei documenti della conoscenza; assistente della dashboard | USA (SCC) | anthropic.com/privacy |
| Telnyx LLC | Telefonia e chiamate vocali | USA (SCC) | telnyx.com/privacy |
| Meta Platforms Ireland Ltd (WhatsApp Business Platform) | Messaggistica WhatsApp sul numero del Cliente; invio del codice di verifica per la chiamata di prova del sito | UE (Irlanda) con trasferimenti USA (SCC) | whatsapp.com/legal |
| Google (Vertex AI – Gemini) | Elaborazione vocale AI (audio chiamate) e trascrizione delle note vocali ricevute su WhatsApp | UE (europe-west1; multi-regione UE per la trascrizione delle note vocali) | cloud.google.com/terms/data-processing-addendum |
| Google (Calendar API) | Integrazione Google Calendar (lettura della disponibilità, creazione, spostamento e cancellazione degli eventi sui calendari che il cliente abilita per le prenotazioni, previo consenso OAuth) | USA (SCC) | policies.google.com/privacy |
| Brevo (Sendinblue) | Email marketing e newsletter | UE (Francia) | brevo.com/privacy |
| Google (Analytics) | Analisi traffico web | USA (SCC) | policies.google.com/privacy |
| Meta Platforms | Remarketing e analisi conversioni | USA (SCC) | facebook.com/privacy |
| Microsoft (Clarity) | Analisi comportamento utente | USA (SCC) | privacy.microsoft.com |
| OVHcloud (OVH SAS) – server SMTP e caselle di posta | Invio delle email transazionali e delle notifiche di sistema (alert lead, benvenuto, fatturazione) e delle email che le automazioni del Cliente mandano ai suoi destinatari finali; ricezione degli avvisi di mancato recapito | UE (Francia) | ovhcloud.com/it/terms-and-conditions/privacy-policy |
Per i Clienti che hanno affidato la gestione del proprio account a un’agenzia partner di TrueReply, anche l’agenzia è sub-responsabile del trattamento: i suoi operatori accedono, per conto di TrueReply e nei limiti delle istruzioni del Cliente, alla dashboard dell’account del Cliente (configurazione degli assistenti, conoscenza, conversazioni, contatti, canali, campagne e automazioni), sulla base di un accordo ai sensi dell’art. 28 GDPR che impone all’agenzia obblighi equivalenti a quelli di TrueReply. L’agenzia non accede alle funzioni che riguardano l’esistenza dell’account, l’esercizio dei diritti dell’interessato e i pagamenti, e le operazioni rilevanti che compie restano nel registro delle operazioni (audit).
6. Trasferimento dei dati al di fuori dell'UE
Alcuni dei sub-responsabili sopra indicati hanno sede negli Stati Uniti d'America. Il trasferimento dei dati verso tali soggetti avviene sulla base delle Standard Contractual Clauses (SCC) approvate dalla Commissione Europea ai sensi dell'art. 46.2.c del GDPR, nonché del Data Privacy Framework UE-USA ove applicabile.
Il database principale (Firestore) è ospitato nella regione UE (eur3 – europe-west) e i dati vi risiedono stabilmente. L'invio ai fornitori AI avviene esclusivamente per l'elaborazione in tempo reale delle richieste e non comporta la conservazione permanente dei dati da parte di tali fornitori. Anthropic ha sede negli Stati Uniti e il trasferimento avviene sulla base delle SCC. OpenAI Ireland Ltd è stabilita nell'Unione europea e trasferisce i dati verso società affiliate e fornitori situati fuori dallo Spazio economico europeo, in particolare negli Stati Uniti, sulla base delle SCC o di una decisione di adeguatezza, secondo l'accordo sul trattamento dei dati concluso con OpenAI: per la generazione delle risposte affidata a OpenAI l'elaborazione avviene quindi anche negli Stati Uniti, e OpenAI conserva per un massimo di 30 giorni i soli registri necessari ai controlli di prevenzione degli abusi.
7. Periodo di conservazione dei dati
- Dati dell'account: conservati per tutta la durata del rapporto contrattuale e cancellati trascorsi 30 giorni dalla sua cessazione o dalla richiesta di cancellazione dell'account. I soli dati necessari agli adempimenti fiscali e contabili (fatture e dati di pagamento) sono conservati per 10 anni, come previsto dalla legge. Le registrazioni dell'accettazione dei Termini e Condizioni e dell'approvazione specifica delle loro clausole (data, versione dei documenti e modulo da cui sono state prestate) restano nel registro delle operazioni rilevanti per il suo periodo di conservazione, anche dopo la cancellazione dell'account, per la difesa di un diritto in giudizio (art. 17, par. 3, lett. e GDPR)
- Conversazioni del chatbot, incluse chat testuali, messaggi WhatsApp, conversazioni del canale email e trascrizioni/metadati delle chiamate vocali: conservate per un massimo di 6 mesi dall'ultima attività, dopodiché vengono cancellate automaticamente. Il cliente (Titolare) può collegare un proprio Google Sheet per conservare lo storico completo senza limiti di tempo nel proprio file. Alla cancellazione dell'account vengono comunque eliminate
- Messaggi email scartati dal filtro automatico: conservati per lo stesso periodo di 6 mesi come soli metadati (mittente, oggetto, data e motivo dello scarto), senza il corpo del messaggio. I messaggi che superano il filtro sono invece conservati con il loro contenuto nella conversazione, per lo stesso periodo di 6 mesi, perché è lì che il Cliente li legge e vi risponde
- Allegati della corrispondenza email e delle conversazioni WhatsApp (se attivi): saranno conservati nell'archivio dedicato per un massimo di 6 mesi, allineati alla conversazione di cui fanno parte, e rimossi con essa o alla cancellazione dell'account
- Credenziali di accesso alla casella email collegata (se attivo): conservate cifrate finché il collegamento resta attivo; cancellate immediatamente alla disconnessione della casella e alla cancellazione dell'account
- Dati di lead capture: conservati per la durata dell'abbonamento del cliente e accessibili tramite la dashboard o Google Sheets
- Registrazioni audio delle chiamate: la registrazione audio è attiva solo per le chiamate con l'assistente dimostrativo del Fornitore (il numero dimostrativo, la chiamata di prova richiesta dal sito e la richiamata della demo personalizzata) e viene cancellata automaticamente entro un massimo di 90 giorni. Per le chiamate dei Clienti (in entrata e in uscita) delle soluzioni pronte all'uso TrueReply tratta e conserva esclusivamente trascrizioni e metadati, non la registrazione audio; nelle soluzioni su misura la registrazione audio può essere prevista su istruzione del Titolare, con la conservazione definita nel relativo contratto
- Codice di verifica WhatsApp per la chiamata di prova: l'impronta crittografica del codice è conservata al massimo 24 ore e viene cancellata non appena il codice è verificato o scade; il numero di telefono non è mai conservato in chiaro. La prova dell'invio resta nel registro delle operazioni rilevanti (audit) per 24 mesi, con il destinatario in forma di impronta
- Liste di contatti delle campagne outbound: conservate per la durata dell'abbonamento del cliente ed eliminate alla cancellazione dell'account. Vale anche per le righe copiate dall'anagrafica di contatto del Cliente: sono una copia del numero, del nome e delle variabili del contatto, indipendente dalla scheda, e alla cancellazione del singolo contatto dall'anagrafica la riga della lista viene redatta. Le attestazioni di consenso (art. 130) sono conservate come prova della base giuridica, per il periodo necessario a dimostrarne la liceità
- Elenchi di opt-out e di soppressione: l'elenco di soppressione delle chiamate vocali è conservato per la durata dell'abbonamento del cliente ed è eliminato con la cancellazione dell'account. L'elenco di soppressione del canale WhatsApp, che raccoglie gli opt-out espressi dagli interessati, è invece conservato senza scadenza e sopravvive alla cancellazione dell'account del cliente: la conservazione serve a garantire che chi ha chiesto di non essere più contattato non venga ricontattato nemmeno in seguito alla chiusura di quell'account (art. 130 del Codice Privacy). Il numero di telefono non è conservato in chiaro: l'elenco registra soltanto un'impronta crittografica non reversibile del recapito, sufficiente a riconoscerlo se qualcuno tentasse di ricontattarlo e inidonea a risalire al numero. Alle stesse condizioni e per la stessa ragione è conservato senza scadenza l'elenco di soppressione del canale email, che raccoglie chi ha chiesto di non ricevere più messaggi rispondendo alla casella collegata del cliente, usando il collegamento di disiscrizione presente in ogni email inviata dalle automazioni, oppure il cui recapito è risultato definitivamente inesistente; anche qui l'indirizzo non è conservato in chiaro ma soltanto come impronta crittografica non reversibile
- Registro di autorizzazione dei thread WhatsApp nati da inserzione: quando un assistente è configurato per rispondere soltanto alle conversazioni WhatsApp aperte da un'inserzione pubblicitaria Click-to-WhatsApp, il servizio registra ogni thread così autorizzato. Il registro non è un elenco di opt-out: viene scritto per ogni conversazione autorizzata, anche quando nessun opt-out è mai stato espresso, e serve a stabilire a quali conversazioni l'assistente è autorizzato a rispondere e a dare effetto a un eventuale opt-out successivo. Contiene il numero di telefono dell'interessato, l'identificativo del clic sull'inserzione e il titolo e l'indirizzo dell'inserzione da cui la conversazione è nata. Non ha scadenza automatica, ma viene eliminato con la cancellazione dell'account: prima dell'eliminazione, gli opt-out eventualmente espressi su quei thread sono riportati nell'elenco di soppressione WhatsApp descritto al punto precedente, così che la cancellazione del registro non possa far perdere la volontà di non essere più contattati. Alla data della presente informativa questa configurazione non è attivabile dai clienti ed è in uso soltanto sul numero WhatsApp di TrueReply
- Anagrafica di contatto unificata: non ha una scadenza automatica e resta disponibile finché esiste l'account del cliente, che ne è Titolare; viene eliminata alla cancellazione dell'account. Lo stesso vale per la scelta del cliente su chi risponde a ciascun contatto, che resta sulla scheda, e per l'elenco dei nomi delle persone del suo team, che segue l'account. La scelta è deliberata: l'anagrafica è il registro dei contatti del cliente, con finalità propria e distinta dal contenuto delle conversazioni, che resta soggetto al limite di 6 mesi (vale anche per la scheda nata da un'email ricevuta: la conversazione email si cancella a 6 mesi dall'ultima attività, la scheda con il nome e l'indirizzo del mittente resta). Il registro degli invii proattivi ricevuti dal singolo contatto è eliminato insieme al contatto cui si riferisce, come la nota di testo libero e lo stato eventualmente impostati su di esso, che non hanno una scadenza propria: il cliente può svuotare la nota e togliere lo stato in qualsiasi momento, e il servizio non ne conserva uno storico delle versioni. Il cliente può inoltre cancellare un singolo contatto in qualsiasi momento, dalla pagina Contatti della dashboard, per dare seguito alla richiesta di un interessato: la cancellazione elimina il contatto, i recapiti che lo identificano, la scelta su chi risponde, la nota di testo libero e lo stato eventualmente impostati su di esso e il registro degli invii ricevuti, e rimuove il collegamento all'anagrafica dalle conversazioni e dalle esecuzioni delle automazioni che vi facevano riferimento (le conversazioni restano soggette al proprio termine di 6 mesi: dalla dashboard il cliente può cancellare il singolo thread email, i cui messaggi ricevuti sono spostati nel Cestino della casella collegata mentre le copie presenti nella posta inviata restano nella casella, mentre le conversazioni degli altri canali, cioè chat sul sito, WhatsApp e telefonate, non sono cancellabili singolarmente e sono cancellate automaticamente allo scadere di quel termine; per dare seguito a una richiesta di cancellazione di un interessato prima di tale termine, il cliente ne fa richiesta a TrueReply, che vi provvede senza ingiustificato ritardo)
- Dati di esecuzione delle automazioni: gli eventi che le innescano sono conservati 30 giorni; le esecuzioni, i relativi passi e le attese di risposta 90 giorni. Le definizioni dei flussi configurati dal cliente e le loro versioni non hanno una scadenza automatica e restano finché il cliente mantiene l'account: l'eliminazione dalla dashboard le archivia, conservandone le versioni come prova della configurazione applicata. Alla cancellazione dell'account le definizioni, le versioni, le esecuzioni con i relativi passi, le attese di risposta e i segreti registrati per le automazioni verso API di terzi sono eliminati dalla procedura automatica di cancellazione; gli eventi che innescano le automazioni non vi rientrano e si cancellano da sé entro 30 giorni per effetto della propria scadenza
- Dati delle agenzie partner e prova dell’accettazione dei documenti contrattuali: conservati per tutta la durata del rapporto con l’agenzia e, al suo termine o se la registrazione non è approvata, per il periodo necessario a dimostrare la richiesta e l’accettazione e a tutelare i diritti del Titolare. Quando un operatore viene rimosso, il suo accesso come operatore dell’agenzia è revocato subito; il suo indirizzo email resta associato alla sua utenza per lo stesso periodo, e le operazioni che ha compiuto restano nel registro delle operazioni rilevanti (audit) per 24 mesi
- Registro delle operazioni rilevanti (audit): 24 mesi. Vi figurano l'operatore che ha compiuto l'operazione, il suo indirizzo IP, l'azione, la data e l'ora e alcuni dettagli propri di ciascuna operazione. Vi è registrata anche ogni trasmissione di dati verso l'esterno effettuata dalle automazioni configurate dal cliente, con la sola destinazione e l'esito e mai il contenuto trasmesso: l'indirizzo del sistema chiamato e il metodo della chiamata HTTP, senza percorso, parametri, intestazioni o corpo della richiesta; il foglio Google e la scheda di destinazione, senza i valori della riga scritta; il destinatario della notifica email. I destinatari degli invii WhatsApp e delle notifiche email vi compaiono in forma mascherata; altri dati vi compaiono invece per esteso, in particolare il numero di telefono aggiunto manualmente a un elenco di opt-out, i numeri telefonici che il cliente attiva, disattiva, imposta come deviazione di chiamata o usa come identificativo chiamante nelle campagne, e la descrizione della fonte del consenso dichiarata all'importazione delle liste per le campagne. Il registro sopravvive alla cancellazione dell'account perché è la prova dell'adempimento
- Dati di navigazione (GA4, Clarity, Meta Pixel): secondo le policy di conservazione dei rispettivi fornitori (tipicamente 14–26 mesi)
- Dati newsletter (Brevo): fino alla revoca del consenso da parte dell'interessato
- Dati di sessione del widget (localStorage): 30 minuti di inattività (sessione); il visitor ID persiste fino alla cancellazione manuale dei dati del browser da parte dell'utente
Un dato cancellato, alla scadenza dei termini sopra indicati o su richiesta, può restare nelle copie di sicurezza del servizio, usate soltanto per il ripristino dopo un guasto, per un massimo di 14 giorni.
8. Diritti dell'interessato
Ai sensi degli articoli 15–22 del GDPR, l'interessato ha il diritto di:
- Accesso: ottenere la conferma dell'esistenza di dati personali che lo riguardano e la loro comunicazione in forma intelligibile
- Rettifica: ottenere la correzione di dati inesatti o l'integrazione di dati incompleti
- Cancellazione: ottenere la cancellazione dei propri dati personali nei casi previsti dal GDPR
- Limitazione: ottenere la limitazione del trattamento nei casi previsti dal GDPR
- Portabilità: ricevere i propri dati in formato strutturato, di uso comune e leggibile da dispositivo automatico
- Opposizione: opporsi al trattamento dei propri dati per motivi legati alla propria situazione particolare
- Revoca del consenso: revocare in qualsiasi momento il consenso prestato, senza pregiudicare la liceità del trattamento basato sul consenso prima della revoca
Per esercitare i propri diritti, l'interessato può inviare una richiesta a info@truereply.it. Il Titolare risponderà entro 30 giorni dal ricevimento della richiesta. I titolari di un account TrueReply possono inoltre esercitare in autonomia, dalla dashboard (sezione Impostazioni), il diritto di portabilità e la cancellazione dell'account, con un periodo di ripensamento di 30 giorni prima dell'eliminazione definitiva, e, dalla pagina Contatti, l'esportazione e la cancellazione del singolo contatto. L'esportazione self-service produce un file JSON strutturato che comprende i dati dell'account, la configurazione degli assistenti e le relative conversazioni (fino a 5.000 per assistente, con indicazione esplicita dell'eventuale troncamento) e l'anagrafica di contatto unificata (fino a 5.000 contatti, con la stessa indicazione di troncamento, in forma leggibile). Non comprende invece le definizioni dei flussi e i dati di esecuzione delle automazioni, le campagne in uscita con le relative liste e attestazioni, gli elenchi di opt-out e il registro delle operazioni rilevanti: questi dati sono forniti su richiesta scritta a info@truereply.it, entro i termini di legge. Le credenziali e i segreti delle integrazioni non sono mai inclusi nell'esportazione.
L'interessato ha inoltre il diritto di proporre reclamo all'Autorità Garante per la protezione dei dati personali (www.garanteprivacy.it).
9. Ruolo di TrueReply nel trattamento dei dati degli utenti finali
TrueReply agisce in qualità di Responsabile del trattamento (Data Processor) per conto dei propri clienti (Titolari del trattamento) relativamente ai dati degli utenti finali che interagiscono con i chatbot, l'assistente vocale in entrata e in uscita, il canale WhatsApp e, ove attivato, il canale email, nonché relativamente all'anagrafica di contatto unificata e all'esecuzione delle automazioni configurate dal cliente, inclusa la trasmissione di dati ai sistemi di terzi che il cliente stesso indica. Il cliente che installa il chatbot TrueReply sul proprio sito web è responsabile di informare i propri visitatori circa il trattamento dei dati personali tramite il chatbot, nel rispetto del GDPR.
Allo stesso modo, il cliente che collega al servizio la propria casella di posta elettronica resta Titolare del trattamento della corrispondenza che vi riceve e di quella che ne parte, ed è tenuto a informare i propri corrispondenti, ai sensi degli artt. 13 e 14 GDPR, che i messaggi in arrivo e quelli inviati dalla casella sono trattati con l'ausilio di un assistente di intelligenza artificiale e di un responsabile esterno del trattamento. L'obbligo di informativa vale anche verso i destinatari dei messaggi che partono dalla casella. TrueReply non contatta e non informa direttamente tali corrispondenti.
Allo stesso modo, il cliente che configura le persone del proprio team per ricevere appuntamenti, o che ne inserisce i nomi fra le persone che rispondono ai contatti, resta Titolare del trattamento dei loro dati ed è tenuto a informarle, ai sensi degli artt. 13 e 14 GDPR, che tali dati sono trattati da un responsabile esterno del trattamento e, per gli appuntamenti, con l'ausilio di un assistente di intelligenza artificiale. TrueReply non informa direttamente tali persone.
Il rapporto tra il Cliente (Titolare) e TrueReply (Responsabile) è disciplinato dall'Addendum sul trattamento dei dati ai sensi dell'art. 28 GDPR, disponibile su /dpa, che costituisce parte integrante dei Termini e Condizioni. Quando il Cliente ha affidato la gestione del proprio account a un’agenzia partner, l’agenzia vi interviene come sub-responsabile di TrueReply (sezione 5).
10. Dati Google (Google API Services)
TrueReply si integra con Google Calendar tramite le Google API Services, previo esplicito consenso dell'utente durante un flusso OAuth 2.0. Questa sezione descrive quali dati riceviamo, come li usiamo, come li proteggiamo e come l'utente può revocarli in qualsiasi momento.
10.1 Ambiti (scope) richiesti
| Scope Google | Perché lo richiediamo |
|---|---|
openid |
Identificare in modo univoco l'account Google che autorizza la connessione. |
https://www.googleapis.com/auth/userinfo.email |
Mostrare nella dashboard di TrueReply l'indirizzo email dell'account Google collegato, così l'utente sa sempre quale account è in uso. |
https://www.googleapis.com/auth/calendar.readonly |
Elencare i calendari dell'account Google, per permettere al cliente di scegliere quali calendari abilitare per le prenotazioni (quello dell'assistente e, se il cliente configura persone del team, quello di ciascuna di esse), e leggere la disponibilità (free/busy) di quei calendari e di quelli che il cliente indica come impegni delle persone del team. La disponibilità arriva come soli intervalli occupati, salvo i luoghi che ospitano un solo appuntamento alla volta, per i quali leggiamo anche orari, stato e tipo degli eventi delle altre persone del team (punto 10.2). Con questo ambito non leggiamo titoli, descrizioni né identità degli invitati di alcun evento. |
https://www.googleapis.com/auth/calendar.events |
Operare sugli eventi dei calendari che il cliente ha abilitato per le prenotazioni (quello dell'assistente e, se il cliente configura persone del team, quello di ciascuna di esse): creare l'evento quando una prenotazione viene confermata; elencare gli eventi della finestra di prenotazione per ritrovare l'appuntamento della persona che chiede di spostarlo o disdirlo, per ricontrollare che il nuovo orario sia libero e, nei luoghi che ospitano un solo appuntamento alla volta, che il luogo non sia già occupato da un'altra persona del team; rileggere il singolo evento prima di modificarlo o di eseguire un'azione automatica che ne dipende; spostarlo cambiandone la data e l'ora; eliminarlo quando la persona lo disdice; quando il cliente attiva le persone del team, portare gli appuntamenti già presi dal calendario dell'assistente a quello della persona giusta. Lo spostamento e la disdetta sono due funzioni che il cliente può disattivare separatamente dalla propria dashboard: quando sono spente, l'assistente non riceve nemmeno gli strumenti per compierle. |
Richiediamo sempre l'ambito minimo strettamente necessario alla funzionalità. Non richiediamo calendar completo né calendar.settings, e non operiamo su calendari diversi da quelli che il cliente ha configurato per l'assistente (descritti sopra), salvo le letture di sola verifica indicate al punto 10.2.
10.2 Come usiamo i dati Google
- Lettura della disponibilità (
freebusy.query): quando una persona chiede un appuntamento all'assistente del cliente, TrueReply interroga in tempo reale la disponibilità del calendario dell'assistente oppure, se il cliente ha configurato persone del team, quella dei calendari delle persone che offrono il servizio richiesto e dei calendari che il cliente indica come loro impegni (ad esempio ferie o un'altra agenda), per calcolare gli slot liberi coerenti con le fasce orarie configurate dal cliente. Dalla richiesta di disponibilità riceviamo soli intervalli occupati, senza titoli né partecipanti, e non li persistiamo. Se il cliente ha stabilito che un luogo ospita un solo appuntamento alla volta, leggiamo inoltre dai calendari delle altre persone del team, per la sola finestra interessata, orari, stato, indicazione libero/occupato e tipo degli eventi e la risposta del proprietario del calendario, senza titoli, descrizioni né identità degli invitati, e non li persistiamo. - Creazione dell'evento (
events.insert): alla conferma di un appuntamento TrueReply crea l'evento sul calendario del cliente o, con le persone del team, su quello della persona scelta. Il contenuto dell'evento (titolo, descrizione, partecipanti) è derivato esclusivamente dai dati forniti dalla persona e dal modello di testo configurato dal cliente; quando il cliente ha un catalogo di servizi, l'evento riporta anche il servizio prenotato. Se la persona ha lasciato un indirizzo email, questo viene aggiunto come invitato e Google le recapita il proprio invito; se non lo ha lasciato — dal 2 settembre 2026 l'email non è più obbligatoria per prenotare, perché è il cliente a decidere quali dati l'assistente debba raccogliere — l'evento nasce senza invitati e nessuna email parte. - Identificatori hashati sull'evento: alla creazione scriviamo sull'evento alcuni marcatori tecnici, fra le sue proprietà private (
extendedProperties.private) e, con le stesse chiavi, fra quelle condivise (extendedProperties.shared): un contrassegno che indica che l'evento è stato creato dal nostro assistente, l'identificativo dell'assistente (nelle proprietà condivise in forma pseudonima), l'impronta crittografica dell'email e del numero di telefono usati per prenotare (HMAC-SHA-256 con una chiave segreta dedicata, troncata a 128 bit) e, quando il cliente ha configurato persone del team o servizi, l'identificativo interno della persona e del servizio, non il loro nome. I recapiti non sono mai scritti in chiaro in queste proprietà. Servono a una cosa sola: ritrovare l'appuntamento di chi chiede di spostarlo o disdirlo senza dover leggere il titolo o la descrizione dell'evento, che sono testi composti dal cliente e possono contenere qualunque cosa. Le proprietà condivise esistono perché Google le conserva quando l'evento viene spostato su un altro calendario, mentre quelle private no; le vedono gli invitati dell'evento, attraverso l'API di Google e le esportazioni e non nell'interfaccia di Google Calendar. L'impronta non è reversibile e, essendo calcolata con una chiave che non esce dal nostro sistema, nessuno al di fuori di esso può calcolarla per un recapito noto. - Ricerca dell'appuntamento (
events.list): quando una persona chiede di spostare o di disdire, cerchiamo il suo appuntamento sul calendario dell'assistente o, con le persone del team, su quelli di ciascuna persona, e nella sola finestra futura entro l'orizzonte di prenotazione configurato dal cliente, in due modi: per impronta dei recapiti fra i marcatori dell'evento, privati e condivisi (gli eventi creati dall'assistente a partire dal 2 settembre 2026) e, per gli appuntamenti creati prima di quella data che non portano l'impronta, con una ricerca ristretta all'indirizzo email dell'invitato. Di ogni evento restituito tratteniamo, per il solo tempo della richiesta, una proiezione minima: identificativo, inizio e fine, chi ne è l'organizzatore, gli indirizzi degli invitati e i marcatori. Nella ricerca per spostare o disdire, titolo, descrizione, luogo e dati di videoconferenza degli eventi letti non entrano mai nel trattamento: non vengono copiati, non vengono registrati e non vengono trasmessi ad alcun modello di intelligenza artificiale. - Appuntamento spostato dal cliente (
events.get,events.list): per gli assistenti che hanno più di un calendario, o che ne hanno cambiato uno da poco: se il cliente ha spostato un appuntamento su un altro calendario (per esempio cambiando il calendario dell'evento in Google Calendar) e, quando la persona chiede di spostarlo o di disdirlo, l'evento non è dove lo aspettiamo, lo cerchiamo, in sola lettura, per identificativo e, se il canale ha provato il recapito della persona, per i marcatori dell'evento, sugli altri calendari che il cliente ha configurato per quell'assistente e, per un periodo limitato (fino a sette giorni dopo l'ultimo appuntamento che vi si poteva prenotare), su quelli che ne ha tolto. Se lo ritroviamo e Google non ha portato con lo spostamento i marcatori privati, li riscriviamo sull'evento subito prima di spostarlo o di disdirlo; la riscrittura dei marcatori non invia notifiche. - Ricontrollo dell'orario (
events.list): prima di uno spostamento rileggiamo gli eventi della finestra interessata con il loro identificativo, per poter escludere dal conteggio l'appuntamento che si sta muovendo: senza, esso si sovrapporrebbe a se stesso e ogni spostamento di pochi minuti risulterebbe impossibile. - Rilettura dell'evento (
events.get): immediatamente prima di uno spostamento o di una disdetta, per verificare che l'evento esista ancora, non sia già stato annullato e sia effettivamente organizzato dal calendario su cui lo gestiamo. - Spostamento (
events.patch): modifichiamo la data e l'ora di inizio e di fine e, se il cliente ha configurato dei luoghi di ricevimento, il luogo dell'evento, che segue la nuova fascia oraria. Ogni altro contenuto dell'evento — invitati, promemoria, link della videoconferenza, proprietà private e condivise — resta esattamente com'è, salvo i marcatori che uno spostamento fatto dal cliente su un altro calendario ha fatto perdere all'evento, che riscriviamo come descritto sopra. Google notifica lo spostamento agli invitati che hanno un indirizzo email. - Disdetta (
events.delete): l'evento viene eliminato dal calendario e Google notifica l'annullamento agli invitati che hanno un indirizzo email. - Verifica preventiva dell'identità: l'assistente non sposta e non disdice un appuntamento a chiunque lo chieda. Prima di ogni modifica è il nostro server a verificare che l'appuntamento sia di chi sta parlando: perché è stato preso in quella stessa conversazione, perché il canale ha già provato il recapito (numero del chiamante, mittente WhatsApp verificato da Meta), oppure perché la persona dichiara i recapiti con cui ha prenotato e il server li confronta con quelli dell'evento. Il confronto lo esegue il server e non il modello di intelligenza artificiale, che si limita a riferire ciò che la persona dice; l'esito negativo è sempre identico e non rivela mai se un appuntamento esista né quale dato non corrisponda.
- Verifica dei calendari delle persone (
calendarList.get,freebusy.query): quando il cliente salva o modifica le persone del team, chiediamo a Google se ciascun calendario di prenotazione è accessibile all'account collegato con il permesso di modificare gli eventi e se la disponibilità dei calendari indicati si può leggere, per avvisare subito il cliente di una condivisione mancante. Leggiamo il ruolo di accesso, le videochiamate che il calendario consente (se le fasce della persona ne prevedono) e un intervallo di prova di un'ora, non il contenuto di alcun evento, e non conserviamo il risultato. - Attivazione delle persone del team (
events.list,events.move): quando il cliente attiva le persone del team su un assistente che già riceveva appuntamenti sul calendario principale, per portare quegli appuntamenti sul calendario della persona giusta leggiamo gli eventi futuri di quel calendario e proponiamo al cliente l'attribuzione: per ciascun evento creato dall'assistente mostriamo giorno, ora, durata e il titolo in forma mascherata (la prima parola intera e le iniziali delle altre, solo le iniziali per gli assistenti dichiarati destinati a categorie particolari di dati), soltanto al cliente o a chi opera sull'account per suo conto e senza conservarlo; gli altri eventi si contano soltanto. Secondo l'attribuzione che il cliente indica, spostiamo poi ciascun appuntamento sul calendario della persona (events.move) senza notificare gli invitati, riscrivendo i marcatori sull'evento. Il calendario di una persona può appartenere a un altro account Google ed essere condiviso con quello collegato: da quel momento l'evento vive in quel calendario, che è la destinazione scelta dal cliente. - Verifica prima di un'azione automatica (
events.get,calendarList.list): se il cliente ha configurato un'automazione legata a un appuntamento, per esempio il promemoria che parte prima dell'orario, rileggiamo l'evento prima di ogni azione dell'automazione e, durante le attese lunghe, ogni mezz'ora, sul calendario dell'assistente e sugli altri calendari che il cliente ha configurato per quell'assistente o ne ha tolto da poco, per sapere se l'appuntamento è stato annullato o spostato: se è annullato l'automazione si ferma, se è spostato si riallinea al nuovo orario. Se l'evento risulta annullato lo cerchiamo, per identificativo, anche sugli altri calendari su cui l'account Google collegato può scrivere, chiedendo a Google soltanto lo stato e l'orario dell'evento, perché un evento spostato su un calendario diverso da quelli dell'assistente lascia sul calendario di partenza un evento annullato; se lo ritroviamo, l'automazione segue il suo nuovo orario. La verifica legge soltanto e non modifica niente; se Google non risponde, l'automazione prosegue.
Non usiamo i dati Google per finalità pubblicitarie, non li vendiamo, non li condividiamo con terze parti, non li usiamo per addestrare modelli di machine learning.
10.3 Conservazione e protezione dei dati Google
- I refresh token OAuth sono cifrati at-rest tramite envelope encryption: AES-256-GCM con Data Encryption Key random generata per ciascun token, a sua volta wrappata con Google Cloud KMS (keyring
truereply-secrets, chiaveoauth-tokens, rotazione 90 giorni). Solo la nostra Cloud Function backend possiede il permesso IAM di decifrare la DEK. - Gli access token sono memorizzati in cache temporanea per la durata della loro validità (tipicamente un'ora) e mai persistiti più del necessario.
- Tutti i dati Google in transito viaggiano esclusivamente su TLS 1.2+ (HTTPS).
- Che cosa conserviamo del calendario, e perché. Non teniamo una copia dell'agenda del cliente, ma non è vero che degli appuntamenti non resti nulla da noi. Sulla conversazione in cui l'appuntamento è stato preso conserviamo l'identificativo dell'evento Google, l'orario di inizio e di fine, lo stato dell'appuntamento (confermato, spostato, disdetto), gli orari precedenti in caso di spostamento e l'indicazione di come è stata provata l'identità di chi ha chiesto la modifica (dalla stessa conversazione, dal canale, oppure tramite verifica dei recapiti) — mai il recapito in sé. Vi è registrato anche il titolo dell'evento, con l'eccezione degli assistenti che il cliente ha dichiarato destinati al trattamento di categorie particolari di dati, per i quali è omesso. Quando il cliente ha configurato persone del team o servizi, vi sono registrati anche la persona del team con cui si è prenotato, il servizio prenotato (per gli assistenti dichiarati destinati a categorie particolari di dati il nome del servizio è omesso e resta il solo identificativo interno), un'impronta del nome di chi ha prenotato, calcolata con una chiave del nostro sistema, che non è il nome e serve a decidere se due prenotazioni contemporanee sono di persone diverse, un'impronta del calendario su cui l'appuntamento è stato prenotato o spostato e gli orari che l'assistente ha tentato di fissare e che un'altra prenotazione aveva appena occupato. Sono i dati minimi perché l'assistente sappia, nei turni successivi della stessa conversazione, che cosa ha già prenotato: senza di essi riproporrebbe come «occupato» lo slot che ha appena creato, o creerebbe un secondo appuntamento invece di spostare il primo. Seguono la conservazione della conversazione a cui appartengono (sezione 7: massimo 6 mesi dall'ultima attività) e vengono cancellati insieme a essa.
- Che cosa non conserviamo. La disponibilità free/busy e gli elenchi di eventi letti per calcolare gli slot, per ritrovare un appuntamento, per ricontrollare un orario, per verificare un appuntamento prima di un'azione automatica o per proporre al cliente l'attribuzione degli appuntamenti quando attiva le persone del team non sono persistiti in alcun database: vivono in memoria per il solo tempo della singola richiesta.
- Configurazione delle persone e dei calendari. I dati delle persone del team che il cliente inserisce (nome, eventuali altre denominazioni, descrizione, servizi offerti, fasce orarie e luoghi) e gli identificativi dei loro calendari, che per un collaboratore sono spesso un indirizzo email, fanno parte della configurazione dell'assistente: restano finché esiste e si cancellano con esso, anche alla cancellazione dell'account. L'identificativo di un calendario che il cliente toglie da un assistente resta in un elenco tecnico, usato in sola lettura per ritrovare gli appuntamenti rimasti su quel calendario, fino a sette giorni dopo l'ultimo appuntamento che vi si poteva prenotare; poi non è più usato e cade comunque con l'assistente.
- Perché la verifica dell'identità non diventi un modo per scoprire se una determinata persona abbia un appuntamento presso un cliente, teniamo tre contatori dei tentativi falliti: uno per conversazione, uno per assistente e per giorno, e uno per ciascun recapito dichiarato durante la verifica. Contengono soli numeri — nessun recapito, né nel contenuto né nell'identificativo del documento, dove il recapito compare solo come impronta crittografica non reversibile — e si cancellano da soli dopo 24 ore, tranne quello per assistente che si cancella dopo 7 giorni.
- L'accesso ai dati Google è limitato alla Cloud Function backend di TrueReply (
europe-west1). Il servizio voce (Cloud Run) non possiede mai i token né li decifra: chiama endpoint interni autenticati che restituiscono solo il risultato aggregato dell'operazione.
10.4 Limited Use disclosure
TrueReply's use and transfer of information received from Google APIs to any other app will adhere to Google API Services User Data Policy, including the Limited Use requirements.
10.5 Revoca e cancellazione
L'utente può revocare l'accesso ai suoi dati Google in qualsiasi momento:
- dalla dashboard TrueReply: Integrazioni → Google Calendar → Disconnetti (invalida il refresh token lato Google e cancella il record
calendarConnectorda Firestore). - direttamente da Google: myaccount.google.com/permissions.
Alla disconnessione, il refresh token cifrato viene rimosso entro pochi secondi dal nostro Firestore. Eventuali access token residui scadono automaticamente entro un'ora.
10.6 Contatto per dati Google
Per domande sul trattamento dei dati Google: info@truereply.it.
11. Misure di sicurezza
Il Titolare adotta misure tecniche e organizzative adeguate a garantire un livello di sicurezza commensurato al rischio, tra cui:
- Crittografia dei dati in transito (HTTPS/TLS) e a riposo (crittografia Firebase/Google Cloud)
- Autenticazione tramite Firebase Authentication con hash crittografico delle password
- Elaborazione dei pagamenti tramite Stripe (certificato PCI DSS Level 1), senza transito o memorizzazione dei dati delle carte sui server TrueReply
- Isolamento dei dati per tenant: ogni cliente accede esclusivamente ai propri dati tramite regole di sicurezza Firestore
- Cifratura applicativa, tramite envelope encryption su chiave Google Cloud KMS dedicata, dei segreti a maggiore impatto che il cliente conferisce per il funzionamento delle integrazioni: il refresh token OAuth di Google Calendar, il token di accesso WhatsApp Business e i segreti che il cliente registra per le automazioni verso API di terze parti. Il valore in chiaro di tali segreti non è restituito da alcuna interfaccia del servizio; i segreti delle automazioni sono inoltre vincolati agli host che il cliente autorizza al momento della registrazione
- Cifratura a livello di campo dei contenuti conversazionali e dei dati di esecuzione delle automazioni (contesto dell'esecuzione, sintesi dei parametri e dell'esito di ogni passo, messaggio di errore), su chiave Google Cloud KMS distinta, per gli assistenti che il cliente ha dichiarato destinati al trattamento di categorie particolari di dati; la stessa cifratura protegge, per tutti i clienti, la nota di testo libero che il cliente può scrivere su un contatto
- Controlli sulle destinazioni delle chiamate HTTP configurate dal cliente nelle automazioni: blocco degli indirizzi di rete interni, privati e riservati e connessione al solo indirizzo IP verificato
- Rate limiting sugli endpoint pubblici per la protezione da abusi
- Widget in Shadow DOM per l'isolamento dal contesto della pagina ospitante
12. Modifiche alla presente informativa
Il Titolare si riserva il diritto di apportare modifiche alla presente informativa in qualsiasi momento. Le modifiche saranno pubblicate su questa pagina con indicazione della data di ultimo aggiornamento. Si invita l'utente a consultare periodicamente questa pagina.
13. Contatti
Per qualsiasi domanda relativa alla presente informativa o al trattamento dei dati personali, è possibile contattare il Titolare scrivendo a: info@truereply.it