Přeskočit na hlavní obsah

Uživatelská zóna (PRD-02)

info

Fundament přihlášeného uživatele — registrace, wallet, historie, sdílení. Plné znění najdete níže na této stránce.

Scope

FázeObrazovekOdhad
MVP18 (2 primární, 5 sekundárních, 11 podpůrných)52 h
F11 (onboarding dotazník)4 h
Celkem1956 h

Klíčové obrazovky

IDNázevFáze
P7Moje vstupenky / WalletMVP
P9Uživatelský účet hubMVP
S4PřihlášeníMVP
S5RegistraceMVP
S7Historie objednávekMVP
S8Detail vstupenkyMVP
S6Onboarding dotazníkF1

Business rules

  • OAuth first: Apple ID, Google, Facebook jako preferované metody
  • Biometrika: Face ID / Touch ID nabídnuta po prvním login
  • Offline wallet: QR kódy dostupné bez internetu
  • Session: persistent login (30 dnů refresh token)
  • GDPR: consent management, account deletion, data export

Otevřené otázky

KódOtázkaPriorita
OQ-02-01Email editace po registraciMedium
OQ-02-02Sdílení = kopie vs. převodHigh
OQ-02-03Guest → registrace migrationHigh
OQ-02-04Tablet layoutMedium
OQ-02-05Dark mode v MVP?High
OQ-02-06Onboarding timing (po registraci vs. po nákupu)Medium

Detailní specifikace (Plné znění PRD)

PRD-02: Klientská zóna — Colosseum MA

Verze1.0
Datum2026-02-23
StavDraft
VlastníkSymbio — Analýza & Design

1. Přehled a cíle

Klientská zóna je „domov" přihlášeného uživatele v aplikaci — pokrývá registraci, přihlášení, správu účtu, offline wallet se vstupenkami, historii objednávek a sdílení vstupenek. Jde o fundament, na kterém staví personalizace (F1), věrnostní program (F1) i další rozvojové funkce.

Mobilní aplikace oproti webu přináší trvale přihlášeného uživatele s biometrickým přístupem, offline dostupnost vstupenek (QR wallet) a push notifikace — tedy výrazně silnější vztah se zákazníkem.

Cíle

CílMetrikaFáze
Maximalizovat počet registrovaných uživatelůRegistrace / MAUMVP
Minimalizovat bariéru přihlášeníČas do prvního přihlášení, OAuth adoption rateMVP
Zvýšit podíl nákupů přihlášených uživatelůPoměr logged-in vs. guest nákupůMVP
Zajistit offline dostupnost vstupenek% vstupenek dostupných offlineMVP
Zvýšit sdílení vstupenekPočet sdílení per nákupMVP

Vazba na další PRD

  • PRD-01 (Nákup vstupenek): Late login v checkout flow (S4/S5 z S2). Vstupenky po nákupu v walletu (P7).
  • PRD-03 (Notifikace): Permission dialog (X12) se spouští po registraci nebo z onboardingu. Nastavení notifikací přístupné z účtu (P9).
  • PRD-04 (Věrnostní program): Sekce věrnost v účtu (P9 → P10). Body a odměny zobrazené v profilu.
  • PRD-06 (Obsah a podpora): Podpora přístupná z účtu (P9 → S15).

2. User stories

MVP

IDRoleStoryAkceptační kritéria
US-02-01Nový uživatelChci se zaregistrovat rychle pomocí Apple/Google/Facebook účtuOAuth registrace na 1–2 tapy. Po autorizaci doplnění povinných údajů (telefon, GDPR souhlas).
US-02-02Nový uživatelChci se zaregistrovat pomocí emailu a heslaFormulář: jméno, příjmení, email, telefon, heslo, GDPR souhlas, newsletter opt-in. Inline validace.
US-02-03Registrovaný uživatelChci se přihlásit pomocí biometrikyPo prvním přihlášení nabídnout Face ID / Touch ID. Biometrika jako primary login metoda.
US-02-04Registrovaný uživatelChci vidět své vstupenky v offline walletuP7 zobrazuje QR vstupenky dostupné i bez připojení. Timeline: nadcházející → minulé.
US-02-05Registrovaný uživatelChci sdílet vstupenku s přítelemDetail vstupenky (S8) → „Sdílet" CTA → deep link přes systémový share sheet. Příjemce dostane odkaz ke stažení vstupenky.
US-02-06Registrovaný uživatelChci vidět historii svých objednávekS7 zobrazuje seznam objednávek se statusy (zaplaceno/rezervováno/čeká/zrušeno).
US-02-07Registrovaný uživatelChci upravit své osobní údajeS14: editace jména, kontaktů, fakturační adresy, hesla, GDPR nastavení.
US-02-08Registrovaný uživatelChci smazat svůj účetX14: potvrzovací dialog s informacemi o důsledcích (GDPR). Nevratná akce po potvrzení.
US-02-09Nový uživatelChci vidět, co aplikace nabízí, při prvním spuštěníX20: 3–4 welcome slides s value propositions před přihlášením/registrací.
US-02-10Registrovaný uživatelChci přidat vstupenku do systémového kalendářeS8 → „Přidat do kalendáře" → systémový kalendář s datem, místem a časem akce (X16 potvrzení).
US-02-11Registrovaný uživatelChci obnovit zapomenuté hesloS4 → „Zapomenuté heslo" → email s reset linkem.

