指南

如何建立健身中心會籍應用程式:收費計劃、結算、課堂預約及簽到

健身會籍應用程式讓人加入會籍、每月付款、預約課堂及簽到,同時讓職員看到哪些會員仍然有效、哪些已付款,以及哪些人已經到場。要建立這樣的應用程式,你需要會員帳戶、與付款服務供應商的訂閱功能相連的會籍計劃、設有人數上限及候補名單的課堂時間表、大門簽到方式,以及職員管理介面。AI 應用程式建立工具可以快速做出核心功能。困難之處在於金錢規則(暫停、付款失敗、取消、按比例計算費用),以及確保大門的進出權限與會員實際已付的會籍相符。

先確定你的會籍模式

健身中心及工作室的情況差異很大。請先寫下:

  • **計劃類型。**每月無限次、非繁忙時段、堂數套票、單次體驗、年度預付、家庭或學生計劃。
  • **合約條款。**逐月續約、最短合約期、取消所需的通知期。請查核當地有關合約及取消的消費者規定。
  • **每個計劃包括什麼。**只限健身室、只限課堂、兩者皆包括,或只限特定分店。
  • **暫停會籍。**會員可否因旅遊或受傷而暫停?暫停多久,以及是否需要收費?
  • 入會費(如有)。
  • **課堂。**固定的時間表、每堂人數上限、候補名單,以及臨時取消及缺席的規定。

以堂數套票營運的小型瑜伽或拳擊工作室,所需的應用程式與設有門禁、全日開放的健身中心完全不同。應按你的情況建立。

應用程式需要什麼

資料

資料表主要欄位
會員姓名、電郵、電話、緊急聯絡人、簽署免責聲明的時間、QR token、狀態
計劃名稱、價錢、結算週期、包括的堂數(無限或指定次數)、開放時間、是否有效
會籍會員、計劃、狀態(有效、已暫停、逾期未付、已取消)、開始日期、結束或續約日期、付款服務供應商的訂閱 ID
課堂類型及場次名稱、教練、房間、開始時間、時長、人數上限
預約場次、會員、狀態(已預約、候補、已取消、已出席、缺席)、建立時間
簽到記錄會員、時間、地點、方式
付款會員、金額、狀態、日期、付款服務供應商的參考編號,由供應商同步過來

要讓會籍狀態與付款服務供應商保持一致。是否付款成功,應以供應商的紀錄為準;當供應商通知你的應用程式後,應用程式再更新自己的狀態。

頁面

  • **公開頁面:**會籍計劃及價錢、每週課堂時間表、入會流程(選擇計劃、建立帳戶、簽署免責聲明、付款)。
  • **會員專區:**我的會籍、即將到來的預約、預約或取消課堂、簽到用的 QR code、付款紀錄、暫停或取消會籍的申請。
  • **櫃檯:**簽到掃描器、會員查詢、今日課堂及出席名單。
  • **職員管理:**會員、計劃、時間表、付款失敗的記錄,以及有效會員、出席率及課堂入座率的報告。

權限

會員只能看到自己的資料。教練可以看到自己的課堂名單。櫃檯員工可以簽到及查詢會員。經理負責計劃、退款及報告。入會表格中收集的健康及受傷記錄屬敏感資料:只收集所需的資料,並限制可以查看的人。

比較困難的部分

定期結算

應使用付款服務供應商的訂閱功能,而不是自行建立結算系統。會員在供應商的代管頁面輸入信用卡資料;供應商每個週期扣款、重試失敗的付款,並透過 webhook 把事件傳送到你的應用程式(付款成功、付款失敗、訂閱已取消)。你的應用程式再據此更改會籍狀態。使用 Stripe 加入訂閱的指南介紹了這個流程,而加入付款功能則介紹了基本概念。

需要先決定付款失敗時的處理方法。常見的規則是設定數日的寬限期,之後狀態變為「逾期未付」,並在問題解決前不允許簽到。

暫停、升級及取消

暫停通常是在指定期間內同時停止結算及使用權限。會員在月中轉換計劃時,就會出現按比例計算(即只為期間的一部分收費)的問題。大部分付款服務供應商都可以替你計算按比例費用。設有通知期的取消,意味著會籍會維持有效直至將來某日。把每條規則寫下來,然後逐一測試。

課堂人數上限及候補名單

這與任何預約應用程式面對的重複預約問題相同:在儲存預約時,就要在伺服器檢查人數上限,而不只是在頁面載入時檢查。有人取消時,把空位提供給候補名單上的第一位。同時決定臨時取消的時限,以及缺席是否會扣減課堂堂數。

簽到與門禁

在會員專區顯示的 QR code,在有職員的健身中心由櫃檯掃描,效果很好。無人看管或全日開放的健身中心通常需要門禁硬件,而硬件由其本身的系統控制;只有在硬件提供 API 的情況下,自訂應用程式才能驅動它。這往往是決定自行建立還是購買的關鍵。

免責聲明

很多健身中心要求新會員接受責任免除聲明或健康問卷。應記錄誰在何時接受了哪個版本。條文是具法律效力的文件,應向專業人士索取,而不是交由 AI 撰寫。

有效的首個提示

