Så bygger du en medlemsapp för gym: abonnemang, fakturering, klassbokning och incheckning
En medlemsapp för gym låter folk gå med, betala varje månad, boka klasser och checka in, medan personalen ser vem som är aktiv, vem som har betalat och vem som kom. För att bygga en behöver du medlemskonton, medlemsabonnemang kopplade till en betalningsleverantörs abonnemang, ett klassschema med kapacitet och väntelistor, ett sätt att checka in vid dörren och en personalpanel. Ett AI-verktyg kan ta fram kärnan snabbt. De svåra delarna är pengareglerna (pauser, misslyckade betalningar, uppsägningar, proratering) och att åtkomsten vid dörren stämmer överens med vad medlemmen faktiskt har betalat för.
Börja med din medlemsmodell
Gym och studior skiljer sig mycket åt. Skriv ner:
- Typer av abonnemang. Månadsvis obegränsat, lågtrafiktid, klasspaket (10 klasser), engångsbesök, årsbetalning i förskott, familje- eller studentabonnemang.
- Avtalsvillkor. Löpande månadsavtal, bindningstid, uppsägningstid. Kontrollera lokala konsumentregler för avtal och uppsägningar.
- Vad varje abonnemang inkluderar. Enbart gymmet, enbart klasser, båda, specifika anläggningar.
- Pauser. Kan medlemmar pausa för resa eller skada? Hur länge, och kostar det något?
- Startavgift, om en sådan finns.
- Klasser. Fast tidtabell, kapacitet per klass, väntelistor, regler för sen avbokning och uteblivet deltagande.
En liten yoga- eller boxningsstudio som säljer klasspaket behöver en helt annan app än ett 24-timmarsgym med dörrinpassering. Bygg för din verksamhet.
Vad appen behöver
Data
| Tabell | Viktiga fält |
|---|---|
| Medlemmar | namn, e-post, telefon, anhörig, friskrivning signerad vid, QR-token, status |
| Abonnemang | namn, pris, faktureringsperiod, ingående klasser (obegränsat eller ett antal), tillträdestider, aktiv ja/nej |
| Medlemskap | medlem, abonnemang, status (aktiv, pausad, förfallen, uppsagd), startdatum, slut- eller förnyelsedatum, leverantörens abonnemangs-ID |
| Klasstyper och pass | namn, tränare, sal, starttid, längd, kapacitet |
| Bokningar | pass, medlem, status (bokad, på väntelista, avbokad, närvarade, uteblev), skapad vid |
| Incheckningar | medlem, tid, plats, metod |
| Betalningar | medlem, belopp, status, datum, leverantörens referens – speglade från betalningsleverantören |
Håll medlemskapets status synkad med betalningsleverantören. Leverantören är källan till sanningen om en betalning gick igenom; din app uppdaterar sin egen status när leverantören meddelar det.
Sidor
- Publik: abonnemang och priser, tidtabell, anslutningsflöde (välj abonnemang, skapa konto, signera friskrivning, betala).
- Medlemsyta: mitt medlemskap, kommande bokningar, boka eller avboka en klass, QR-kod för incheckning, betalningshistorik, begär paus eller uppsägning.
- Reception: incheckningsskanner, sök medlem, dagens klasser med närvarolistor.
- Personaladministration: medlemmar, abonnemang, tidtabell, misslyckade betalningar, rapporter om aktiva medlemmar, närvaro och fyllnadsgrad på klasser.
Behörigheter
Medlemmar ser bara sina egna uppgifter. Tränare ser sina klasslistor. Receptionen kan checka in och söka medlemmar. Chefer hanterar abonnemang, återbetalningar och rapporter. Hälso- och skadeanteckningar från anmälningsformulär är känsliga; samla bara in det du behöver och begränsa vem som kan se dem.
De svåra delarna
Återkommande fakturering
Använd en betalningsleverantörs abonnemangsfunktion i stället för att bygga egen fakturering. Medlemmen anger kortuppgifter på leverantörens hostade sida; leverantören debiterar varje period, försöker igen vid misslyckade betalningar och skickar händelser till din app via en webhook (betalning lyckades, betalning misslyckades, abonnemang avslutat). Din app ändrar medlemskapets status som svar. Vår guide om abonnemang med Stripe beskriver detta, och betalningar täcker grunderna.
Bestäm vad som händer när en betalning misslyckas: en karenstid på några dagar, sedan ”förfallen” och ingen incheckning förrän det är åtgärdat, är en vanlig regel.
Pauser, uppgraderingar och uppsägningar
En paus pausar vanligtvis fakturering och åtkomst under en bestämd period. Att byta abonnemang mitt i månaden väcker frågan om proratering (att debitera för en del av en period). De flesta betalningsleverantörer kan räkna ut proratering åt dig. En uppsägning med uppsägningstid innebär att medlemskapet förblir aktivt till ett framtida datum. Skriv ner varje regel och testa den.
Klasskapacitet och väntelistor
Samma dubbelbokningsproblem som i vilken bokningsapp som helst: kontrollera kapaciteten på servern när bokningen sparas, inte bara när sidan laddas. När någon avbokar, erbjud platsen till den första på väntelistan. Bestäm ditt fönster för sen avbokning och om uteblivet deltagande kostar ett klasskredit.
Incheckning och dörråtkomst
En QR-kod i medlemsytan som skannas i receptionen fungerar bra för bemannade gym. Obemannad eller 24-timmarsåtkomst innebär oftast dörrhårdvara, som styrs av hårdvarans eget system; en egen app kan bara styra den om hårdvaran har ett API. Det är ofta det avgörande skälet mellan att bygga och att köpa.
Friskrivningar
Många gym ber nya medlemmar godkänna en ansvarsfriskrivning eller ett hälsoformulär. Lagra vem som godkände vilken version och när. Formuleringen är ett juridiskt dokument; få den från en yrkesperson, inte från en AI.
En första prompt som fungerar
Bygg en medlemsapp för Ironside, ett gym för styrketräning med en anläggning. Abonnemang: Månadsobegränsat ($60/månad), Lågtrafiktid ($40/månad, vardagar 9:00 till 16:00) och 10-klasspaket ($120, engångsköp). Publika sidor: abonnemang, veckans klasstidtabell och ett anslutningsflöde där folk väljer abonnemang, skapar konto, godkänner en friskrivning och betalar via Stripe (abonnemang för månadsabonnemangen). Medlemmar får en yta med sin medlemsstatus, en QR-kod för incheckning, klassbokning med kapacitetsgränser och väntelista samt en knapp för att begära paus. Personal i receptionen loggar in på en skannersida som kontrollerar QR-koden, visar om medlemskapet är aktivt (och inom lågtrafiktiden för Lågtrafiktid) och registrerar incheckningen. Chefer ser medlemmar, misslyckade betalningar, närvaro och fyllnadsgrad på klasser. Medlemsstatus uppdateras från Stripe-webhooks. Lagra allt i en databas. Djärv, enkel design: mobilen först för medlemmar, surfplattevänlig för receptionen.
Byggsteg
- Abonnemang, tidtabell och medlemskonton.
- Klassbokning med kapacitetskontroller på servern och en väntelista.
- Betalningar i testläge: engångspaket för klasser först, sedan abonnemang och webhooks.
- Regler för medlemsstatus: aktiv, förfallen, pausad, uppsagd, och vad varje status tillåter.
- Incheckningsskanner som tillämpar dessa regler.
- Personal- och chefsvyer med roller.
- Godkännande av friskrivning med version och tidsstämpel.
- Testa pengaflödena: misslyckad betalning, uppdaterat kort, paus, byte av abonnemang, uppsägning med uppsägningstid, återbetalning.
- Importera befintliga medlemmar med omsorg. Befintliga kortabonnemang behöver oftast flyttas via betalningsleverantörens migreringsprocess, inte av din app.
Vanliga misstag
- Att lita på appens egen ”betald”-flagga i stället för betalningsleverantörens händelser.
- Att bara kontrollera klasskapacitet i webbläsaren.
- Ingen karenstid vid misslyckade betalningar. Medlemmar nekas inträde för att ett kort gick ut igår.
- Att lagra kortuppgifter. Låt betalningsleverantören förvara dem.
- Att samla in detaljerad hälsoinformation som du inte behöver och låta all personal se den.
- Att lova dörråtkomst innan du bekräftat att din hårdvara kan styras av din app.
När gymhanteringsprogramvara är det bättre valet
Dedikerad gym- och studioprogramvara sköter redan fakturering, pauser, klassbokning, incheckning, integrationer för dörrhårdvara, varumärkta medlemsappar och rapporter. För de flesta gym, särskilt de med dörrhårdvara eller flera anläggningar, är det det bättre valet. Jämför några alternativ utifrån de funktioner du behöver och hur de hanterar avslut (till exempel att exportera dina medlemmar och betalningsabonnemang).
Bygg själv när du driver en liten studio med enkla regler och programvaran kostar mer än den är värd för dig, när din modell inte passar (till exempel en hybrid av coaching, program och klasser), eller när du vill bygga programvara för gym som företag. Om du coachar klienter snarare än driver en anläggning, se så startar du ett företag inom personlig träning, och för betalt onlineinnehåll, se så bygger du en medlemssajt.
Bygga det med Mythex
I Mythex beskriver du gymappen i chatten och kontrollerar den i live-förhandsvisningen i telefon- och surfplattestorlek. Agenten lägger till en dedikerad Postgres-databas när medlemmar och bokningar behöver sparas (eller skriv /database). Mythex har inte inbyggd inloggning eller betalningar för dina appar: du ansluter ditt eget Stripe-konto och egna nycklar, lagrade som projekthemligheter (Stripe-receptet), och lägger till medlemsinloggning med din egen autentiseringsmetod. Stripe-webhooks kräver din publicerade adress, så publicera innan du testar dem från början till slut. På Pro kan Mythex dessutom paketera appen som en Android- och iPhone-app för intern testning på Google Play och TestFlight.
Som designutgångspunkt passar mallen webbplats för yogastudio med tränarprofiler och redaktionella layouter.
Frågor
Vad behöver en medlemsapp för gym?
Medlemskonton, medlemsabonnemang med återkommande betalning, ett klassschema som medlemmar kan boka med kapacitetsgränser, incheckning vid dörren och en personalvy över medlemmar, betalningar och närvaro. Pauser, klasspaket och friskrivningar kommer oftast sedan.
Hur ska ett gym ta emot återkommande betalningar?
Via betalningsleverantörens abonnemangsfunktion, till exempel Stripe Billing, där medlemmen sparar ett kort och leverantören debiterar det varje period, försöker igen vid misslyckade betalningar och meddelar din app. Lagra aldrig kortnummer själv.
Hur checkar medlemmar in?
Vanligast genom att visa en QR-kod från sitt konto, som personalen eller en surfplatta vid dörren läser av. Appen kontrollerar att medlemskapet är aktivt och registrerar besöket.
Ska jag bygga gymprogramvara eller köpa den?
De flesta gym är bäst betjänta av befintlig gymhanteringsprogramvara, som sköter fakturering, åtkomstkontroll med hårdvara och appar. Att bygga själv passar ovanliga modeller, små studior med enkla behov eller en produkt du planerar att sälja till andra gym.