F1

IDRoleStoryAkceptační kritéria
US-02-12Nový uživatelChci si při registraci nastavit preferenceOnboarding dotazník (S6): oblíbené žánry, lokalita, oblíbené scény/pořadatelé, notifikace permission. Skip option.
US-02-13Registrovaný uživatelChci vidět sekci věrnosti v účtuP9 rozšířen o menu položku „Colosseum Premium" → P10 (viz PRD-04).
US-02-14Registrovaný uživatelChci mít přístup k watchdogům a notifikacím z účtuP9 rozšířen o „Moje hlídače" → S10 a „Notifikace" → S9 (viz PRD-03).

F2+

IDRoleStoryAkceptační kritéria
US-02-15Registrovaný uživatelChci používat aplikaci ve svém jazyceVícejazyčnost — přepnutí jazyka v nastavení (scope TBD).

3. Funkční specifikace

3.1 MVP scope

S4 — Přihlášení

Klíčové prvky:

  • OAuth first layout — Apple, Google, Facebook jako prominentní tlačítka nahoře
  • Email + heslo form — pod OAuth, s „zapamatovat si mě" toggle
  • Zapomenuté heslo — odkaz pod heslem → reset flow (email)
  • Biometrics toggle — po prvním úspěšném přihlášení nabídnout Face ID / Touch ID
  • Late login varianta — v checkout flow (z S2): zkrácená verze bez welcome textu, s „Pokračovat jako host" CTA
  • Přepnutí na registraci — „Nemáte účet? Zaregistrujte se" → S5

Interakce:

  • Tap OAuth → nativní autorizační dialog → úspěch / chyba
  • Tap „Přihlásit se" → validace → úspěch (redirect zpět) / chyba (inline error)
  • Biometrics prompt → automatický login po potvrzení

S5 — Registrace

Klíčové prvky:

  • OAuth registrace — Apple, Google, Facebook (preferované)
  • Email + heslo formulář:
    • Jméno + příjmení (povinné)
    • Email (povinný, validace formátu + unikátnost)
    • Telefon (povinný, validace formátu)
    • Heslo (povinné, min. 8 znaků, síla indikátor)
  • GDPR souhlas — povinný checkbox s odkazem na podmínky
  • Newsletter opt-in — volitelný checkbox (předvyplněný)
  • CTA „Zaregistrovat se"

Business rules:

  • OAuth registrace: po autorizaci doplnit chybějící povinné údaje (telefon, GDPR)
  • Email musí být unikátní — pokud existuje → „Tento email je již registrován. Přihlásit se?"
  • Po úspěšné registraci → redirect na předchozí screen (checkout, home) nebo X20 → onboarding (F1: S6)

P7 — Moje vstupenky / Wallet

Hlavní tab „Vstupenky" v bottom navigation.

