服務

訂閱制收費系統怎麼做?從定期定額授權、扣款失敗重試到降級挽留的完整規劃(含真實成本與 90 天路線圖)

2026.09.03 · 31 次瀏覽
訂閱制收費系統怎麼做?從定期定額授權、扣款失敗重試到降級挽留的完整規劃(含真實成本與 90 天路線圖)

訂閱制的難度從來不是收第一次錢,是收第 13 次。217 筆殭屍訂閱,就是沒人定義「扣款失敗之後該發生什麼」的代價。

分享:

第 14 個月,客戶才發現有 217 個「殭屍訂閱」

一家線上課程客戶,訂閱制上線 14 個月,帳面 1,842 個有效訂閱。對帳才發現其中 217 筆的信用卡早就過期:系統重試三次、失敗、然後什麼都沒做——會員照樣登入看課,帳上卻沒這筆錢。月費 NT$690 計,一年漏掉約 NT$180 萬。問題不在金流商,在系統從來沒定義「扣款失敗之後該發生什麼」。訂閱制的難度不是收第一次錢,是收第 13 次。

適用情境 × 不適用情境

適合做訂閱制系統不適合(先別做)
線上課程/內容會員,需要按月鎖權限單價高、一年成交 3 到 5 筆的 B2B 專案(用電子報價單即可)
SaaS 或工具型服務,有明確方案分層客戶數 < 50 且都是熟客(用轉帳+Google Sheet 對帳更划算)
實體訂閱盒/定期配送,需要出貨排程綁扣款方案規則每個客戶都不同(那是合約管理,不是訂閱制)
健身房/診所療程包,需要期數與剩餘次數控管只有年繳一種方案且數量少(人工開發票成本更低)
需要升降級、按比例補差額(proration)的多層方案還沒驗證有人願意付第二個月(先做手動收款測 PMF)

替代方案矩陣

方案成本級距優點缺點
綠界/藍新定期定額開發 NT$8–15 萬;金流手續費依綠界官方費率約 2.75%–3.5%台灣本土支援、支援超商與 ATM、發票串接完整方案變更、按比例補差額要自己算;API 彈性較低
Stripe Billing開發 NT$10–20 萬;手續費依官方費率+Billing 加成方案、試用、proration、Dunning 全內建;Webhook 成熟台灣本土支付方式支援有限;台灣公司帳戶設定較繁瑣
SaaS 套裝(如 Chargebee/Paddle)月費 US$0–599 起+抽成免開發、報表與稅務內建資料在外部;抽成隨營收線性增加;客製空間小
自建訂閱引擎(Laravel Cashier)開發 NT$18–35 萬完全掌控規則、可與既有會員系統深度整合Dunning、對帳、稅務要自己維護;首年維運成本高

多數台灣中小企業的甜蜜點是「綠界定期定額 + 自建訂閱狀態機」:金流用本土、狀態機自己控。

完整流程拆解(含工具與交付物)

  • 階段 1:方案與規則定義(3–5 天)|Figma、Notion|交付:方案矩陣表、狀態機圖(試用 → 有效 → 逾期 → 寬限 → 暫停 → 取消)。這步沒定完就寫程式,是所有返工的來源。
  • 階段 2:授權與代扣串接(5–8 天)|綠界定期定額 API 或 Laravel Cashier|交付:授權建立、代扣執行、Webhook 冪等處理。
  • 階段 3:Dunning 催收(4–6 天)|Laravel Queue、SendGrid、LINE Messaging API|交付:D+1/D+3/D+7 重試排程、三段通知、寬限期後自動降權。
  • 階段 4:升降級與按比例補差額(3–5 天)|交付:proration 規則文件+跨月/跨年/退款三組單元測試。
  • 階段 5:發票與對帳(4–6 天)|電子發票 API、Metabase|交付:自動開立、作廢與折讓流程、每日對帳報表。
  • 階段 6:客戶自助後台(3–5 天)|交付:更換卡片、切換方案、下載發票、含挽留頁的自助取消。
  • 階段 7:UAT 與上線(3–5 天)|Sentry、UptimeRobot|交付:測試卡號情境清單、代扣日壓力測試、監控告警。

總計約 25–40 個工作天。

真實成本完整拆解

  • 開發費:NT$180,000–350,000(依方案層數)
  • 金流手續費:約 2.75%–3.5%,年營收 NT$500 萬時吃掉 NT$14–17.5 萬
  • 電子發票:每張 NT$0.5–1.5 或年費 NT$6,000–20,000
  • Email 與推播:每月 NT$300–1,500;簡訊/LINE 每則 NT$0.7–2.0
  • 隱藏費用 1:Dunning 人工介入——自動重試救不回的部分,客服每月約 4–8 小時
  • 隱藏費用 2:對帳差異調查——上線前三個月每月約 3–6 小時
  • 隱藏費用 3:卡片到期潮——每年 5%–8% 的卡自然到期,沒有主動提醒就是直接流失
  • 後續維護:月費 NT$8,000–20,000

