Documento legale

Informativa sulla Privacy

Ai sensi del Regolamento UE 2016/679 (GDPR) e del D.Lgs. 196/2003

Ultima modifica: 26 maggio 2026 Versione: 1.0 Territorio: Unione Europea
Legal document

Privacy Policy

Pursuant to EU Regulation 2016/679 (GDPR)

Last updated: May 26, 2026 Version: 1.0
Indice
Table of Contents
  1. 1. Titolare del trattamentoData Controller
  2. 2. Dati raccoltiData collected
  3. 3. Finalità e basi giuridichePurposes & legal bases
  4. 4. Servizi di terze partiThird-party services
  5. 5. Trasferimento datiData transfers
  6. 6. Conservazione dei datiData retention
  7. 7. Diritti dell'interessatoYour rights
  8. 8. SicurezzaSecurity
  9. 9. MinoriMinors
  10. 10. Modifiche alla policyChanges to this policy
  11. 11. ContattiContact
Art. 1
Art. 1

Titolare del trattamento

Data Controller

Il titolare del trattamento dei dati personali è il soggetto che sviluppa e distribuisce l'applicazione mobile Dispensina, raggiungibile al sito dispensina.app.

Per qualsiasi comunicazione relativa al trattamento dei dati, l'utente può contattarci all'indirizzo email: info@dispensina.app.

The data controller is the individual developer who builds and distributes the mobile application Dispensina, available at dispensina.app.

For any privacy-related inquiries, please contact: info@dispensina.app.


Art. 2
Art. 2

Dati raccolti

Data collected

Raccogliamo solo i dati strettamente necessari al funzionamento dell'applicazione. Nessun dato viene venduto a terzi.

Categoria Dati specifici Perché
Account Indirizzo email, password (hashed), nome visualizzato Autenticazione e identificazione dell'account
Contenuti dispensa Nomi prodotti, quantità, date di scadenza, categorie, note, stato "aperto", data apertura Funzionamento core dell'app
Liste della spesa Nomi articoli, quantità, categoria, stato spuntato Funzionamento core dell'app
Ricettario Nome ricetta, ingredienti, procedimento, tempi, porzioni, foto opzionale Salvataggio ricette personali
Carte fedeltà Nome negozio, valore barcode Visualizzazione rapida carte
Dati di utilizzo Eventi anonimi o pseudonimizzati (es. product_added, list_created) Analisi prodotto, miglioramento app
Abbonamento Stato abbonamento, tipo piano, storico transazioni (gestito da RevenueCat) Gestione accesso funzioni Premium
Fotocamera Frame video in tempo reale per lettura barcode (non registrati né archiviati) Scanner codici a barre (Premium)

Non raccogliamo dati di localizzazione GPS, contatti della rubrica, né dati biometrici.

We only collect data strictly necessary for the application to function. No data is ever sold to third parties.

Category Specific data Purpose
Account Email address, password (hashed), display name Authentication and account identification
Pantry content Product names, quantities, expiry dates, categories, notes, "opened" status, opening date Core app functionality
Shopping lists Item names, quantities, category, checked status Core app functionality
Recipe book Recipe name, ingredients, steps, timing, servings, optional photo Personal recipe storage
Loyalty cards Store name, barcode value Quick card display
Usage data Anonymous or pseudonymised events (e.g. product_added, list_created) Product analytics, app improvement
Subscription Subscription status, plan type, transaction history (managed by RevenueCat) Premium feature access management
Camera Real-time video frames for barcode reading (never recorded or stored) Barcode scanner (Premium)

We do not collect GPS location data, contacts, or biometric data.


Art. 3
Art. 3

Finalità e basi giuridiche

Purposes and legal bases

Finalità Base giuridica (GDPR)
Erogazione del servizio (gestione account, dispensa, liste, ricette) Esecuzione del contratto — Art. 6(1)(b)
Gestione abbonamenti e pagamenti Esecuzione del contratto — Art. 6(1)(b)
Invio notifiche sulle scadenze (locale, sul dispositivo) Consenso — Art. 6(1)(a), revocabile in qualsiasi momento
Analisi anonima dell'utilizzo per migliorare il prodotto Legittimo interesse — Art. 6(1)(f)
Adempimento di obblighi legali Obbligo legale — Art. 6(1)(c)
Purpose Legal basis (GDPR)
Service delivery (account, pantry, lists, recipes) Contract performance — Art. 6(1)(b)
Subscription and payment management Contract performance — Art. 6(1)(b)
Expiry reminder notifications (local, on-device) Consent — Art. 6(1)(a), revocable at any time
Anonymous usage analytics to improve the product Legitimate interest — Art. 6(1)(f)
Compliance with legal obligations Legal obligation — Art. 6(1)(c)

Art. 4
Art. 4

Servizi di terze parti

Third-party services

Dispensina si avvale dei seguenti fornitori di servizi terzi, ciascuno con le proprie policy sulla privacy:

Fornitore Funzione Dati condivisi Sede
Supabase Database, autenticazione, storage Account, contenuti dispensa/liste/ricette UE (AWS eu-central-1)
RevenueCat Gestione abbonamenti iOS ID utente, stato abbonamento, transazioni USA (con garanzie adeguate)
PostHog / Mixpanel Analytics prodotto Eventi anonimi/pseudonimizzati UE (PostHog cloud EU) / USA
Open Food Facts Database prodotti (barcode lookup) Codice barcode scansionato Francia (open data)
Apple App Store Distribuzione app e acquisti in-app Gestito direttamente da Apple USA

I fornitori con sede negli USA operano nel rispetto delle garanzie previste dalle clausole contrattuali standard (SCC) adottate dalla Commissione Europea, oppure sono certificati nel rispetto di accordi equivalenti.

Dispensina uses the following third-party service providers, each with their own privacy policy:

Provider Function Data shared Location
Supabase Database, authentication, storage Account, pantry/list/recipe content EU (AWS eu-central-1)
RevenueCat iOS subscription management User ID, subscription status, transactions USA (with adequate safeguards)
PostHog / Mixpanel Product analytics Anonymous/pseudonymised events EU (PostHog EU cloud) / USA
Open Food Facts Product database (barcode lookup) Scanned barcode value France (open data)
Apple App Store App distribution and in-app purchases Managed directly by Apple USA

US-based providers operate under Standard Contractual Clauses (SCC) as adopted by the European Commission, or equivalent adequate safeguards.


Art. 5
Art. 5

Trasferimento dati extra-UE

Data transfers outside the EU

Il database principale di Dispensina è ospitato su Supabase in un datacenter nell'Unione Europea (AWS eu-central-1, Francoforte). Alcuni fornitori secondari (RevenueCat, eventualmente Mixpanel) operano da server negli Stati Uniti.

In tutti i casi in cui i dati vengono trasferiti al di fuori dello Spazio Economico Europeo (SEE), ci assicuriamo che il trasferimento avvenga in conformità al GDPR, in particolare tramite:

  • Clausole contrattuali standard approvate dalla Commissione Europea (Art. 46 GDPR)
  • Garanzie tecniche aggiuntive (crittografia in transito e a riposo)

Dispensina's primary database is hosted on Supabase in an EU datacenter (AWS eu-central-1, Frankfurt). Some secondary providers (RevenueCat, optionally Mixpanel) operate from US servers.

Whenever data is transferred outside the European Economic Area (EEA), we ensure the transfer complies with GDPR, specifically through:

  • Standard Contractual Clauses approved by the European Commission (Art. 46 GDPR)
  • Additional technical safeguards (encryption in transit and at rest)

Art. 6
Art. 6

Conservazione dei dati

Data retention

Dati Periodo di conservazione
Dati account e contenuti (dispensa, liste, ricette) Per tutta la durata dell'account attivo
Dati account dopo cancellazione Eliminazione entro 30 giorni dalla richiesta
Dati di analisi (anonimizzati) Fino a 24 mesi, poi aggregati o eliminati
Dati di abbonamento (RevenueCat) Secondo la policy di RevenueCat (min. obblighi fiscali)
Log di sicurezza 90 giorni

L'utente può richiedere l'eliminazione del proprio account e di tutti i dati associati direttamente dall'app, nella sezione Impostazioni → Zona pericolosa → Elimina account.

Data Retention period
Account data and content (pantry, lists, recipes) For the duration of the active account
Account data after deletion Deleted within 30 days of request
Analytics data (anonymised) Up to 24 months, then aggregated or deleted
Subscription data (RevenueCat) Per RevenueCat policy (minimum statutory obligations)
Security logs 90 days

You can request deletion of your account and all associated data directly from the app, under Settings → Danger zone → Delete account.


Art. 7
Art. 7

I tuoi diritti

Your rights

In quanto interessato ai sensi del GDPR, hai i seguenti diritti, esercitabili gratuitamente inviando una richiesta a info@dispensina.app:

Accesso

Ottenere conferma del trattamento e copia dei dati che ti riguardano (Art. 15 GDPR).

Rettifica

Correggere dati inesatti o incompleti (Art. 16 GDPR).

Cancellazione

Richiedere la cancellazione dei tuoi dati ("diritto all'oblio", Art. 17 GDPR). Disponibile anche in-app.

Portabilità

Ricevere i tuoi dati in formato strutturato e leggibile da macchina (Art. 20 GDPR).

Limitazione

Richiedere la limitazione del trattamento in determinate circostanze (Art. 18 GDPR).

Opposizione

Opporti al trattamento basato su legittimo interesse, inclusa l'analisi del comportamento (Art. 21 GDPR).

Revoca del consenso

Revocare il consenso (es. notifiche) in qualsiasi momento, senza effetto retroattivo.

Reclamo all'Autorità

Presentare reclamo al Garante Privacy italiano (www.garanteprivacy.it) o all'autorità del tuo paese UE.

Risponderemo alla tua richiesta entro 30 giorni, con eventuale proroga di altri 60 giorni per richieste complesse.

As a data subject under GDPR, you have the following rights, exercisable free of charge by contacting info@dispensina.app:

Access

Obtain confirmation of processing and a copy of the data we hold about you (Art. 15 GDPR).

Rectification

Correct inaccurate or incomplete data (Art. 16 GDPR).

Erasure

Request deletion of your data ("right to be forgotten", Art. 17 GDPR). Also available in-app.

Portability

Receive your data in a structured, machine-readable format (Art. 20 GDPR).

Restriction

Request restriction of processing in certain circumstances (Art. 18 GDPR).

Objection

Object to processing based on legitimate interest, including behavioural analytics (Art. 21 GDPR).

Withdraw consent

Withdraw consent (e.g. notifications) at any time, without retroactive effect.

Lodge a complaint

Lodge a complaint with the Italian DPA (www.garanteprivacy.it) or your local EU supervisory authority.

We will respond to your request within 30 days, with a possible extension of 60 additional days for complex requests.


Art. 8
Art. 8

Sicurezza dei dati

Data security

Adottiamo misure tecniche e organizzative adeguate per proteggere i tuoi dati da accessi non autorizzati, perdita o divulgazione:

  • Crittografia in transito tramite TLS 1.2+ per tutte le comunicazioni
  • Crittografia a riposo del database (Supabase / PostgreSQL)
  • Password mai memorizzate in chiaro (hashing con bcrypt via Supabase Auth)
  • Row Level Security (RLS) su PostgreSQL: ogni utente accede solo ai propri dati
  • Accesso amministrativo limitato al minimo necessario

In caso di violazione dei dati che comporti un rischio elevato per i tuoi diritti e libertà, ti notificheremo senza ingiustificato ritardo, in conformità all'Art. 34 GDPR.

We implement appropriate technical and organisational measures to protect your data from unauthorised access, loss, or disclosure:

  • TLS 1.2+ encryption in transit for all communications
  • Database encryption at rest (Supabase / PostgreSQL)
  • Passwords never stored in plain text (bcrypt hashing via Supabase Auth)
  • Row Level Security (RLS) on PostgreSQL: each user can only access their own data
  • Administrative access limited to the minimum necessary

In the event of a data breach likely to result in a high risk to your rights and freedoms, we will notify you without undue delay, in accordance with Art. 34 GDPR.


Art. 9
Art. 9

Minori

Minors

Dispensina è destinata a utenti di età pari o superiore a 16 anni. Non raccogliamo consapevolmente dati personali di minori di 16 anni. Se sei un genitore o tutore e ritieni che tuo figlio abbia creato un account, ti preghiamo di contattarci a info@dispensina.app per richiederne l'eliminazione immediata.

Dispensina is intended for users aged 16 or older. We do not knowingly collect personal data from children under 16. If you are a parent or guardian and believe your child has created an account, please contact us at info@dispensina.app to request immediate deletion.


Art. 10
Art. 10

Modifiche alla presente policy

Changes to this policy

Ci riserviamo il diritto di aggiornare questa informativa per riflettere modifiche al servizio, a obblighi di legge o a nuovi trattamenti dei dati. In caso di modifiche sostanziali, ti notificheremo tramite un avviso in-app o via email almeno 15 giorni prima dell'entrata in vigore.

La data dell'ultima modifica è sempre riportata in cima a questo documento. Il continuato utilizzo dell'app dopo la pubblicazione delle modifiche costituisce accettazione della policy aggiornata.

We reserve the right to update this policy to reflect changes to the service, legal obligations, or new data processing activities. For material changes, we will notify you via an in-app notice or email at least 15 days before the changes take effect.

The date of the last update is always shown at the top of this document. Continued use of the app after publication of changes constitutes acceptance of the updated policy.


Art. 11
Art. 11

Contatti

Contact

Per qualsiasi domanda relativa al trattamento dei dati o per esercitare i tuoi diritti:

Titolare del trattamento

Dispensina — dispensina.app

Email: info@dispensina.app

Risponderemo entro 30 giorni dalla ricezione della richiesta.

For any questions about data processing or to exercise your rights:

Data Controller

Dispensina — dispensina.app

Email: info@dispensina.app

We will respond within 30 days of receiving your request.