Informativa Privacy
La presente Informativa sulla Privacy descrive come ExpensiLife raccoglie, utilizza e protegge i dati personali degli utenti, in conformitĂ al Regolamento (UE) 2016/679 ("GDPR") e al D.Lgs. 196/2003 ("Codice Privacy").
1. Titolare del trattamento
- Alberto Lolicato (persona fisica)
- Codice Fiscale: LLCLRT92R20C351C
- Sede: Ariccia (RM), Lazio, Italia
- Email: lolicatoalberto@gmail.com
2. Dati personali raccolti
2.1 Dati di registrazione e profilo
- Nome e cognome
- Indirizzo email
- Password (memorizzata SOLO come hash bcrypt, mai in chiaro)
- Valuta predefinita scelta dall'utente
- Lingua preferita (italiano/inglese)
2.2 Dati di utilizzo dell'app
- Trasferte: titolo, destinazione, date, cliente, note
- Spese: importo, valuta, categoria, esercente, data, note, ricevuta
- Tragitti: indirizzi partenza/arrivo, distanza, mezzo, data
- Categorie personalizzate (utenti Pro)
- Stato dell'abbonamento Pro
2.3 Immagini delle ricevute
Quando l'utente effettua la scansione di uno scontrino o carica una foto da galleria, l'immagine viene inviata al backend ExpensiLife e successivamente:
- Trasmessa al servizio Google Gemini (Generative Language API) per l'estrazione automatica di importo, data, esercente e categoria mediante OCR/AI
- Memorizzata sul backend (codifica base64 nel database) per essere riutilizzata nei report e nei PDF allegati alle email
- Allegata alle email di rendicontazione che l'utente decide di inviare ai propri destinatari
Google Gemini riceve esclusivamente il contenuto dell'immagine ai fini dell'elaborazione OCR; non riceve dati anagrafici dell'utente né altri dati di profilo.
2.4 Dati tecnici
- Identificativo di sessione (token, conservato in expo-secure-store sul dispositivo)
- Indirizzo IP (nei log applicativi, max 30 giorni)
- Sistema operativo, versione app, identificativo dispositivo (solo per fini diagnostici interni)
- Contatori di utilizzo OCR (per le quote del piano)
2.5 Dati di abbonamento e pagamento
ExpensiLife NON gestisce direttamente dati di pagamento (carte di credito, conti bancari). Gli abbonamenti Pro vengono gestiti tramite RevenueCat, App Store (Apple) e Google Play (Google). Riceviamo solo: identificativo abbonamento, data scadenza, esito transazione.
3. FinalitĂ del trattamento
- Registrazione e gestione account — base: contratto (art. 6.1.b GDPR)
- Erogazione delle funzionalità dell'app — base: contratto
- Invio email di rendicontazione — base: contratto + richiesta utente
- Gestione abbonamento Pro — base: contratto
- Adempimenti fiscali e contabili — base: obbligo di legge (art. 6.1.c)
- Sicurezza dei sistemi e prevenzione frodi — base: legittimo interesse del Titolare (art. 6.1.f)
- Pubblicità non personalizzata in-app per utenti Free (Google AdMob) — base: legittimo interesse
- Pubblicità personalizzata in-app per utenti Free (Google AdMob, ove applicabile) — base: consenso esplicito (art. 6.1.a) raccolto via banner CMP/UMP all'avvio
- Notifica interna al Titolare delle nuove registrazioni — base: legittimo interesse per monitoraggio antifrode (art. 6.1.f)
3.1 Notifica automatica registrazioni al Titolare
Al momento della registrazione, il sistema invia un'email automatica all'indirizzo support@expensilife.org (gestito dal Titolare) con un set MINIMIZZATO di dati ai sensi del principio di minimizzazione (art. 5.1.c GDPR):
- user_id
- timestamp di registrazione
- hash dell'IP (SHA-256, NON l'IP in chiaro)
- paese (codice ISO-2 dal CDN, se disponibile)
- user-agent abbreviato (browser/OS, max 120 caratteri — niente IDFA/AAID)
Mai inviati: nome, data di nascita, valuta, lingua, stato Pro, tariffa rimborso km, password (neanche in formato hashed), codici di verifica email, codici di reset password, segreti di autenticazione.
Finalità : monitoraggio antifrode (registrazioni di massa, account fraudolenti). Conservazione email: 12 mesi dalla ricezione, dopodiché eliminate dal mailbox del Titolare. Puoi richiederne la cancellazione anticipata contattando il Titolare.
4. ModalitĂ di trattamento e sicurezza
- Password salvate solo come hash bcrypt (non reversibili)
- Connessioni TLS/HTTPS in transito per ogni comunicazione client/server
- Cifratura at-rest del database fornita da MongoDB Atlas (AES-256 a livello di storage)
- Token di sessione cifrati sul dispositivo via expo-secure-store (Keychain iOS / Keystore Android)
- Cookie di sessione web (sito) marcati httpOnly + secure + samesite=none
- Chiavi API mai esposte al client; solo il backend dialoga con Google, Brevo, MongoDB Atlas
- Access control basato su token di sessione legati all'user_id; nessuna API leggibile cross-user
5. Responsabili esterni del trattamento
I dati possono essere trattati da terze parti che forniscono servizi strumentali al funzionamento dell'app, in qualitĂ di Responsabili ex art. 28 GDPR:
- MongoDB Atlas — database utenti, trasferte, spese (UE/USA)
- Render — hosting backend (USA)
- Google Gemini API — OCR/AI ricevute (USA)
- Google Maps Platform — geocoding e calcolo distanze (USA)
- Google AdMob — pubblicità per utenti Free (USA)
- Google Identity / OAuth — autenticazione "Continua con Google" (USA)
- Brevo — invio email transazionali (UE - Francia)
- RevenueCat — gestione abbonamenti in-app (USA)
- Apple Inc. — App Store e in-app purchase iOS (USA)
- Google LLC — Google Play e in-app purchase Android (USA)
I trasferimenti extra-UE avvengono, ove applicabile, mediante strumenti riconosciuti dagli artt. 45-46 GDPR — incluse le Standard Contractual Clauses (SCC) approvate dalla Commissione Europea e/o l'EU-US Data Privacy Framework — secondo le scelte del singolo provider al momento del trattamento.
5.1 Google Gemini e training AI
Le immagini delle ricevute inviate a Google Gemini per l'OCR rientrano nei termini delle Google AI APIs (paid tier / Gemini API): Google dichiara che i dati inviati tramite l'API NON vengono utilizzati per l'addestramento di modelli generalizzati. Riferimento contrattuale: termini "Generative Language API" / "Vertex AI" / "Gemini API". L'utente può comunque scegliere di non utilizzare la scansione AI e inserire le spese manualmente.
6. Periodo di conservazione
- Dati account: per tutta la durata dell'utilizzo + 30 giorni dopo cancellazione
- Trasferte, spese, scontrini: come sopra
- Log applicativi (incluso IP): massimo 30 giorni
- Dati abbonamento (fatturazione): 10 anni per obblighi fiscali italiani
- Email transazionali (Brevo): policy Brevo, tipicamente 30-60 giorni
- Email di notifica registrazioni al Titolare: 12 mesi dalla ricezione
7. Storage locale e identificativi su mobile
L'app non utilizza cookie persistenti per il funzionamento principale (ExpensiLife è un'app nativa). Sono invece utilizzati:
- expo-secure-store (Keychain iOS / Keystore Android) per il token di sessione, cifrato a livello di sistema operativo
- AsyncStorage per preferenze locali non sensibili (lingua, ultimo tab, stato di consenso)
- Identificativo pubblicitario del dispositivo (IDFA su iOS, AAID su Android) — solo se l'utente Free ha prestato il consenso e SOLO ai fini AdMob
Sul sito web (expensilife.org) sono utilizzati esclusivamente cookie tecnici di sessione (httpOnly + secure), non bloccanti, indispensabili al funzionamento del frontend.
8. Diritti dell'interessato
In qualunque momento puoi esercitare i diritti ex artt. 15-22 GDPR:
- Diritto di accesso (art. 15)
- Diritto di rettifica (art. 16)
- Diritto alla cancellazione - oblio (art. 17)
- Diritto di limitazione del trattamento (art. 18)
- Diritto alla portabilitĂ dei dati (art. 20)
- Diritto di opposizione (art. 21)
L'app mette a disposizione strumenti dedicati in Profilo → Account e sicurezza: "Scarica i tuoi dati" e "Elimina account". Le richieste possono anche essere inviate a lolicatoalberto@gmail.com. L'utente ha inoltre il diritto di proporre reclamo al Garante per la protezione dei dati personali (www.garanteprivacy.it).
9. PubblicitĂ e consenso (utenti Free)
Gli utenti Free visualizzano pubblicitĂ interstitial fornite da Google AdMob (es. alla creazione di una nuova trasferta o all'invio di un rendiconto). Distinguiamo:
- PubblicitĂ NON personalizzata: erogata di default in UE/SEE/UK/Svizzera senza richiedere consenso (base: legittimo interesse).
- Pubblicità PERSONALIZZATA: erogata SOLO se l'utente ha prestato consenso esplicito tramite il banner CMP/UMP integrato (Google User Messaging Platform). Il consenso è revocabile in qualsiasi momento da Profilo → Account e sicurezza → "Preferenze pubblicità ".
Sottoscrivendo Pro non viene mostrata alcuna pubblicitĂ e non vengono utilizzati identificativi pubblicitari.
10. Consenso, revoca e preferenze
Al primo accesso l'app mostra una schermata dedicata per la prestazione del consenso: l'utente accetta i Termini e l'Informativa Privacy (obbligatorio per usare il Servizio) e può opzionalmente attivare/disattivare la pubblicità personalizzata. Gli stati di consenso sono memorizzati lato backend e revocabili in qualsiasi momento da Profilo → Account e sicurezza → "Preferenze privacy". La revoca produce effetto immediato per i trattamenti futuri; non incide sulla liceità dei trattamenti precedenti.
11. Minori
L'app non è destinata a utenti minori di 16 anni. Si tratta di una scelta del Titolare per uniformità della soglia in tutta l'UE; in Italia il consenso digitale ex art. 8 GDPR è fissato a 14 anni dal D.Lgs. 196/2003 e successive modifiche, ma il Titolare ha optato per una soglia più alta. Non raccogliamo consapevolmente dati di minori sotto i 16 anni; se ne venissimo a conoscenza, provvederemmo alla cancellazione immediata.
12. Modifiche all'informativa
La presente informativa può essere aggiornata. La versione più recente è sempre disponibile in app (Profilo → Termini e privacy) e sul sito ufficiale https://expensilife.org/privacy. In caso di modifiche sostanziali sarai avvisato all'avvio dell'app o via email.
13. Contatti
Email: lolicatoalberto@gmail.com
Titolare: Alberto Lolicato — Ariccia (RM), Italia
Codice Fiscale: LLCLRT92R20C351C