Polityka prywatności
Ostatnia aktualizacja: 6 października 2026 r. Obowiązuje od dnia uruchomienia nowych wspólnych list (zaproszenie linkiem).1. Kto odpowiada za Twoje dane
Ta polityka opisuje, jak przetwarzamy dane podczas korzystania z aplikacji ProstaLista (dawniej KupMleko): w wersji internetowej pod adresem prostalista.pl oraz w aplikacji na Androida z Google Play. Aplikacja z Google Play wyświetla tę samą aplikację internetową w przeglądarce zainstalowanej na telefonie (najczęściej Chrome).
Administratorem danych osobowych jest Adam Burdzy, osoba fizyczna prowadząca projekt ProstaLista. W sprawach związanych z prywatnością — w tym gdy potrzebujesz adresu korespondencyjnego administratora — napisz na adres e-mail: kontakt@prostalista.pl.
2. Najważniejsze zasady
- Bez konta: korzystanie z aplikacji nie wymaga podawania imienia i nazwiska, adresu e-mail ani numeru telefonu. Przy wspólnej liście możesz — ale nie musisz — podać imię widoczne dla domowników (sekcja 4).
- Bez lokalizacji: aplikacja nie korzysta z lokalizacji urządzenia (GPS).
- Bez narzędzi reklamowych i analitycznych innych firm: aplikacja nie zawiera takich narzędzi (np. Google Analytics) i nie pobiera skryptów ani czcionek z serwerów innych firm.
- Bez sprzedaży danych: nie sprzedajemy ani nie wynajmujemy list zakupów i nie wykorzystujemy ich do profilowania reklamowego.
- Tylko potrzebny zakres: serwer otrzymuje dane opisane niżej wyłącznie po to, aby wykonać funkcję, z której korzystasz, oraz chronić usługę przed nadużyciami.
- Dla osób pełnoletnich: aplikacja jest przeznaczona dla osób, które ukończyły 18 lat. Nie kierujemy jej do dzieci i świadomie nie zbieramy danych osób poniżej 18. roku życia; wymaga tego też usługa Google Gemini, z której korzystamy (sekcja 6). Jeśli dowiemy się, że z aplikacji korzystała osoba niepełnoletnia, usuniemy jej dane z serwera na prośbę rodzica lub opiekuna (sekcja 14).
3. Dane zapisane na Twoim urządzeniu
Te dane są zapisane w pamięci przeglądarki lub aplikacji na Twoim urządzeniu:
- Pamięć localStorage: lista zakupów, Twoje kolejności alejek, wybrany kraj i sklep, ustawienia (motyw, język, przełączniki), widoczny w Ustawieniach licznik użyć odczytu zdjęć i dyktowania (liczony tylko na urządzeniu), informacja o tym, które okna i podpowiedzi zostały już wyświetlone (w wersji internetowej także liczba zakończonych zakupów, od której zależy wyświetlanie podpowiedzi), kopia hitów z gazetek, własny klucz Gemini API (jeśli go wpiszesz) oraz kod dotychczasowej wspólnej listy (jeśli była używana).
- Pamięć sesji przeglądarki (sessionStorage), czyszczona po zamknięciu karty lub aplikacji: kod z linku zaproszenia — do czasu dołączenia do listy — oraz informacja, czy aplikacja została uruchomiona z Google Play.
- Baza IndexedDB (prostalista_v2_db): kopia wspólnej listy (nazwa, produkty, osoby na liście), zmiany czekające na wysłanie, gdy nie ma internetu, identyfikator sesji i imię lub nazwa Twojego urządzenia, a u właściciela listy także klucz odzyskiwania (14 słów), aby można go było później wyświetlić w Ustawieniach.
- Ciasteczko sesji — opisane w sekcji 5.
- Kopia plików aplikacji (pamięć podręczna), dzięki której aplikacja otwiera się także przy słabym zasięgu.
Lista prywatna nie jest wysyłana na serwer, dopóki nie przeniesiesz jej produktów do wspólnej listy albo nie poprosisz o odczytanie zdjęcia, nagrania lub dłuższego tekstu (sekcja 6). Dane z urządzenia usuniesz, czyszcząc dane witryny lub aplikacji albo odinstalowując aplikację; samą listę wyczyścisz przyciskiem „Wyczyść listę zakupów”. Samo wyczyszczenie pamięci podręcznej nie zawsze usuwa te dane.
4. Wspólna lista: co zapisujemy na serwerze
Wspólna lista jest opcjonalna i działa przez nasz serwer: tworzysz ją w Ustawieniach i zapraszasz domowników jednorazowym linkiem. Połączenie z serwerem jest szyfrowane (HTTPS). Treść listy nie jest szyfrowana „od końca do końca” — serwer odczytuje ją, aby przekazywać zmiany wszystkim uczestnikom.
Gdy korzystasz ze wspólnej listy, na serwerze zapisujemy:
- Listę: jej nazwę oraz produkty — nazwę, ilość, dział, informację, czy produkt jest kupiony, kolejność i daty zmian. Tworząc wspólną listę, przenosisz do niej produkty, które masz na liście w telefonie; dołączając do listy, decydujesz, czy dodać do niej swoje produkty.
- Uczestników: dla każdego urządzenia na liście — rolę (właściciel lub edytor), datę dołączenia i stan dostępu, a także imię lub nazwę urządzenia z zapisu urządzenia (sekcja 5).
- Zaproszenia: nie przechowujemy kodu z linku, tylko jego skrót (hash), datę utworzenia, termin ważności (24 godziny) oraz informację, które urządzenie utworzyło zaproszenie i które go użyło. Każdy link działa tylko raz.
- Klucz odzyskiwania: 14 słów pokazujemy właścicielowi przy tworzeniu listy. Na serwerze nie zapisujemy samych słów — tylko ich skróty kryptograficzne (utworzone z tajnym kluczem serwera i z losową „solą”), które pozwalają sprawdzić, czy wpisany klucz jest poprawny.
- Zapis zmian: dla każdej zmiany na liście — jej identyfikator i wynik (w tym nazwę i ilość produktu, którego dotyczyła), urządzenie, które ją wysłało, oraz czas. Dzięki temu zmiana wysłana ponownie, np. po zerwaniu połączenia, nie zapisze się dwa razy.
Kto widzi wspólną listę: wszyscy jej uczestnicy widzą produkty, nazwę listy oraz imiona lub nazwy urządzeń pozostałych osób; właściciel widzi też aktywne zaproszenia. Do listy dołącza osoba, która jako pierwsza użyje linku zaproszenia — wysyłaj go tylko osobom, z którymi robisz zakupy. Nie wpisuj na wspólną listę informacji wrażliwych: nazwa produktu może ujawnić prywatną informację, np. gdy zawiera imię lub nazwę leku.
Co możesz zrobić w Ustawieniach:
- „Opuść wspólną listę” — Twoje urządzenie traci dostęp do listy, a jej produkty zostają na nim jako lista prywatna. Lista na serwerze działa dalej dla pozostałych osób. Jedyny właściciel nie może opuścić listy — może przekazać zarządzanie innemu urządzeniu albo usunąć listę.
- „Usuń wspólną listę z serwera” (tylko właściciel) — natychmiast i trwale usuwa z bazy listę wraz z produktami, uczestnikami, zaproszeniami i zapisem zmian, u wszystkich uczestników.
- „Odbierz” przy osobie w sekcji „Osoby i urządzenia” oraz „Zamknij aktywne zaproszenia” (tylko właściciel) — odbierają dostęp wybranemu urządzeniu albo unieważniają niewykorzystane linki.
- „Zmień imię” — zmienia imię widoczne dla domowników.
5. Ciasteczko sesji i zapis urządzenia
Wspólne listy działają bez konta i hasła — serwer rozpoznaje Twoje urządzenie po ciasteczku sesji. Przy uruchomieniu aplikacji z dostępem do internetu aplikacja zakłada na serwerze zapis urządzenia albo odświeża już istniejący, także wtedy, gdy nie korzystasz ze wspólnej listy.
- Ciasteczko: nazwa
__Host-pl_sess. Zawiera losowy ciąg znaków, jest wysyłane wyłącznie przez HTTPS do prostalista.pl, jest niedostępne dla skryptów na stronie (HttpOnly), ma ustawienie SameSite=Lax i wygasa po 12 miesiącach od ostatniego uruchomienia aplikacji (przy każdym uruchomieniu z dostępem do internetu jego ważność jest przedłużana). To jedyne ciasteczko ustawiane przez aplikację; nie służy do reklamy ani analityki. - Zapis urządzenia na serwerze: losowy identyfikator, skrót (hash) ciasteczka — samego ciasteczka nie przechowujemy — imię podane przy wspólnej liście albo nazwa typu urządzenia ustalona na podstawie informacji przekazywanych przez przeglądarkę (np. „Telefon Android”), data utworzenia oraz data ostatniego użycia, odświeżana przy uruchomieniu aplikacji i przy korzystaniu ze wspólnej listy.
- Jak długo: zapis urządzenia nie jest obecnie usuwany automatycznie — zostaje także po opuszczeniu lub usunięciu wspólnej listy i po wygaśnięciu ciasteczka. Możesz poprosić o jego usunięcie (sekcja 14).
6. Zdjęcie kartki, dyktowanie i dłuższy tekst (Google Gemini)
Aplikacja korzysta z aparatu, galerii lub mikrofonu dopiero po wybraniu przez Ciebie odpowiedniej funkcji i udzieleniu zgody w urządzeniu. Odmowa dostępu oznacza jedynie, że ta funkcja nie zadziała.
- Zdjęcie: wybrane zdjęcie kartki, zrzutu ekranu albo przepisu jest wysyłane przez HTTPS na nasz serwer, a następnie do Google Gemini API — usługi sztucznej inteligencji firmy Google, której warunki wymagają, aby korzystające z niej aplikacje nie były kierowane do osób poniżej 18 lat — która odczytuje z niego produkty. Plik jest wysyłany w takiej postaci, w jakiej zapisał go telefon, więc może zawierać dołączone przez aparat informacje, np. datę wykonania i model telefonu, a jeśli aparat ma włączone zapisywanie lokalizacji — także miejsce wykonania zdjęcia.
- Dyktowanie: po dotknięciu mikrofonu aplikacja nagrywa dźwięk (do 30 sekund). Jeśli wykryje mowę, nagranie trafia przez HTTPS na nasz serwer, a następnie do Google Gemini API, które zamienia je na listę produktów; gdy mowy nie wykryje, nagranie nie jest wysyłane. Jeśli telefon nie pozwala na nagrywanie, aplikacja korzysta z rozpoznawania mowy wbudowanego w przeglądarkę — działa ono na zasadach dostawcy przeglądarki (np. Google w Chrome), a rozpoznany tekst trafia do pola wpisywania.
- Wklejony lub wpisany tekst: krótki tekst (kilka produktów) aplikacja rozpoznaje na urządzeniu i nie wysyła go do usługi Google Gemini. Dłuższy tekst albo przepis (np. ze składnikami i miarami) jest wysyłany przez HTTPS na nasz serwer, a następnie do Google Gemini API, aby wyodrębnić z niego produkty.
Własny klucz Gemini API (opcja dla programistów): jeśli w Ustawieniach, w sekcji „Zaawansowane”, wpiszesz własny klucz, zdjęcia i dłuższy tekst są wysyłane z Twojego urządzenia bezpośrednio do Google, z pominięciem naszego serwera, na warunkach Twojego konta Google. Klucz jest zapisany wyłącznie na urządzeniu (localStorage) i nie trafia na nasz serwer. Dyktowanie zawsze przechodzi przez nasz serwer.
Co zostaje u nas, a co u Google: nasz serwer nie zapisuje kopii zdjęcia, nagrania ani tekstu po zakończeniu przetwarzania; zapisujemy wyłącznie informacje techniczne opisane w sekcji 8. Google przetwarza przesłany materiał zgodnie z warunkami usługi Gemini API. Według tych warunków i zasad korzystania z Gemini API (stan na 2 października 2026 r.) Google przetwarza przesyłane przez nas treści jako podmiot przetwarzający, nie wykorzystuje ich do ulepszania swoich produktów i przechowuje zapytania oraz odpowiedzi przez ograniczony czas wyłącznie w celu wykrywania nadużyć (w dokumentacji Google: 55 dni). Google może przetwarzać dane także poza Europejskim Obszarem Gospodarczym — na zasadach opisanych w swoich warunkach przetwarzania danych.
7. Hity z gazetek
Hity z gazetek przygotowujemy na serwerze z publicznie dostępnych gazetek sieci handlowych; nie zawierają one danych o użytkownikach. Aplikacja pobiera je z naszego serwera, a wybrany kraj i sklep zapisuje tylko na urządzeniu. Link do gazetki otwiera stronę sieci handlowej, na której obowiązują zasady tej strony.
8. Adres IP, liczniki zapytań i logi techniczne
Każde połączenie z serwerem ujawnia adres IP urządzenia. Używamy go wyłącznie do ograniczania liczby zapytań, wykrywania nadużyć i utrzymania działania aplikacji — nie do reklamy, profilowania ani ustalania lokalizacji.
- Wspólne listy: liczniki prób zapisujemy jako skrót (hash) utworzony z adresu IP lub identyfikatora sesji, tajnego klucza serwera i oznaczenia przedziału czasu (minuty albo godziny), razem z liczbą prób. Samego adresu IP nie zapisujemy. Po upływie przedziału licznik nie jest już używany, ale jego wpis nie jest obecnie usuwany automatycznie.
- Zdjęcia i dyktowanie: godzinowe liczniki zapytań mają nazwę będącą skrótem adresu IP i oznaczenia godziny; nie mają obecnie stałego terminu automatycznego usunięcia. Serwer prowadzi też ogólny dzienny licznik dyktowań, niepowiązany z użytkownikiem.
- Log techniczny dyktowania: data i godzina, tryb (nagranie lub tekst), rozmiar i format, model, kod odpowiedzi i wynik przetwarzania, liczba prób i rozpoznanych pozycji, czas działania oraz skrócony skrót adresu IP — bez nagrania i bez treści listy. Log jest usuwany automatycznie po 30 dniach. Odczyt zdjęć i tekstu nie ma osobnego logu.
- Logi dostawcy hostingu: dostawca hostingu (sekcja 12) może zapisywać w standardowych logach serwera m.in. adres IP, datę i godzinę, adres otwieranej strony oraz informacje o przeglądarce — według własnych okresów przechowywania. Tekst udostępniony do aplikacji z innej aplikacji (funkcja „Udostępnij”) jest przekazywany w adresie otwieranej strony, więc może znaleźć się w takim logu. Z przygotowanych przez dostawcę hostingu zestawień tworzonych na podstawie logów (np. liczby odwiedzin) możemy korzystać w formie zbiorczej.
9. Jak długo przechowujemy dane
- Dane na urządzeniu: do czasu, aż je usuniesz (sekcja 3).
- Wspólna lista: do czasu usunięcia jej przez właściciela. Lista, której przez 60 dni nikt z uczestników nie otworzy w aplikacji ani niczego w niej nie zmieni, jest usuwana w całości podczas najbliższego automatycznego porządkowania bazy.
- Usunięte produkty: produkt usunięty ze wspólnej listy zostaje w bazie z oznaczeniem „usunięty” przez 90 dni, aby telefon, który długo był bez internetu, nie przywrócił go na listę. Potem zostaje po nim tylko losowy identyfikator i data usunięcia — do czasu usunięcia całej listy.
- Zapis zmian: 90 dni.
- Zaproszenia i informacje o uczestnikach (także o osobach, które opuściły listę): do czasu usunięcia listy.
- Zapis urządzenia: sekcja 5.
- Liczniki zapytań i log dyktowania: sekcja 8.
- Zdjęcia, nagrania i teksty do odczytu: nasz serwer ich nie przechowuje; o przechowywaniu przez Google piszemy w sekcji 6.
- Kopie zapasowe: przed aktualizacjami serwera wykonujemy kopie plików i bazy, a dostawca hostingu wykonuje własne kopie zapasowe. Dane usunięte z bazy mogą pozostawać w takich kopiach do czasu ich usunięcia lub nadpisania. Kopii używamy wyłącznie do przywrócenia działania usługi po awarii.
10. Dotychczasowe wspólne listy z kodem
Wspólne listy z kodem w rodzaju „mleko-sowa-427” przestają się synchronizować z dniem uruchomienia nowych wspólnych list. Produkty zostają na telefonach jako lista prywatna. Na serwerze takie listy (kod listy oraz produkty: nazwa, ilość, dział, informacja o kupieniu i data dodania) przechowujemy jeszcze przez 14 dni, aby telefony z nieaktualną wersją aplikacji mogły przesłać ostatnie zmiany; potem usuwamy je w całości. Do tego czasu działają też dotychczasowe liczniki prób (skrót adresu IP z oznaczeniem minuty lub godziny). Wcześniejsze usunięcie takiej listy możesz zlecić mailowo, podając jej kod.
11. Na jakiej podstawie przetwarzamy dane
- Wykonanie usługi, z której korzystasz (art. 6 ust. 1 lit. b RODO): wspólna lista wraz z zapisem urządzenia potrzebnym do jej działania oraz odczyt zdjęcia, nagrania i tekstu.
- Prawnie uzasadniony interes administratora (art. 6 ust. 1 lit. f RODO): ochrona aplikacji przed nadużyciami i utrzymanie jej działania (liczniki zapytań, log dyktowania, logi serwera, kopie zapasowe, zapis urządzenia zakładany przy uruchomieniu aplikacji, gdy nie korzystasz ze wspólnej listy), zbiorcze statystyki odwiedzin oraz ewentualne ustalenie, dochodzenie lub obrona roszczeń.
Podanie danych jest dobrowolne, ale bez nich dana funkcja nie zadziała (np. bez dostępu do mikrofonu nie podyktujesz listy). Nie podejmujemy wobec Ciebie decyzji opartych wyłącznie na zautomatyzowanym przetwarzaniu, w tym profilowaniu, które wywoływałyby wobec Ciebie skutki prawne lub w podobny sposób istotnie na Ciebie wpływały.
12. Komu przekazujemy dane
- dhosting.pl Sp. z o.o. (Warszawa) — dostawca hostingu, na którego serwerach działają aplikacja, baza wspólnych list i skrzynka kontakt@prostalista.pl.
- Google — jako dostawca Gemini API: zdjęcia, nagrania i dłuższe teksty do odczytu (sekcja 6).
- Google Play — jeśli instalujesz aplikację z Google Play, Google przetwarza dane związane z pobraniem i aktualizacjami na własnych zasadach. Od Google otrzymujemy zbiorcze statystyki dotyczące aplikacji (np. liczbę instalacji); nie przekazujemy Google Play danych z Twojej listy.
- Uczestnicy wspólnej listy — widzą listę oraz imiona lub nazwy urządzeń uczestników (sekcja 4), bo to Ty ich zapraszasz.
- Usługi wybrane przez Ciebie — gdy wysyłasz link zaproszenia albo klucz odzyskiwania przez komunikator, SMS, e-mail lub notatki, dane przetwarza dostawca wybranej usługi na swoich zasadach. Przeglądarka, w której działa aplikacja, może przekazywać dane swojemu dostawcy na jego zasadach.
- Organy publiczne — tylko wtedy, gdy wymagają tego przepisy prawa.
Nie przekazujemy danych w innych celach niż opisane w tej polityce.
13. Jak chronimy dane
- Połączenia aplikacji z naszym serwerem i naszego serwera z Google są szyfrowane (HTTPS).
- Ciasteczko sesji jest wysyłane tylko przez HTTPS i jest niedostępne dla skryptów na stronie. Serwer przechowuje wyłącznie skróty ciasteczek sesji, kodów zaproszeń i kluczy odzyskiwania, a nie ich treść.
- Baza wspólnych list i tajny klucz serwera znajdują się poza publiczną częścią serwera. Zmiany na liście może wprowadzić tylko urządzenie, które jest jej uczestnikiem, a operacje zarządzania listą — tylko właściciel.
- Serwer sprawdza pochodzenie żądań i ogranicza liczbę prób, np. odzyskania listy kluczem.
Te środki ograniczają ryzyko, ale żadne zabezpieczenie nie daje pełnej gwarancji. Jeśli zauważysz problem z bezpieczeństwem, napisz do nas.
14. Twoje prawa i usuwanie danych
W przypadkach przewidzianych przez RODO możesz zażądać dostępu do swoich danych, ich sprostowania, usunięcia, ograniczenia przetwarzania lub przeniesienia, a także wnieść sprzeciw wobec przetwarzania opartego na prawnie uzasadnionym interesie.
- Samodzielnie w aplikacji: usuniesz wspólną listę z serwera (właściciel), opuścisz ją, zmienisz imię widoczne dla domowników i wyczyścisz listę na telefonie; dane zapisane na urządzeniu usuniesz, czyszcząc dane witryny lub odinstalowując aplikację.
- Mailowo: napisz na kontakt@prostalista.pl, np. gdy chcesz usunąć zapis urządzenia albo dane listy, do której nie masz już dostępu. Ponieważ aplikacja działa bez konta, możemy poprosić o informacje potrzebne do odnalezienia właściwego zapisu (np. nazwę listy, imię widoczne na liście, przybliżoną datę utworzenia albo kod dotychczasowej wspólnej listy).
Jeśli uważasz, że dane są przetwarzane niezgodnie z prawem, masz prawo wnieść skargę do Prezesa Urzędu Ochrony Danych Osobowych.
15. Zmiany polityki
Gdy zmieni się sposób przetwarzania danych w aplikacji, zaktualizujemy tę stronę i datę na jej górze. Aktualna wersja jest zawsze dostępna pod adresem prostalista.pl/polityka-prywatnosci.html.
16. Kontakt
Pytania, uwagi i żądania związane z prywatnością możesz wysłać na adres: kontakt@prostalista.pl.