實施真相 vs 客戶想像

  • 以為「串好金流就能自動收錢」|實際金流只回報這次成功或失敗,失敗後的重試、通知、降權、挽留全是你要寫的邏輯,佔整體工時約 35%。
  • 以為「取消就是把資料刪掉」|實際要區分立即停用與用到期末,並保留發票與稅務紀錄;直接刪除會讓對帳與退款做不了。
  • 以為「升級就是換個價格」|實際跨週期升降級要按比例算未使用天數、開差額帳單或折讓,跨月與跨年規則不同,最容易出錯。
  • 以為「Webhook 收到就等於處理完」|實際金流商會重送通知,沒做冪等處理就會重複入帳、重複開發票。

常見陷阱 × 怎麼避開

  • 陷阱 1:扣款失敗沒有降權流程。→ 第一天就定義寬限期(建議 7 天)與到期自動降權,寫進狀態機。
  • 陷阱 2:Webhook 沒有冪等鍵。→ 用金流商交易序號當唯一鍵加 unique index,重複通知直接忽略。
  • 陷阱 3:代扣日全部集中在 1 號。→ 按訂閱建立日分散扣款日,否則會撞金流商速率限制。
  • 陷阱 4:沒做卡片到期提醒。→ 到期前 30/7 天各發一次,這是投報率最高的一條催收邏輯。
  • 陷阱 5:發票開了但訂單被退款。→ 建立折讓流程,對帳報表把「已開發票未收款」單獨列一欄。
  • 陷阱 6:自助取消藏太深。→ 取消入口放明顯處,改用暫停或降級的挽留方案留人。
  • 陷阱 7:測試只用成功卡號。→ 用失敗、餘額不足、卡片過期的測試卡號各跑一遍完整流程。

成功指標 + 上線後 90 天路線圖

  • 第 30 天:看代扣成功率(健康值 > 92%)、Webhook 處理失敗數(應為 0)、對帳差異金額(應 < 營收 0.5%)。優化重點:修正對帳差異來源。
  • 第 60 天:看 Dunning 挽回率(自動重試救回的比例,健康值 25%–40%)、卡片更新率。優化重點:調整重試間隔與通知文案。
  • 第 90 天:看月流失率(Churn,內容型健康值 < 5%/月)、自助取消頁的挽留轉換率、方案升級率。優化重點:把挽留選項從「只有取消」改成「暫停/降級/取消」三選一。

決策清單

  • ☐ 我們已經有至少 50 個願意付第二個月的付費者
  • ☐ 方案數量在 5 個以內,規則對所有客戶一致
  • ☐ 我們能明確定義「扣款失敗後第 7 天要發生什麼」
  • ☐ 我們需要升降級與按比例補差額
  • ☐ 我們需要試用期(免費或優惠價)
  • ☐ 我們必須開立電子發票且要能作廢與折讓
  • ☐ 我們有人可以每月花 4 小時處理催收例外
  • ☐ 我們的客戶主要用台灣本土支付方式
  • ☐ 我們需要客戶自助更換信用卡
  • ☐ 我們需要暫停訂閱(而非只有取消)
  • ☐ 我們願意在上線前跑完失敗卡號的測試情境
  • ☐ 我們有每日對帳報表的收件人
  • ☐ 我們的年營收預估足以吸收 3% 的金流手續費

勾選 8 項以上,適合投入自建訂閱系統;勾選 4 項以下,先用 SaaS 套裝或人工收款驗證。

常見問題 FAQ

綠界定期定額和 Stripe Billing 該選哪個?

看客戶在哪。主要在台灣、需要超商與 ATM 付款、要串本土電子發票,選綠界;客戶在海外、需要複雜方案與 proration,選 Stripe。兩者並用可行,但對帳邏輯要分開寫,成本多約 20%。

扣款失敗要重試幾次?

常見是 3 到 4 次,間隔 D+1、D+3、D+7。超過 4 次收效遞減,且部分發卡行會把高頻失敗視為異常。重點不是次數,是每次重試都要搭配一次讓客戶能行動的通知。

可以先做簡化版嗎?

可以。單一月繳方案、Dunning 只做「失敗即通知+7 天後降權」、不做 proration,約 12–15 天(完整版 25–40 天)。但狀態機一定要在第一版就設計完整,否則後面補會動到資料結構。

怎麼檢查有沒有殭屍訂閱?

跑一支對帳查詢:把「權限有效」的訂閱與「最近一期成功扣款紀錄」對起來,找出最後成功扣款日超過一個週期+寬限期的那些。這通常是第一次對帳最震撼的一張表。

下一步

我們的訂閱制收費系統建置從 NT$180,000 起(含方案矩陣、狀態機設計、定期定額串接、Dunning 流程與每日對帳報表)。已有系統的話,也可以只做一次訂閱健檢

分享: