Přeskočit na hlavní obsah

P7 — Wallet — Moje vstupenky

Screen IDP7
Typ Primární
FázeMVP
Účel obrazovky

Centrální místo pro všechny vstupenky uživatele. Klíčová hodnota mobilní app oproti webu — wallet funguje plně offline; QR kódy se čtou z lokální šifrované cache. Obsah je členěný podle času: nadcházející akce (výchozí), minulé vstupenky a integrovaná historie objednávek (dříve samostatná S7).


Content Priority

  1. Skupinové karty podle objednávky — pro každou objednávku jedna skupinová karta: název akce, datum, místo konání, souhrn „N vstupenek“, status badge (zaplaceno / rezervováno / čeká na platbu). Tap na kartu → rozbalení na detail po sedadlech. Quick action „Zobrazit QR“ → fullscreen prohlížeč s přejetím mezi vstupenkami (1/N). Ticket CardBadge / Tag
  2. Odpočet do akce — „Za 3 dny“ / „Dnes v 19:00“ / „Za 2 hodiny“ — relativní čas u nadcházejících položek. Badge / Tag
  3. Quick actions (nadcházející) — „Zobrazit QR“ (viz výše), „Sdílet“ — v [MVP] sdílí deep link na detail akce (P3), nikoli na vstupenku. „Přidat do kalendáře“. Plné sdílení / přenos vstupenky je [F1]; v MVP žádný badge „Sdíleno“. Icon Button
  4. Segmentovaný přepínač (3 segmenty)Nadcházející (výchozí) | Minulé | Historie. Segment Historie integruje obsah S7 — Historie objednávek přímo ve walletu — bez samostatného tabu / tlačítka mimo segment. Tab Switch
  5. Minulé vstupenky — sekce ve zkrácené podobě: souhrnný řádek typu „X minulých akcí“; tap → rozbalení seznamu. Karty minulých akcí jsou ztlumené, bez QR, bez quick actions (jen informativní přehled). Ticket Card
  6. Segment Historie — stejný datový a UI rámec jako dříve S7: detailní přehled objednávek, stavy, odkazy na detaily podle specifikace S7; nyní jako třetí segment walletu, ne jako samostatná primární záložka. Ghost/Text Button

Lokální cache QR a indikace

AspektChování
Okamžité stažení po platběPo úspěšné platbě na X1 — Zaplaceno proběhne okamžitý stažení barcode dat do šifrovaného lokálního úložiště (šifrovaná DB / secure storage).
Pull-to-refreshUživatelsky spustitelná synchronizace — aktualizace cache a stavů z backendu.
Background syncAutomatická synchronizace cca 1× denně (background fetch), pokud to OS a politika baterie dovolí.
Velikostřádově ~5 KB na vstupenku (payload pro QR / barcode identifikátor).
TTL a úklid30 dní po datu akce → automatické vyčištění záznamu z lokální cache.
Offline indikátorU položky se zobrazí zelená fajfka = data jsou v cache a QR je k dispozici offline.

Na S8 — Detail vstupenky při zobrazení QR zobrazit informaci „Jas automaticky zvýšen“ (auto brightness pro spolehlivé skenování u vstupu).


Interakce

TriggerAkceCíl
Tap na skupinovou kartu (nadcházející)Rozbalení / sbalení detailu po sedadlechInline na P7
Tap na „Zobrazit QR“Fullscreen prohlížeč QR, swipe 1/N mezi vstupenkami stejné objednávkyS8 v QR režimu / sdílený fullscreen viewer
Tap na řádek vstupenkyDetail vstupenkyS8 — Detail vstupenky
Tap na „Sdílet“Systémový share sheetDeep link na akci P3 ([MVP]); plné sdílení vstupenky [F1]
Tap na „Přidat do kalendáře“Systémový kalendářX16 — Přidáno do kalendáře
Přepnutí segmentu Nadcházející / Minulé / HistorieFiltr obsahu walletuHistorie = integrovaný obsah S7
Tap na „X minulých akcí“Rozbalení seznamu minulých akcíZůstává na P7, segment Minulé
Pull-to-refreshSync + obnova cacheAktualizace QR payloadů a stavů
Otevření walletu offlineČtení z cachePlně funkční QR tam, kde je zelená fajfka (cached)

Stavy

StavPopisVizuální chování
Loaded — s nadcházejícímiExistují nadcházející objednávkySkupinové karty, rozbalitelný detail, QR quick action, cache indikátor
Loaded — jen minulé / historieŽádné nadcházejícíSegment Nadcházející může ukázat empty state; Minulé a Historie dostupné
EmptyŽádné vstupenkyX7 — Empty state vstupenky
OfflineBez připojeníWallet plně použitelný pro cached položky; QR z lokální cache; banner nebo stavový text typu „Offline — QR z cache“ kde vhodné
NepřihlášenGuest uživatelPrompt „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ákupuSkupinová karta s červeným badge „Zrušeno“, info o refundu
Změna termínu akcePush notifikace + aktualizované datum na kartě s badge „Změněno“
Uživatel má mnoho objednávekPaginace / infinite scroll; nadcházející vždy první
QR se nepodaří stáhnout / chybí v cacheFallback: textový kód / číslo objednávky + „Kontaktujte pokladnu“; po návratu online sync
Sdílení vstupenky mezi uživateli[F1] — přenos / kopie vstupenky; v [MVP] pouze share deep linku na akci, bez badge „Sdíleno“
Maximální jas při QRAuto brightness; na S8 copy „Jas automaticky zvýšen“ u QR

Mobilní patterny a odlišení od webu

Co web nemá a proč je to klíčové

  • Plně offline wallet s přednačteným QR — hlavní USP mobilní app; web spoléhá na email / PDF za online přístupu
  • Skupinový přehled objednávek — jedna karta = jedna objednávka, ne izolovaná vstupenka bez kontextu
  • Relativní odpočet — „Za 2 hodiny“ je mobilní pattern (notifikace, widgety)
  • Auto brightness u QR — na S8 explicitně komunikováno uživateli

Aplikované patterny

  • iOS: Inspirováno Apple Wallet — kartový design, swipe mezi QR v rámci fullscreen vieweru, pass-like UI. NFC ready pro budoucí bezkontaktní vstup.
  • Android: Material 3 card pattern, BiometricPrompt pro zabezpečený přístup k citlivým akcím (volitelné)

API Data

POST/sale/itemsGET/sale/{saleNumber}POST/document/eticketPOST/document/evoucher
OperaceEndpointTriggerPoznámka
Vstupenky ve walletuPOST /sale/itemsOtevření walletu, pull-to-refresh, background syncProdané položky — TicketOnline s barcode pro QR
Detail prodejeGET /sale/{saleNumber}Rozbalení skupiny / detailKompletní detail prodeje (post-payment)
E-vstupenkaPOST /document/eticketPo X1 + obnova cachePayload pro uložení do šifrované lokální DB
E-voucherPOST /document/evoucherPodle typu položkyPokud 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; ten se ukládá do lokální cache po platbě a při sync.


Reference — Aktuální web

SCR-WEB-43: Účet — objednávky se statusy (Sold, Booked, Waiting, Cancelled)
Web ColosseumSCR-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á skupinové karty, offline QR cache, segment Historie, auto brightness u QR a deep link share na akci.

Reference — CineStar benchmark

SCR-CS-16: Potvrzení — 'Vstupenky jsme zaslali na email', CTA Sdílet / Moje nákupy
CineStar benchmarkSCR-CS-16Potvrzení — 'Vstupenky jsme zaslali na email', CTA Sdílet / Moje nákupy