為 Ironside 建立一個會籍應用程式,這是一所單一分店的力量訓練健身中心。計劃:Monthly Unlimited(每月 $60)、Off-Peak(每月 $40,平日 9:00 至 16:00)、10-Class Pack($120,單次付款)。公開頁面:計劃、每週課堂時間表,以及入會流程,讓人選擇計劃、建立帳戶、接受免責聲明,並透過 Stripe 付款(每月計劃使用訂閱)。會員可以進入專區,查看會籍狀態、簽到用的 QR code、附有人數上限及候補名單的課堂預約,以及申請暫停會籍的按鈕。櫃檯職員登入掃描器頁面,系統會檢查 QR code,顯示會籍是否有效(若為 Off-Peak 計劃,還會檢查是否在非繁忙時段內),並記錄簽到。經理可以看到會員、付款失敗的記錄、出席率及課堂入座率。會籍狀態由 Stripe webhook 更新。所有資料都儲存在資料庫中。設計大膽簡潔;會員以手機為先,櫃檯則適合平板電腦。

建立步驟

  1. 計劃、時間表及會員帳戶。
  2. 課堂預約,在伺服器檢查人數上限,並加入候補名單。
  3. 付款先在測試模式下進行:先處理單次付款的堂數套票,再處理訂閱及 webhook。
  4. 會籍狀態規則:有效、逾期未付、已暫停、已取消,以及每種狀態允許的權限。
  5. 簽到掃描器,並按上述規則執行。
  6. 職員及經理介面,並設定角色。
  7. 免責聲明的接受記錄,附版本及時間戳記。
  8. 測試金錢相關流程:付款失敗、更新信用卡、暫停、更改計劃、有通知期的取消、退款。
  9. **謹慎匯入現有會員。**現有的信用卡訂閱通常需要由付款服務供應商的遷移程序處理,而不是由你的應用程式處理。

常見錯誤

  • 只相信應用程式本身的「已付款」標記,而不是付款服務供應商的事件。
  • 只在瀏覽器檢查課堂人數上限。
  • **付款失敗沒有寬限期。**會員可能只因信用卡在昨天到期,就在門口被拒絕入場。
  • **儲存信用卡資料。**應由付款服務供應商保管。
  • 收集不需要的詳細健康資料,並讓所有職員都看得到。
  • 在確認硬件可由應用程式控制之前,已承諾提供門禁功能。

何時健身中心管理軟件較合適

專為健身中心及工作室設計的軟件,已經涵蓋結算、暫停、課堂預約、簽到、門禁整合、品牌化會員應用程式及報告功能。對大部分健身中心來說,尤其是設有門禁硬件或多間分店的,這會是更好的選擇。選購時,請比較幾款產品在你所需功能上的表現,以及它們如何處理離開的情況(即能否匯出會員及付款訂閱資料)。

當你經營的是簡單規則的小型工作室,而軟件的費用對你來說超出其價值,當你的模式不符合現有產品(例如教練、課程及課堂的混合模式),或當你想把健身軟件作為業務售予其他健身中心時,才值得自行開發。如果你是提供客戶一對一指導而非經營場地,可參閱如何開展私人教練業務;如果你需要收費的線上內容,則可參閱如何建立會員網站。

使用 Mythex 建立

在 Mythex 上,你可以在對話中描述健身應用程式,然後在即時預覽中以手機及平板電腦大小檢查。當會員及預約需要儲存時,代理會加入專用的 Postgres 資料庫(或輸入 /database)。Mythex 不為你的應用程式提供內建的登入或付款功能:你需要連接自己的 Stripe 帳戶及金鑰,並以專案機密形式儲存(Stripe 指南),並以自己選擇的做法加入會員登入功能。Stripe webhook 需要你已發布的網址,因此要端對端測試前,請先發布。在 Pro 方案中,Mythex 還可以把應用程式包裝為 Android 及 iPhone 應用程式,供 Google Play 內部測試及 TestFlight 使用。

如需設計起點,可參考瑜伽工作室網站範本,它設有教練介紹及編輯式版面。

常見問題

健身中心會籍應用程式需要什麼功能?

會員帳戶、設有定期結算的會籍計劃、可由會員預約且有人數上限的課堂時間表、大門簽到,以及供職員查看會員、付款及出席情況的介面。暫停會籍、堂數套票及免責聲明通常會隨後加入。

健身中心應如何收取定期付款?

透過付款服務供應商的訂閱功能,例如 Stripe Billing。會員儲存信用卡資料,供應商每個週期自動扣款,失敗的付款會自動重試,並通知你的應用程式。切勿自行儲存信用卡號碼。

會員如何簽到?

常見做法是會員在帳戶中展示 QR code,由職員或門口的平板電腦掃描。應用程式會檢查會籍是否有效,並記錄到訪。

我應該自行開發健身軟件,還是購買現成的?

大部分健身中心更適合使用現有的健身中心管理軟件,它涵蓋結算、門禁硬件及應用程式。自行開發則適合特別的收費模式、需求簡單的小型工作室,或你打算把它售予其他健身中心的產品。

Mythex · Pricing · 用 AI 建造任何嘢 · 網站及應用程式範本 · Mythex 比較 · AI 應用程式開發詞彙表 · 免費 AI 應用程式開發工具 · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(台灣)