P7 — Wallet — Moje vstupenky
Účel obrazovky
Centrální místo pro všechny vstupenky uživatele. Klíčová hodnota mobilní app oproti webu — vstupenky dostupné offline s QR kódem. Timeline řazení: nadcházející akce nahoře, minulé dole.
Content Priority
- Nadcházející vstupenky (primární sekce) — karty s: název akce, datum + čas, venue, QR kód / náhled QR, status badge (zaplaceno / rezervováno / čeká na platbu) Ticket CardBadge / Tag
- Odpočet do akce — „Za 3 dny" / „Dnes v 19:00" / „Za 2 hodiny" — relativní čas Badge / Tag
- Quick actions per vstupenka — „Zobrazit QR" (tap → fullscreen QR), „Sdílet", „Přidat do kalendáře" Icon Button
- Segmented control — Nadcházející / Minulé Tab Switch
- Minulé vstupenky — stejné karty ale ztlumené (šedá), bez QR akcí Ticket Card
- Tab „Historie objednávek" odkaz — pro detailní přehled objednávek Ghost/Text Button
Interakce
| Trigger | Akce | Cíl |
|---|---|---|
| Tap na vstupenku | Detail vstupenky | S8 — Detail vstupenky |
| Tap na „Zobrazit QR" | Fullscreen QR kód | S8 v QR režimu (maximální jas, landscape support) |
| Tap na „Sdílet" | Systémový share sheet | Deep link na vstupenku |
| Tap na „Přidat do kalendáře" | Systémový kalendář | X16 — Přidáno do kalendáře |
| Přepnutí Nadcházející/Minulé | Filtr timeline | Animovaný switch obsahu |
| Pull-to-refresh | Sync se serverem | Aktualizace statusů a nových vstupenek |
| Tap na „Historie objednávek" | Přechod | S7 — Historie objednávek |
Stavy
| Stav | Popis | Vizuální chování |
|---|---|---|
| Loaded — s vstupenkami | Existují nadcházející vstupenky | Timeline karet s QR akcemi |
| Loaded — jen minulé | Žádné nadcházející, ale existuje historie | Segmented na „Nadcházející" s empty state, přepnutí na „Minulé" |
| Empty | Žádné vstupenky | X7 — Empty state vstupenky |
| Offline | Bez připojení | Vstupenky z lokální cache s plně funkčním QR, banner „Offline — QR kódy jsou dostupné" |
| Nepřihlášen | Guest uživatel | Prompt „Přihlaste se pro přístup k vašim vstupenkám" + CTA login |
Edge Cases a Error States
| Scénář | Řešení |
|---|---|
| Guest nákup (bez registrace) | Vstupenky pouze na emailu, wallet prázdný s vysvětlením „Pro wallet se přihlaste" |
| Akce zrušena po nákupu | Vstupenka s červeným badge „Zrušeno", info o refundu |
| Změna termínu akce | Push notifikace + aktualizovaný datum na vstupenkovém kartě s „Změněno" badge |
| Uživatel má 50+ vstupenek | Paginace / infinite scroll, nadcházející vždy nahoře |
| QR kód se nepodaří vygenerovat | Fallback: textový kód objednávky + „Kontaktujte pokladnu" |
| Vstupenka sdílena s jiným uživatelem | Badge „Sdíleno" na kartě, recipient vidí vstupenku ve svém walletu |
| Maximální jas při QR zobrazení | Automatické zvýšení jasu displeje při fullscreen QR |
Mobilní patterny a odlišení od webu
Co web nemá a proč je to klíčové
- Offline QR wallet — hlavní USP mobilní app; web nemá offline přístup, uživatel musí hledat email s PDF vstupenkou
- Relativní odpočet — „Za 2 hodiny" je mobilní pattern (notifikace, widgety), web zobrazuje jen absolutní datum
- Auto brightness pro QR — při skenování u vstupu automaticky zvýšit jas, aby čtečka přečetla QR
Aplikované patterny
- iOS: Inspirováno Apple Wallet — kartový design, swipe mezi vstupenkami, pass-like UI.
NFCready pro budoucí bezkontaktní vstup. - Android: Material 3 card pattern,
BiometricPromptpro zabezpečený přístup k QR (volitelné)
API Data
POST/sale/itemsGET/sale/{saleNumber}POST/document/eticketPOST/document/evoucher| Operace | Endpoint | Trigger | Poznámka |
|---|---|---|---|
| Vstupenky ve walletu | POST /sale/items | Otevření walletu | Prodané položky za období — TicketOnline s barcode pro QR |
| Detail prodeje | GET /sale/{saleNumber} | Tap na vstupenku | Kompletní detail prodeje (post-payment) |
| E-vstupenka | POST /document/eticket | Stažení / zobrazení | PDF nebo obrázek pro offline wallet |
| E-voucher | POST /document/evoucher | Stažení voucheru | Pokud uživatel má zakoupené vouchery |
CoreAPI poznatek — Order vs Sale lifecycle
API rozlišuje Order (pre-payment, může být cancelled/restored to cart) a Sale (post-payment, vstupenky s barcodes). Wallet zobrazuje Sale items, ne Orders. Klíčové: TicketOnline má dva identifikátory — number (tištěné číslo) a barcode (QR/čárový kód pro skenování u vstupu). Pro wallet je klíčový barcode.
Reference — Aktuální web
SCR-WEB-43Účet — objednávky se statusy (Sold, Booked, Waiting, Cancelled)Poznámka k webu
Web nemá wallet — pouze seznam objednávek v účtu s textovými statusy. Mobilní app přidává zásadně lepší experience: vizuální karty, QR kód, offline přístup, sdílení.
Reference — CineStar benchmark
SCR-CS-16Potvrzení — 'Vstupenky jsme zaslali na email', CTA Sdílet / Moje nákupy
