BeCodeBeCode
Případové studie
Titan GymBojové sporty a fitness

Prodej členství, QR vstup a docházka místo pronajímaného systému a dvou webů

V provozu od 2026

Web, prodej, portál a dveře haly v jednom systému — postaveném místo pronajímaného systému pro fitness centra a dvou samostatných webů.

QR reporty v adminu. Kdo je právě v hale, proč se někomu vstup nepodařil, vstupy za posledních sedm dní a heatmapa hodina × den za posledních třicet dní.

Čísla
105
obrazovek v systému
350
koncových bodů API
95
datových modelů ve schématu

Výchozí stav

Klub platil za pronajímaný systém a k němu provozoval dva weby.

Evidence členů, prodej i vstupy běžely v pronajímaném systému pro fitness centra. Vedle něj stály dva samostatné weby — jeden pro klub, jeden pro dětské skupiny — a ani jeden z nich o členech nevěděl nic.

Značku provozují tři právní subjekty a jedním z nich je spolek, který vybírá členské příspěvky dětí. Za ty se nevystavuje faktura, ale potvrzení o zaplacení členského příspěvku — doklad, který pronajatý systém nezná.

Kdo je právě v hale, se nedalo zjistit jinak než pohledem do haly.

Co jsme postavili

Jeden systém pro web, prodej, portál i dveře.

Veřejný web s redakčním systémem, členský a trenérský portál a admin jsou jedna aplikace nad jednou databází. Rozvrh, sporty a trenéři se píší jednou a zobrazí se všude.

Člen si členství, jednorázový vstup nebo soukromý trénink koupí přes platební bránu přímo v portálu. Doklad vznikne automaticky, s vlastní číselnou řadou pro každou ze tří firem — a pro spolek v podobě potvrzení o zaplacení členského příspěvku místo faktury.

Tentýž nákup mu do telefonu doručí QR kód. Nosí ho v portálu, v Apple Wallet nebo v Google Wallet; při ztrátě telefonu si vygeneruje nový a starý okamžitě přestane platit.

Výsledek

Dveře haly jsou software.

U vchodu je čtečka na Raspberry Pi: přečte kód, otevře dveře a zapíše vstup. Když vypadne síť, vstupy si odloží a odešle je, jakmile se spojení vrátí. Rozhoduje server podle pravidel, která si klub nastavuje sám — jak brzy před tréninkem kód otevírá dveře a dokdy po něm, zvlášť pro členskou kartu, jednorázový vstup a soukromý trénink.

Každý pokus má výsledek, který se dá přečíst: Vstup, Expirované členství, Překročený limit, Neplatný QR, Mimo okno, Hala je plná. Z toho vzniká docházka s odvozenými odchody, přehled o tom, kdo je v hale, a heatmapa vstupů po hodinách a dnech.

Členy z pronajatého systému jsme převzali i s obdobím, které měli zaplacené — neměli heslo ani kód na dveře, takže jim jednorázový skript rozeslal pozvánku spolu s jejich QR kódem, a kontaktní tabulka se záložkou pro každou disciplínu se změnila na štítky u členů. Systém běží od roku 2026 a doplňuje se dál; další fáze jsou naplánované, ne nasazené — plná automatizace letních campů, oslav, teambuildingu a pronájmu prostor, které jsou dnes sběrem poptávek, a další role s podklady pro výplaty trenérů.

Klíčové moduly

Veřejný web a redakční systém

Blog, sporty, trenéři a rozvrh; obsah se píše v adminu a zobrazí se na webu.

Prodej a doklady

Členství, jednorázové vstupy a soukromé tréninky přes platební bránu, doklad s vlastní číselnou řadou pro každou firmu.

QR vstup na dveřích

Čtečka u vchodu otevře dveře, zapíše vstup a při výpadku sítě si ho odloží.

Vstupní pravidla

Jak brzy před tréninkem kód otevírá a dokdy po něm — zvlášť pro členství, jednorázový vstup a soukromý trénink.

Docházka a reporty

Kdo je v hale, neúspěšné pokusy podle důvodu, vstupy po dnech a heatmapa hodina × den.

Členský a trenérský portál

Můj QR do Apple i Google Wallet, moje návštěvy, doklady, děti a jejich kódy.

Členský portál. Tentýž kód, který čte čtečka u vchodu — v telefonu, v Apple Wallet nebo v Google Wallet, spolu s termíny soukromých tréninků a zbývajícími vstupy.

Stejný typ projektu

CRM stavíme na míru

Pokud vám zakázka dnes žije v tabulce a v hlavách lidí, podívejte se, jak k tomu přistupujeme a co to obnáší.

CRM na míru

Předtím a potom

Nalevo seznam členů v pronajatém systému — karta, typ vstupu a platnost v devíti sloupcích. Napravo to, co z týchž vstupů vzniká dnes: kdo je v hale, proč někoho dveře nepustily a kdy klub doopravdy žije.

PředtímPotom
Na čem to běžíCelý stack
Next.jsNestJSPostgreSQLPrismaStripeReact EmailApple WalletPython
Máte podobný problém?

Řekněte nám, kde se vám dnes přepisují data

Ozvěte se a projdeme si, co by šlo spojit do jednoho systému. Nezávazně, bez prezentace.