Polityka prywatności

For KSeF Katalog

Last updated: 2026-05-10

1. Administrator danych

Administratorem danych przetwarzanych w ramach aplikacji KSeF Katalog (“Aplikacja”) jest Damian Wiśniewski, prowadzący działalność pod adresem thehardway.pl (“Wydawca”).

Kontakt: contact@thehardway.pl

2. Jakie dane przetwarza Aplikacja

Aplikacja przetwarza następujące dane w ramach normalnego użytkowania:

Dane uwierzytelniające KSeF

  • NIP (Numer Identyfikacji Podatkowej) podmiotu
  • Token autoryzacyjny KSeF

Dane faktur

  • Numery faktur, daty wystawienia i sprzedaży
  • Dane kontrahentów (nazwa, NIP, adres)
  • Kwoty netto, brutto, VAT
  • Pozycje faktur (nazwa, ilość, cena, stawka VAT)
  • Surowe pliki XML faktur pobrane z KSeF

Dane organizacyjne tworzone przez użytkownika

  • Nazwy katalogów i przypisania faktur
  • Tagi i ich przypisania do faktur oraz pozycji faktur
  • Kategorie pozycji faktur

Lokalna historia zmian (audyt operacji)

  • Wpisy w lokalnej Historii zmian (Ustawienia → Historia zmian): timestamp operacji, źródło (użytkownik / MCP / App Intent), typ operacji, snapshot przed i po zmianie, status cofnięcia
  • Dotyczy wyłącznie atrybutów wzbogacających (przypisania do katalogów, tagi, kategorie pozycji); nie obejmuje danych core faktury

Lokalna historia synchronizacji

  • Wpisy w lokalnej Historii synchronizacji (Ustawienia → Historia synchronizacji): timestamp rozpoczęcia i zakończenia, źródło wywołania (manualne / przy uruchomieniu), środowisko KSeF, liczby faktur przychodzących i wychodzących, lista numerów KSeF z sesji (do 1000 wpisów), ewentualny komunikat błędu

Status zakupów i subskrypcji

  • Stan wykupienia wersji Pro (Pro Lifetime / aktywna subskrypcja Pro) weryfikowany przez StoreKit 2 (Apple). Aplikacja przechowuje wynik weryfikacji lokalnie na potrzeby reagowania na zmiany (odnowienie / wygaśnięcie / refund). Apple jest podmiotem przetwarzającym informacje o transakcji w ramach App Store i Polityki prywatności Apple.

3. Gdzie dane są przechowywane

Wszystkie dane są przechowywane wyłącznie lokalnie na urządzeniu użytkownika (Mac lub iPad).

Rodzaj danychMiejsce przechowywaniaSposób ochrony
Token autoryzacyjny KSeFKeychain systemowySzyfrowanie systemowe Keychain
NIP, dane środowiskaKeychain systemowySzyfrowanie systemowe Keychain
Faktury i metadaneSwiftData (lokalna baza danych)Ochrona na poziomie systemu plików urządzenia
Pliki XML fakturKatalog Application SupportOchrona na poziomie systemu plików urządzenia
Historia zmian, historia synchronizacjiSwiftData (lokalna baza danych)Ochrona na poziomie systemu plików urządzenia
Bearer token serwera MCPKeychain systemowySzyfrowanie systemowe Keychain

Aplikacja nie przesyła żadnych danych na serwery Wydawcy. Nie istnieje żaden backend, serwer ani usługa chmurowa powiązana z Aplikacją.

4. Komunikacja sieciowa

Aplikacja komunikuje się wyłącznie z:

  • API KSeF (Krajowy System e-Faktur, Ministerstwo Finansów RP) — w celu uwierzytelnienia i pobierania faktur
  • Apple App Store — w celu weryfikacji zakupów w aplikacji (StoreKit 2), w tym statusu auto-odnawialnej subskrypcji Pro

Żadne inne połączenia sieciowe nie są nawiązywane.