Klíčové prvky:

  • Timeline layout: nadcházející akce nahoře, minulé dole (toggle „Zobrazit minulé")
  • Ticket karta: event thumbnail, název, datum + čas, místo, sedadlo (pokud adresné), QR kód preview, status badge
  • Offline indikátor — zelená tečka „Dostupné offline" u každé vstupenky
  • Apple/Google Wallet CTA — „Přidat do Apple Wallet" / „Přidat do Google Wallet"
  • Sdílení CTA — ikona sdílení na kartě
  • Empty state (X7) — pokud žádné vstupenky: ilustrace + „Zatím nemáte žádné vstupenky" + CTA „Prozkoumat akce"
  • Pull-to-refresh pro synchronizaci

Interakce:

  • Tap na kartu → S8 (Detail vstupenky)
  • Long press → quick actions (sdílet, přidat do kalendáře)
  • Offline: vstupenky dostupné i bez připojení (QR lokálně cachované)

S8 — Detail vstupenky

Plný detail jedné vstupenky.

Klíčové prvky:

  • QR kód — velký, čitelný, funguje offline. Jas obrazovky automaticky zvýšen.
  • Event info: název, datum + čas, pořadatel
  • Venue info: název sálu, adresa
  • Sedadlo: řada, číslo, kategorie (pokud adresné)
  • Cenová kategorie — typ vstupného
  • Akce:
    • „Sdílet vstupenku" → systémový share sheet s deep linkem (X17 potvrzení)
    • „Přidat do kalendáře" → systémový kalendář (X16 potvrzení)
    • „Přidat do Apple/Google Wallet"
  • Barcode fallback — pokud QR nelze zobrazit, zobrazit čárový kód nebo číslo vstupenky

P9 — Uživatelský účet (hub)

Tab „Profil" v bottom navigation.

Klíčové prvky:

  • Profilová karta — avatar (iniciály nebo fotka), jméno, email
  • Menu navigace:
    • Moje objednávky → S7
    • Osobní údaje → S14
    • Změna hesla → S14 (sekce)
    • Podpora → S15
    • GDPR nastavení → inline nebo S14
    • Biometrics toggle — Face ID / Touch ID on/off
    • F1 položky (coming soon nebo skryté): Věrnostní program, Notifikace, Moje hlídače, Onboarding
  • Odhlášení — CTA dole
  • Smazání účtu — odkaz (červený) → X14
  • App verze — v patičce

Interakce:

  • Tap na menu položku → navigace na příslušnou obrazovku
  • Nepřihlášený uživatel → zobrazí se „Přihlásit se / Zaregistrovat" místo profilu

S7 — Historie objednávek

Klíčové prvky:

  • Status legenda: barevné badges (zaplaceno = zelená, rezervováno = žlutá, čeká na platbu = oranžová, zrušeno = červená)
  • Seznam objednávek: číslo, event info, datum, status badge, celková cena
  • Toggle „Zobrazit zrušené" — defaultně skryté
  • Detail objednávky inline — expand na tap: jednotlivé vstupenky, platební metoda, datum platby

Empty state (X8): „Zatím nemáte žádné objednávky" + CTA „Najít akci"

S14 — Editace profilu

Klíčové prvky:

  • Osobní údaje: jméno, příjmení, email (readonly?), telefon
  • Fakturační adresa: volitelná, collapsible
  • Změna hesla: stávající heslo + nové heslo + potvrzení
  • GDPR nastavení: marketing souhlas toggle, odkaz na podmínky
  • Smazání účtu: odkaz → X14
  • CTA „Uložit změny" — disabled dokud nejsou změny

Interakce:

  • Inline validace per field
  • Úspěch → success toast „Údaje uloženy"
  • Chyba → inline error messages

X7 — Empty state — Vstupenky

  • Ilustrace prázdného walletu
  • „Zatím nemáte žádné vstupenky"
  • CTA: „Prozkoumat akce" → P1

X8 — Empty state — Objednávky

  • Ilustrace
  • „Zatím nemáte žádné objednávky"
  • CTA: „Najít akci" → P1

X10 — Splash / Loading

  • App launch screen s Colosseum logem
  • Skeleton loading states pro každý tab (P1, P7, P9)
  • Max 2s zobrazení splash, pak transition na obsah

X11 — Offline režim

  • Indikátor — persistent banner nahoře: „Jste offline — některé funkce jsou omezené"
  • Co funguje offline: wallet (P7, S8) s QR kódy, cachované detaily akcí
  • Co nefunguje: nákup, search, refresh feedu, sdílení
  • Auto-recovery — banner zmizí po obnovení připojení

X14 — Smazání účtu

  • Potvrzovací dialog — „Opravdu chcete smazat účet?"
  • GDPR info — co se stane s daty (smazání do 30 dnů)
  • Důsledky: ztráta vstupenek, historie, bodů
  • Dvojité potvrzení — zadání hesla nebo emailu pro potvrzení
  • CTA: „Smazat účet" (červená) / „Zrušit"

X15 — GDPR souhlas

  • Detail souhlasu s obchodními podmínkami
  • Opt-out marketing komunikace
  • Odkaz na plné podmínky (webview)
  • „Souhlasím" / „Nesouhlasím" (nesouhlasím = nelze dokončit registraci)

X16 — Přidáno do kalendáře

  • Toast / bottom sheet potvrzení
  • „Akce přidána do kalendáře"
  • Dismiss po 3s nebo tap

X17 — Vstupenka sdílena

  • Toast / bottom sheet potvrzení
  • „Vstupenka sdílena" + deep link preview
  • Dismiss po 3s nebo tap

X19 — Force update

  • Full-screen blocker (nelze obejít)
  • „Je dostupná nová verze aplikace"
  • Vysvětlení proč (bezpečnost, kompatibilita)
  • CTA: „Aktualizovat" → App Store / Play Store
  • Žádná „Přeskočit" možnost

X20 — Welcome slides

  • 3–4 intro obrazovky při prvním spuštění
  • Slide 1: „Vstupenky vždy po ruce" (wallet)
  • Slide 2: „Nákup na pár tapů" (Apple Pay, snadný checkout)
  • Slide 3: „Nenechte si nic ujít" (notifikace, personalizace)
  • Slide 4 (volitelný): „Přihlaste se a začněte" (login CTA)
  • Skip button na každém slidu
  • Dot indicator pro pozici
  • CTA na posledním: „Přihlásit se" / „Prozkoumat" (skip login)

3.2 F1 rozšíření

S6 — Onboarding (dotazník)

Zobrazuje se po registraci (nebo z účtu pro pozdější nastavení).

Klíčové prvky:

  • 3–4 kroky s progress indicator:
    1. Oblíbené žánry — multi-select chips (Musical, Divadlo, Hudba, Festival, Kino, Děti, Sport…)
    2. Lokalita — výběr města/měst (Praha, Brno, Ostrava…)
    3. Oblíbené scény/pořadatelé — searchable multi-select (top pořadatelé)
    4. Notifikace — permission prompt (custom pre-prompt → systémový dialog)
  • Skip option na každém kroku
  • „Dokončit" CTA na posledním kroku
  • Data ukládána do profilu → využívá personalizace (PRD-03)

Rozšíření P9:

  • Nové menu položky: „Colosseum Premium" (→ P10), „Notifikace" (→ S9), „Moje hlídače" (→ S10)

3.3 F2+ rozšíření

  • Vícejazyčnost — přepnutí jazyka v nastavení (scope závisí na počtu jazyků)
  • Geolokační personalizace — automatická detekce města, preference v profilu

3.4 K diskusi

— (žádné TBD položky specifické pro klientskou zónu)


4. Business rules

PravidloPopis
Registrace povinné údajeJméno, příjmení, email, telefon, GDPR souhlas. OAuth registrace: provider dodá jméno + email, doplnit telefon a GDPR.
Session managementPersistent login — uživatel zůstává přihlášen. Expirace refresh tokenu: 30 dnů (konfigurovatelné).
BiometrikaNabídnuta po prvním úspěšném přihlášení. Uživatel může zapnout/vypnout v P9. Fallback na heslo.
Offline walletQR kódy vstupenek staženy a cachovány lokálně. Dostupné i bez internetu. Synchronizace při obnovení připojení.
Sdílení vstupenekDeep link s tokenem → příjemce otevře v app (pokud má) nebo v prohlížeči. Sdílená vstupenka = kopie, ne převod (obě strany mají přístup).
Smazání účtuGDPR compliance: žádost o smazání → data smazána do 30 dnů. Aktivní vstupenky zůstávají platné do data akce.
Force updateVynuceno při breaking API changes. Verze kontrolována při app startu.
Guest omezeníGuest (nepřihlášený) může prohlížet a nakupovat. Nemá wallet (vstupenky na email), nemá historii, nemá personalizaci.
Apple/Google WalletIntegrace přes PassKit (iOS) / Google Pay API (Android). Vstupenka jako boarding pass s QR, datem, místem.

5. Data model

Klíčové entity

EntitaZdrojKlíčové atributy
UserAccountAPIid, first_name, last_name, email, phone, auth_provider (email/apple/google/facebook), biometrics_enabled, created_at
UserProfileAPI + lokálníavatar_url, billing_address, gdpr_consent, newsletter_opt_in, preferred_genres[], preferred_cities[], favorite_organizers[]
TicketAPI + lokální cacheid, order_id, event_date_id, seat (row, number, category), qr_code, qr_data (cached offline), status (active/used/expired/shared)
OrderAPIid, user_id, items[], payment_method, status, total, created_at
SessionLokálníaccess_token, refresh_token, expires_at, biometrics_key
OnboardingPreferencesAPIgenres[], cities[], favorite_organizers[], completed_at

Lokální stav

  • Session tokens (secure storage: Keychain / Keystore)
  • Cached QR kódy (encrypted local storage)
  • Onboarding completion flag
  • Welcome slides shown flag
  • Biometrics enrollment flag

6. Edge cases a error states

ScénářŘešení
OAuth provider nedostupnýFallback na email+heslo login. Toast „Přihlášení přes [provider] momentálně nefunguje".
Duplicitní email při registraciInline error: „Tento email je již registrován" + CTA „Přihlásit se".
Biometrics selhání (3x)Fallback na zadání hesla.
Expired refresh tokenTichý redirect na S4 (přihlášení) s vysvětlením „Session vypršela, přihlaste se znovu".
Force update při otevření appX19 blocker — nelze obejít. Offline: zobrazí se při dalším spuštění s připojením.
Sdílení vstupenky — příjemce nemá appDeep link otevře web fallback s QR kódem a CTA „Stáhnout app".
Offline + expirovaný QRQR kód obsahuje data pro offline validaci (podepsaný payload). Expirace řešena na straně scaneru, ne v app.
Smazání účtu s aktivními vstupenkamiWarning: „Máte X aktivních vstupenek. Po smazání účtu budou stále platné, ale nebudete je moci spravovat."
Změna emailuOvěření nového emailu přes potvrzovací link. Starý email platný do potvrzení nového.

7. Screen mapping

Screen IDNázevTypFázeOdhad
P7Moje vstupenky / WalletPrimárníMVP8 h
P9Uživatelský účet (hub)PrimárníMVP8 h
S4PřihlášeníSekundárníMVP4 h
S5RegistraceSekundárníMVP4 h
S7Historie objednávekSekundárníMVP4 h
S8Detail vstupenkySekundárníMVP4 h
S14Editace profiluSekundárníMVP4 h
S15Podpora / KontaktSekundárníMVP4 h
X7Empty state — VstupenkyPodpůrnáMVP1 h
X8Empty state — ObjednávkyPodpůrnáMVP1 h
X10Splash / LoadingPodpůrnáMVP1 h
X11Offline režimPodpůrnáMVP1 h
X14Smazání účtuPodpůrnáMVP1 h
X15GDPR souhlasPodpůrnáMVP1 h
X16Přidáno do kalendářePodpůrnáMVP1 h
X17Vstupenka sdílenaPodpůrnáMVP1 h
X19Force updatePodpůrnáMVP1 h
X20Welcome slidesPodpůrnáMVP1 h
S6Onboarding (dotazník)SekundárníF14 h

Celkem PRD-02: MVP 18 obrazovek (52 h) + F1 1 obrazovka (4 h) = 56 h čistý návrh

Poznámka: S15 (Podpora/Kontakt) je detailně specifikována v PRD-06. Zde zahrnuta v screen mapping protože je přístupná z P9.


8. Otevřené otázky

#OtázkaFázeDopad
OQ-02-01Email editace — Může uživatel změnit email po registraci? Pokud ano, jak probíhá ověření?MVPOvlivňuje S14
OQ-02-02Sdílení = kopie vs. převod — Je sdílení vstupenky kopie (obě strany mají přístup) nebo převod (odesílatel ztrácí přístup)?MVPOvlivňuje S8, X17 a business rules
OQ-02-03Guest → registrace migration — Pokud guest nakoupí a pak se zaregistruje, propojí se jeho objednávky s novým účtem?MVPOvlivňuje backend i UX flow
OQ-02-04Tablet layout — Řešíme tablet verzi klientské zóny?MVP+20–30 % na adaptivní layouty
OQ-02-05Dark mode — Je dark mode součástí MVP?MVPOvlivňuje DS, +8–12h na validaci
OQ-02-06Onboarding timing — Zobrazuje se S6 ihned po registraci, nebo až po prvním nákupu?F1Ovlivňuje conversion funnel