Niniejsza Polityka Prywatności określa zasady przetwarzania i ochrony danych osobowych użytkowników korzystających z aplikacji mobilnej Foton Pro (dalej: „Aplikacja”), publikowanej w sklepie Google Play pod identyfikatorem pakietu com.fotonpro.app.
🔒 Architektura Local-First (Prywatność Twojej bazy zleceń i klientów):
Aplikacja Foton Pro służy do lokalnego zarządzania zleceniami fotograficznymi i filmowymi. Wszelkie dane biznesowe wprowadzane przez Ciebie do Aplikacji (dane par młodych i klientów, numery telefonów, lokalizacje ceremonii, umowy, załączniki, terminarz, zaliczki i koszty) są zapisywane wyłącznie lokalnie w pamięci Twojego telefonu. Administrator Aplikacji nie posiada własnego serwera z Twoimi zleceniami, nie synchronizuje ich w chmurze i nie ma do nich wglądu.
SharedPreferences, klucze lumen_*): imiona i nazwiska klientów, numery telefonów, adresy przygotowań, kościołów i sal weselnych, daty zleceń i sesji plenerowych, statusy realizacji, notatki oraz lista podwykonawców/ekipy.SharedPreferences): ceny pakietów, zadatki/zaliczki, transze płatności (gotówka/przelew), dopłaty oraz ewidencja kosztów własnych i wydatków stałych studia.getApplicationDocumentsDirectory()): pliki PDF (np. umowy), zdjęcia dodawane jako załączniki do zleceń (katalog /attachments/) oraz zdjęcia/zrzuty ekranu potwierdzające wykonanie kopii zapasowej kart pamięci (katalog /backup_proofs/).SharedPreferences na telefonie jest zapisywana w standardowym pliku preferencji systemu Android (bez dodatkowego szyfrowania na poziomie kodu Aplikacji) i polega na systemowym szyfrowaniu pamięci urządzenia (Android File-Based Encryption – FBE).android:allowBackup="false" oraz reguły data_extraction_rules.xml i backup_rules.xml wykluczające bazę Aplikacji z automatycznych kopii zapasowych w chmurze Androida oraz z transferu urządzenie–urządzenie (D2D).local_auth): Możesz włączyć w Ustawieniach blokadę dostępu do Aplikacji odciskiem palca, rozpoznawaniem twarzy lub kodem PIN urządzenia. Weryfikacja odbywa się wyłącznie za pośrednictwem natywnego mechanizmu systemu Android – Aplikacja nie ma wglądu w dane biometryczne..json (udostępnianego przez systemowe menu udostępniania Androida). Podczas eksportu możesz włączyć szyfrowanie hasłem – wówczas dane są szyfrowane na telefonie algorytmem AES-256-CBC z kluczem derywowanym funkcją PBKDF2-HMAC-SHA256 (10 000 iteracji, losowa sól 16 B i wektor IV 16 B). Jeśli wybierzesz eksport bez hasła, plik JSON zawiera jawny tekst i odpowiadasz za jego bezpieczne przechowywanie. (Eksport JSON obejmuje dane i ustawienia z SharedPreferences, natomiast nie obejmuje binarnych plików PDF/zdjęć załączonych do zleceń).Poza urządzeniem przetwarzany jest wyłącznie minimalny zestaw danych niezbędny do uwierzytelnienia konta, weryfikacji subskrypcji PRO, ochrony infrastruktury przed nadużyciami oraz obsługi dobrowolnych zgłoszeń użytkownika:
Podczas logowania kontem Google Aplikacja pobiera z profilu Google i zapisuje w usłudze Firebase Authentication:
email),displayName),Firebase UID),users/{uid} oraz config/promo_banner)users/{uid} w bazie Google Cloud Firestore przechowywany jest dokument przypisany do Twojego identyfikatora Firebase UID, zawierający wyłącznie pola:
email – adres e-mail konta,isEarlyAdopter – flaga uprawnień wczesnego dostępu (bool),welcomeMessageShown – informacja o wyświetleniu ekranu powitalnego (bool),createdAt – znacznik czasu utworzenia profilu,lastFeedbackAt – znacznik czasu ostatniego wysłania opinii (wykorzystywany wyłącznie do blokady spamu – limit 1 zgłoszenia na 60 sekund).config/promo_banner w celu wyświetlenia ewentualnego komunikatu informacyjnego lub promocyjnego w Aplikacji.app_feedback w Cloud Firestore)Wyłącznie wtedy, gdy dobrowolnie wypełnisz i wyślesz formularz w ekranie „Wyślij opinię” (w Ustawieniach), Aplikacja zapisuje w kolekcji app_feedback:
category, categoryLabel, subject, message),userId (Firebase UID), adres e-mail konta (userEmail) oraz – jeśli go podasz – opcjonalny adres e-mail do odpowiedzi (replyEmail),createdAt),appVersion), nazwę i wersję systemu operacyjnego (platform) oraz informację o posiadaniu planu PRO (isPremium).Formularz może również otworzyć zewnętrzną aplikację pocztową na telefonie (przez link mailto:) w celu bezpośredniego wysłania wiadomości e-mail przez użytkownika.
W celu sprzedaży i weryfikacji subskrypcji Foton Pro (miesięcznej foton_pro_monthly oraz rocznej foton_pro_yearly) Aplikacja korzysta z systemu Google Play Billing oraz platformy RevenueCat (purchases_flutter):
Firebase UID (Purchases.logIn(uid)) oraz przekazuje do RevenueCat Twój adres e-mail (Purchases.setEmail) i imię oraz nazwisko / nazwę wyświetlaną (Purchases.setDisplayName).pro, datę wygaśnięcia subskrypcji (expirationDate) oraz historię transakcji na potrzeby sprawdzenia kwalifikacji do 30-dniowego bezpłatnego okresu próbnego i oferty startowej.Aplikacja korzysta z Firebase App Check opartego na Google Play Integrity API. Podczas komunikacji z chmurą Firebase przesyłane są identyfikatory instalacji (Firebase Installation ID), kryptograficzne tokeny potwierdzające autentyczność urządzenia i niemodyfikowaną wersję Aplikacji ze sklepu Google Play, adres IP oraz podstawowe informacje o środowisku uruchomieniowym (wersja systemu Android, wersja SDK).
Aplikacja pobiera czcionki interfejsu (Inter, Lato, Playfair Display) z serwerów Google Fonts (fonts.googleapis.com / fonts.gstatic.com) oraz ikonę przycisku logowania Google z developers.google.com. Wiąże się to z technicznym przekazaniem adresu IP urządzenia i nagłówków HTTP do serwerów Google.
| Cel przetwarzania | Zakres danych | Podstawa prawna (RODO / GDPR) |
|---|---|---|
| Utworzenie konta, logowanie (Google Sign-In) i świadczenie usług drogą elektroniczną w Aplikacji | E-mail, imię i nazwisko, Firebase UID, dokument users/{uid} |
Art. 6 ust. 1 lit. b RODO – niezbędność do wykonania umowy o korzystanie z Aplikacji |
| Obsługa i weryfikacja subskrypcji Foton Pro, okresów próbnych i przywracania zakupów | Firebase UID, e-mail, imię i nazwisko, historia zakupów i tokeny Google Play / RevenueCat | Art. 6 ust. 1 lit. b RODO (wykonanie umowy subskrypcji) oraz Art. 6 ust. 1 lit. c RODO (obowiązki podatkowe realizowane przez Google Play) |
Rozpatrywanie zgłoszeń błędów, opinii i kontakt z użytkownikiem (app_feedback, e-mail) |
Treść zgłoszenia, temat, kategoria, e-mail, UID, opcjonalne dane diagnostyczne (appVersion, platform, isPremium) |
Art. 6 ust. 1 lit. f RODO (prawnie uzasadniony interes Administratora: wsparcie techniczne i rozwój Aplikacji) oraz Art. 6 ust. 1 lit. a RODO (zgoda wyrażona poprzez wysłanie formularza) |
Bezpieczeństwo API, ochrona przed nadużyciami i spamem (Firebase App Check / Play Integrity, limit lastFeedbackAt) |
Adres IP, identyfikatory instalacji Firebase, tokeny Play Integrity, znacznik lastFeedbackAt |
Art. 6 ust. 1 lit. f RODO – prawnie uzasadniony interes polegający na ochronie bezpieczeństwa systemu i zapobieganiu oszustwom |
| Korzystanie z uprawnień urządzenia na żądanie użytkownika (aparat, powiadomienia lokalne) | Zdjęcia dowodowe i załączniki (wyłącznie lokalnie), lokalne alarmy przypomnień | Art. 6 ust. 1 lit. a RODO – zgoda wyrażona w systemowym oknie uprawnień Androida |
Brak analityki behawioralnej i reklam: Aplikacja nie zawiera modułów reklamowych, nie pobiera identyfikatora reklamowego Google (AD_ID), nie używa Firebase Analytics i nie stosuje zautomatyzowanego profilowania użytkowników.
INTERNET, ACCESS_NETWORK_STATE – komunikacja z Firebase, RevenueCat, Google Play oraz pobieranie czcionek.CAMERA – wykonywanie zdjęć umów/załączników oraz zdjęć potwierdzających wykonanie backupu kart pamięci (wyłącznie z inicjatywy użytkownika; zdjęcia są zapisywane wyłącznie lokalnie w prywatnym katalogu Aplikacji i nie opuszczają urządzenia).READ_MEDIA_IMAGES, READ_MEDIA_VIDEO, READ_MEDIA_AUDIO, READ_EXTERNAL_STORAGE (do Androida 12) – dołączanie plików/zdjęć z pamięci telefonu do zlecenia, import pliku kopii zapasowej .json oraz zapis wygenerowanych grafik „Karty Dnia” i „Macierzy Postępu” w galerii urządzenia. Żadne pliki z galerii nie są przesyłane na serwery.POST_NOTIFICATIONS, SCHEDULE_EXACT_ALARM, USE_EXACT_ALARM, RECEIVE_BOOT_COMPLETED, VIBRATE – wyświetlanie lokalnych powiadomień przypominających o weryfikacji backupu kart pamięci oraz o kończącej się rezerwacji terminu.USE_BIOMETRIC, USE_FINGERPRINT – lokalna blokada dostępu do Aplikacji przy użyciu systemowego uwierzytelniania biometrycznego Androida (dane biometryczne nie opuszczają bezpiecznego modułu sprzętowego urządzenia).com.android.vending.BILLING – obsługa płatności i subskrypcji Google Play.users/{uid}): przechowywane przez czas utrzymywania konta; usuwane natychmiast po kliknięciu „Usuń konto” w Aplikacji lub w ciągu maksymalnie 30 dni od zgłoszenia żądania e-mailem.app_feedback) i korespondencja wsparcia: przechowywane przez czas niezbędny do obsługi zgłoszenia, nie dłużej niż 24 miesiące, lub usuwane w terminie do 30 dni na żądanie użytkownika.🗑️ Dwa sposoby usunięcia konta i danych:
1. Bezpośrednio w Aplikacji (natychmiastowo): Otwórz Ustawienia → Konto → Usuń konto, wpisz słowo potwierdzające (USUŃ) i potwierdź logowanie Google. Aplikacja natychmiast usunie dokument users/{uid} z Firestore, konto z Firebase Auth, wyloguje sesję RevenueCat i wyczyści lokalną bazę SharedPreferences.
2. Przez stronę WWW / e-mail (bez otwierania Aplikacji): Odwiedź stronę https://foton-crm-e978a.web.app/delete-account.html lub napisz z adresu e-mail swojego konta na adres kamilowefotografie+fotonpro@gmail.com. W ciągu maksymalnie 30 dni usuniemy konto Firebase Auth, dokument users/{uid}, zgłoszenia app_feedback oraz profil klienta w RevenueCat.
Ważne: Usunięcie konta lub odinstalowanie Aplikacji nie anuluje automatycznie subskrypcji w Google Play. Aby anulować subskrypcję, przejdź do Sklep Google Play → Płatności i subskrypcje → Subskrypcje → Foton Pro.
Przysługuje Ci prawo do:
Aplikacja Foton Pro jest narzędziem biznesowym przeznaczonym wyłącznie dla osób pełnoletnich (ukończone 18 lat). Aplikacja nie jest kierowana do dzieci poniżej 16. (ani 13.) roku życia i nie zbiera świadomie danych osobowych dzieci.
Polityka obowiązuje od dnia 11 października 2026 r. O wszelkich istotnych zmianach poinformujemy poprzez komunikat w Aplikacji oraz publikację zaktualizowanej wersji na tej stronie.
This Privacy Policy explains how personal data is collected, processed, and protected when you use the Foton Pro mobile application (hereinafter: the "App"), published on Google Play under the package identifier com.fotonpro.app.
🔒 Local-First Architecture (Privacy of Your Bookings and Clients):
Foton Pro is a local studio management CRM for photographers and filmmakers. All business records you enter into the App (client and couple names, phone numbers, ceremony venues, contracts, attachments, schedules, advance deposits, and expenses) are stored exclusively on your mobile device. The App Developer operates no cloud server for your bookings, performs no background cloud synchronization of client records, and has zero access to them.
SharedPreferences, lumen_* keys): client names, phone numbers, preparation/ceremony/reception addresses, event and outdoor session dates, workflow stages, notes, and crew/collaborator lists.SharedPreferences): package prices, advance deposits, payment installments (cash/transfer), extra charges, and recurring or one-off studio expenses.getApplicationDocumentsDirectory()): PDF contracts and images attached to orders (/attachments/ directory) and verification photos/screenshots of memory card backups (/backup_proofs/ directory).SharedPreferences database on your phone is stored in standard Android XML preferences format (without an additional application-layer encryption wrapper at rest) and relies on Android's OS sandboxing and system File-Based Encryption (FBE).android:allowBackup="false" and configures data_extraction_rules.xml and backup_rules.xml to exclude all application storage domains from automatic Google Drive backups and device-to-device transfers.local_auth): You may enable an app lock in Settings using your device's fingerprint sensor, face unlock, or system PIN. Authentication is performed strictly by the native Android BiometricPrompt API; the App never accesses or stores biometric templates..json file via Android's system share sheet. If you enable password protection during export, the backup payload is encrypted on-device using AES-256-CBC with a key derived via PBKDF2-HMAC-SHA256 (10,000 iterations, random 16-byte salt and 16-byte IV). If you export without a password, the JSON file is unencrypted plaintext and you are responsible for keeping it safe. (JSON exports contain database records from SharedPreferences, not binary PDF/image attachment files).Off-device processing is strictly limited to account authentication, PRO subscription verification, backend abuse prevention, and voluntary user feedback:
When you sign in with Google, the App receives from your Google profile and stores in Firebase Authentication:
email),displayName),Firebase UID),users/{uid} and config/promo_banner)users/{uid} containing strictly:
email – account email address,isEarlyAdopter – early access status flag (bool),welcomeMessageShown – whether the welcome notice was shown (bool),createdAt – account creation timestamp,lastFeedbackAt – timestamp of last feedback submission (used solely to enforce a 60-second anti-spam cooldown).config/promo_banner to display informational or promotional banners.app_feedback Collection)Only when you voluntarily submit the "In-App Feedback" form in Settings does the App save a document in the app_feedback collection containing:
category, categoryLabel, subject, message),userId (Firebase UID), account email (userEmail), and optional reply email (replyEmail),createdAt),appVersion), OS name/version (platform), and PRO plan status (isPremium).To manage Foton Pro subscriptions (foton_pro_monthly and foton_pro_yearly), the App uses Google Play Billing and RevenueCat (purchases_flutter):
Firebase UID (Purchases.logIn(uid)) and sets your email address (Purchases.setEmail) and display name (Purchases.setDisplayName).pro entitlement status, expiration dates (expirationDate), and purchase history to verify active subscriptions and eligibility for the 30-day free trial or introductory pricing.The App uses Firebase App Check with the Google Play Integrity API provider, which processes installation identifiers (Firebase Installation ID), device/app integrity attestation tokens, IP addresses, and OS/SDK version metadata to prevent unauthorized backend access.
The App loads fonts (Inter, Lato, Playfair Display) via Google Fonts (fonts.googleapis.com / fonts.gstatic.com) and the Google sign-in logo from developers.google.com, transmitting standard HTTPS headers (including device IP address) to Google.
| Purpose | Data Categories | GDPR Legal Basis |
|---|---|---|
| Account registration, Google Sign-In authentication, and core App operation | Email, display name, Firebase UID, users/{uid} document |
Art. 6(1)(b) GDPR – performance of the contract (Terms of Use) |
| Subscription management, entitlement verification, trial eligibility, and purchase restoration | Firebase UID, email, display name, Google Play / RevenueCat purchase tokens and history | Art. 6(1)(b) GDPR (performance of subscription contract) & Art. 6(1)(c) GDPR (tax/accounting compliance via Google Play) |
Handling voluntary bug reports, feedback, and user support (app_feedback, email) |
Feedback message, subject, category, email, UID, optional diagnostics (appVersion, platform, isPremium) |
Art. 6(1)(f) GDPR (legitimate interest in technical support and app improvement) & Art. 6(1)(a) GDPR (consent by submitting the form) |
Backend security, fraud prevention, and anti-spam rate limiting (Firebase App Check / Play Integrity, lastFeedbackAt) |
IP address, Firebase Installation ID, Play Integrity tokens, lastFeedbackAt |
Art. 6(1)(f) GDPR – legitimate interest in securing IT systems and preventing abuse |
| On-device permission features requested by the user (camera, local notifications) | Local photos/attachments, local notification schedules | Art. 6(1)(a) GDPR – consent granted via Android runtime permission prompts |
No Behavioral Analytics or Ads: The App displays no third-party advertisements, does not use the Google Advertising ID (AD_ID), does not include Firebase Analytics, and does not perform automated profiling.
INTERNET, ACCESS_NETWORK_STATE – communication with Firebase, RevenueCat, Google Play, and font servers.CAMERA – capturing photos of contracts/attachments or memory card backup proofs solely upon user action (stored strictly locally on the device).READ_MEDIA_IMAGES, READ_MEDIA_VIDEO, READ_MEDIA_AUDIO, READ_EXTERNAL_STORAGE (up to Android 12) – picking local attachment files or .json backups, and saving generated "Day Card" or "Progress Matrix" images to the device gallery. No media files are uploaded to any server.POST_NOTIFICATIONS, SCHEDULE_EXACT_ALARM, USE_EXACT_ALARM, RECEIVE_BOOT_COMPLETED, VIBRATE – scheduling and displaying local reminders for memory card backup verification and expiring date reservations.USE_BIOMETRIC, USE_FINGERPRINT – local app lock authentication via Android's native biometric prompt.com.android.vending.BILLING – in-app subscriptions via Google Play Billing.users/{uid}): kept while your account is active; deleted immediately when you use the in-app "Delete account" button, or within 30 days of an email deletion request.app_feedback) & Support Emails: kept for as long as needed to resolve your inquiry (up to 24 months), or deleted within 30 days upon request.🗑️ Two Ways to Delete Your Account and Data:
1. Directly Inside the App (Instant): Go to Settings → Account → Delete account, type the confirmation word (DELETE), and re-authenticate with Google. The App immediately deletes your Firestore users/{uid} document, deletes your Firebase Auth account, logs out of RevenueCat, and clears all local lumen_* data from SharedPreferences.
2. Via Web / Email (Without Opening the App): Visit https://foton-crm-e978a.web.app/delete-account.html or email kamilowefotografie+fotonpro@gmail.com from your account email address. Within at most 30 days, we will delete your Firebase Auth account, users/{uid} document, app_feedback submissions, and RevenueCat customer profile.
Important: Deleting your account or uninstalling the App does not automatically cancel an active Google Play subscription. Manage or cancel subscriptions in Google Play Store → Payments & subscriptions → Subscriptions → Foton Pro.
Under Articles 15–21 GDPR, you have the right to access, rectify, erase ("right to be forgotten"), restrict processing, port your data, object to processing based on legitimate interests, and withdraw consent at any time. You also have the right to lodge a complaint with a supervisory authority (Art. 77 GDPR), in particular the Polish Data Protection Authority: Prezes Urzędu Ochrony Danych Osobowych (PUODO), ul. Stawki 2, 00-193 Warsaw, Poland (https://uodo.gov.pl).
Foton Pro is a business application intended exclusively for adults (18+). It is not directed at children under 16 (or 13), and we do not knowingly collect personal data from children.
This Privacy Policy is effective as of October 11, 2026. Any material updates will be communicated via an in-app notice and published on this page.