Wyjątek lokalny: po włączeniu opcjonalnej funkcji Pro (lokalny serwer MCP — patrz § 4a), aplikacja nasłuchuje wyłącznie na adresie loopback 127.0.0.1 w celu obsługi klientów MCP uruchomionych na tym samym Macu. Nie jest to komunikacja sieciowa w rozumieniu LAN/internetu — pakiety nigdy nie opuszczają urządzenia.

4a. Lokalny serwer MCP (opcjonalna funkcja Pro, opt-in)

Aplikacja KSeF Katalog może uruchomić lokalny serwer Model Context Protocol (MCP) umożliwiający klientom AI (np. Claude Desktop, Cursor) dostęp do faktur na tym samym Macu. Funkcja jest:

  • Domyślnie wyłączona — użytkownik włącza ją ręcznie w Ustawieniach (dostępna tylko w wersji Pro)
  • Lokalna — serwer nasłuchuje wyłącznie na 127.0.0.1 (loopback); nie jest dostępny z sieci LAN ani z internetu
  • Ograniczona zakresowo — w trybie Read+Write klient AI może modyfikować wyłącznie atrybuty wzbogacające (przypisanie do katalogu, tagi, kategorie pozycji); sama faktura (kwoty, daty, kontrahenci, pozycje) jest niemodyfikowalna, ponieważ KSeF jest jedynym autoryzowanym źródłem
  • Audytowana — każda mutacja jest rejestrowana w Historii zmian (Ustawienia → Historia zmian) z możliwością cofnięcia
  • Self-contained po stronie aplikacji KSeF Katalog — sama aplikacja nie wysyła danych poza Twoje urządzenie

Serwer MCP działa tylko gdy aplikacja jest uruchomiona; zatrzymuje się przy jej zamknięciu oraz przy utracie uprawnień Pro. Nie pobiera ani nie wykonuje zewnętrznego kodu.

Klient MCP jako podmiot trzeci — klient łączący się z lokalnym serwerem KSeF Katalog (np. Claude Desktop, Cursor, mcp-inspector) jest osobną aplikacją podlegającą własnej polityce prywatności. Jeżeli wybrany klient AI przekazuje treść Twoich faktur do zewnętrznego dostawcy modelu językowego (np. Anthropic, OpenAI), dane mogą wyjść poza Twoje urządzenie w ramach działania klienta, nie aplikacji KSeF Katalog. Wybór klienta MCP i akceptacja jego polityki prywatności należą do użytkownika.

4b. Integracje App Intents / Shortcuts

Aplikacja KSeF Katalog wystawia 5 intencji App Intents poprzez ramowe rozwiązanie Apple (iOS, iPadOS, macOS). Inne aplikacje na Twoim urządzeniu (np. Skróty, Siri, Spotlight, aplikacje budżetowe i księgowe) mogą zapytać o dane fakturowe wyłącznie za Twoim wyraźnym wyborem — poprzez uruchomienie Skrótu lub komendy Siri.

  • Brak ekspozycji do sieci — wywołania App Intents są przekazywane wyłącznie pomiędzy aplikacjami na Twoim urządzeniu. Nic nie wychodzi poza urządzenie.
  • Mediacja systemu Apple — każde wywołanie jest pośredniczone przez framework Apple App Intents; aplikacje konsumenckie nie mają bezpośredniego dostępu do bazy KSeF Katalog.
  • Read-only — integracje umożliwiają wyłącznie odczyt danych fakturowych. Nie można za ich pomocą tworzyć, zmieniać ani usuwać faktur.
  • Bez Pro paywall — wszystkie 5 intencji jest dostępnych dla każdego użytkownika (darmowych i Pro).
  • Lokalny licznik wywołań — aplikacja prowadzi prosty licznik użycia każdej intencji (UserDefaults), widoczny w Ustawieniach → Integracje Shortcuts. Liczby są wyłącznie lokalne i nie opuszczają urządzenia.

Aktywne intencje:

  • Otwórz fakturę — otwiera wskazaną fakturę w aplikacji
  • Wyszukaj faktury — full-text search po numerze, nazwie kontrahenta lub numerze KSeF
  • Faktury z okresu — lista faktur z zakresu dat z opcjonalnymi filtrami
  • Suma miesięczna — agregowana kwota brutto dla miesiąca i typu
  • Podsumowanie VAT — total, count i średnia VAT z okresu

5. Analityka i śledzenie

Aplikacja nie zbiera danych analitycznych, nie stosuje śledzenia użytkowników ani nie korzysta z żadnych usług analitycznych (np. Google Analytics, Firebase, Mixpanel).

Aplikacja nie zbiera:

  • Identyfikatorów urządzeń
  • Danych o lokalizacji
  • Danych o użytkowaniu aplikacji
  • Danych diagnostycznych

6. Udostępnianie danych podmiotom trzecim

Wydawca nie udostępnia, nie sprzedaje ani nie przekazuje żadnych danych użytkowników podmiotom trzecim.

Podmioty trzecie, z którymi Aplikacja się komunikuje, ograniczone są do:

  • Ministerstwo Finansów RP poprzez oficjalne API KSeF — wyłącznie na żądanie użytkownika (synchronizacja faktur)
  • Apple poprzez StoreKit / App Store — wyłącznie w zakresie weryfikacji zakupów oraz auto-odnawialnej subskrypcji Pro

Ponadto, jeżeli użytkownik świadomie włączy lokalny serwer MCP (§ 4a) i połączy się z nim wybranym klientem AI, ten klient — jako osobna aplikacja — może komunikować się z własnym dostawcą usług. Wydawca nie pośredniczy w takiej komunikacji ani nie ponosi za nią odpowiedzialności.

7. Prawa użytkownika

Ponieważ wszystkie dane są przechowywane lokalnie, użytkownik ma pełną kontrolę nad swoimi danymi:

  • Dostęp — dane są widoczne bezpośrednio w Aplikacji
  • Usunięcie — użytkownik może usunąć dane demonstracyjne, poszczególne faktury, katalogi, tagi i kategorie w Aplikacji. Odinstalowanie Aplikacji usuwa wszystkie dane.
  • Eksport — wersja Pro umożliwia eksport danych do plików CSV
  • Wyczyszczenie historii zmian — Ustawienia → Historia zmian → „Wyczyść historię”
  • Wyczyszczenie historii synchronizacji — Ustawienia → Historia synchronizacji → „Wyczyść historię”
  • Anulowanie subskrypcji Pro — w dowolnym momencie poprzez Ustawienia → Apple ID → Subskrypcje (iPadOS) lub apps.apple.com/account/subscriptions (macOS). Anulowanie powoduje wygaśnięcie dostępu Pro z końcem opłaconego okresu.

8. Bezpieczeństwo

Aplikacja stosuje następujące środki bezpieczeństwa:

  • Dane uwierzytelniające (NIP, token KSeF) są przechowywane w systemowym Keychain z szyfrowaniem systemowym
  • Komunikacja z API KSeF odbywa się przez szyfrowane połączenie HTTPS
  • Aplikacja jest dystrybuowana przez App Store i podlega procesom weryfikacji Apple
  • Aplikacja działa w piaskownicy systemowej (App Sandbox)
  • Bearer token serwera MCP (po włączeniu funkcji) jest przechowywany w Keychain z możliwością ręcznej regeneracji

9. Dane dzieci

Aplikacja nie jest skierowana do osób poniżej 18 roku życia i nie zbiera świadomie danych od dzieci.

10. Zmiany Polityki prywatności

Wydawca zastrzega sobie prawo do aktualizacji niniejszej Polityki prywatności. O istotnych zmianach użytkownicy zostaną poinformowani poprzez aktualizację daty wejścia w życie na początku dokumentu.

11. Kontakt

W razie pytań dotyczących prywatności prosimy o kontakt: