年度訂閱退款可以一次把整年的付款追討回去,而且每家商店的處理方式都不同
月費方案退還一個月。年度訂閱退款是依據最後一次收費計算,所以在年度方案裡那就是整整一年。以下說明 Google Play 和 App Store 各自如何決定、你能控制什麼,以及退回一整年真正的代價。

重點摘要
- 年度訂閱退款是依據客戶最近一次收費計算。在年度方案裡,那筆收費就是整整一年,所以全額退款會一次退還十二個月的付款,而不是單一個月。
- 在 Google Play 上,由開發者選擇退款類型。fullRefund 退還目前計費週期的 100%,而 proratedRefund 只依據剩餘的權益時間退還未使用的部分。兩者都會立即撤銷存取權。
- 在 App Store 上,開發者完全無法退款。客戶在 reportaproblem.apple.com 提出申請,只有 Apple 決定,而且 Apple 通常在 24 到 48 小時內回覆。沒有供開發者使用的退款 API。
- 購買後 48 小時內,Google Play 的買家每個應用程式可以自助退款一次。Google 會發出退款、撤銷存取權,並從你的收款中扣除,完全不會問你。
- Apple 依據經過的時間計算自動續訂訂閱的消耗量,所以在年度方案裡你唯一的輸入就是 12 小時的消耗量請求。你從不設定退款金額。
- 被退款的年度方案是你每個案例中最大的損失,因為你在數個月使用期間已經花掉的運算、儲存和支援,並不會隨著金錢一起回來。
年度訂閱退款是大多數應用程式業務見過的最大單筆逆轉。出問題的月費方案退還一個月。年度方案可能一次退還十二個月,因為退款是依據客戶支付的最後一次收費計算,而在年度方案裡那筆收費就是整整一年。當那筆款項離開你的帳戶時,它帶走了一位你已經花費實際金錢服務數個月的訂閱者。
兩家商店處理年度退款的方式幾乎相反。在 Google Play 上,你通常可以選擇退回多少。在 App Store 上,你什麼都不能選,因為只有 Apple 決定。以下就是每家商店對年度訂閱退款究竟做了什麼、你能控制什麼,以及退回一整年真正花你多少。
年度退款是依據最後一次收費計算,而不是依據日曆
年度方案的陷阱在於,退款並不會依訂閱已執行多久來調整。它是依最近一筆訂單來調整。Google 針對其撤銷流程明確說明:使用者退款是依據最新訂單的價值。在年度訂閱中,最新訂單就是完整的年度價格,所以在第九個月核准的全額退款仍會退還整整一年,而不是剩下的三個月。
這就是為什麼單筆年度退款可能蓋過月費方案整整一個月的流失。一個 $99.99 的年度方案若全額退款,就是一行 $99.99 的損失。同樣的營收若分攤到十二筆月費收費,任何時候都只會暴露一個月。年度定價是用較大的預付款換取較大的單一故障點,而退款就是那個故障落下的地方。
Google Play 如何退款年度訂閱
Google Play 把年度退款分成兩個階段,而且兩者受完全不同的規則管轄。
48 小時的自助視窗會退還整筆收費
在購買後的前 48 小時內,客戶可以直接從 Google Play 提出退款申請。Google 的政策允許每個應用程式這樣做一次,而且 Google 依其自身條款處理。不會徵詢你。Google 發出退款,買家失去訂閱的存取權,金額則從你的收款中扣除。在兩天前購買的年度方案上,那就是整筆年度收費被拉回去,完全沒有你的任何輸入就被決定了。
48 小時之後,你選擇全額或按比例
自助視窗關閉後,Google Play 的退款會轉交給開發者,而在這裡你得到一個真正的槓桿。使用 Play Developer API 方法 purchases.subscriptionsv2.revoke,你傳入一個指明退款類型的 revocationContext:
- fullRefund 退還目前計費週期的 100% 並終止訂閱。在年度方案裡,那就是整整一年。
- proratedRefund 只依據剩餘的權益時間退還未使用的部分,並立即撤銷存取權。在半途取消的年度方案上,那大約是半年的價格。
兩種操作都會立即撤銷訂閱,也都會觸發一則 SUBSCRIPTION_REVOKED 即時開發者通知,所以你的伺服器會得知權益已經消失。差別在於金錢。在年度方案裡,選擇 proratedRefund 而非 fullRefund,就是退回整整一年與只退回客戶不會使用的那些月份之間的差別。
| 退款類型 | API 欄位 | 年度方案退回什麼 | 誰決定 |
|---|---|---|---|
| 自助,48 小時內 | Google,不是你 | 整筆年度收費 | Google,每個應用程式一次 |
| 全額退款 | fullRefund | 年度價格的 100% | 你,48 小時後 |
| 按比例退款 | proratedRefund | 只有未使用的部分 | 你,48 小時後 |

App Store 如何退款年度訂閱
在 Apple 上沒有第二階段,因為根本沒有開發者退款這回事。想要拿回年度 App Store 訂閱款項的客戶會在 reportaproblem.apple.com 提出申請,由 Apple 審核並決定。Apple 通常在 24 到 48 小時內給出更新。沒有開發者退款按鈕、沒有退款 API,你也沒有辦法設定金額。
有兩件事會讓開發者在這裡搞混。第一,取消訂閱和退款並不相同。取消年度方案的客戶只是停止下一次續訂,並保有存取權直到年度結束。沒有金錢移動。退款是 Apple 自行判斷的另一個獨立請求。第二,Apple 不公開訂閱退款的按比例計算公式,所以你無法預測客戶會拿到整整一年、其中一部分,還是什麼都拿不到。這是逐案決定的。
你與那項決定唯一的接觸點就是消耗量請求。當自動續訂訂閱被提出退款時,Apple 會發送一則 CONSUMPTION_REQUEST 通知,並給你的伺服器 12 小時透過 Send Consumption Information 端點回應。對於自動續訂訂閱,Apple 會自行依經過的時間計算消耗量,所以你傳送的是交付與帳戶訊號,加上你的退款偏好,而不是使用百分比。它是 Apple 決定的輸入資料,絕不是對它的否決權。
年度訂閱退款究竟花你多少
標價數字只是帳單的起點。被退款的年度方案逆轉了付款,但你為了贏得並服務那位訂閱者而已經花掉的成本,並不會隨之逆轉。
會回來的錢,與不會回來的錢
當年度方案被全額退款時,付款回到客戶手中,這筆銷售離開你的帳本。不會回來的是你在訂閱有效的那數個月間已經花掉的一切:客戶執行的每個工作階段的運算、你的應用程式代表他們發出的 API 呼叫、你為他們的帳戶保留的儲存空間,以及你已經計入為營收的任何收款。在年度方案裡,這些成本在退款落地前已累積數個月,這正是年度退款比月費退款更昂貴的原因。你不只是退回一筆付款,你還在其上吞下數個月已交付的服務。
這就是 Google 的 proratedRefund 展現其價值之處。如果客戶真的在年度中途停止使用產品,按比例退款會把你的損失限制在未使用的部分,而不是整筆收費,同時仍然結束權益。在 Apple 上你沒有這種控制權,所以獲准的年度退款就是你一整塊吞下的整年逆轉。
2026 年 8 月 3 日之後,在 Google Play 上被爭議的年度收費代價更高
如果客戶跳過退款流程,改為向銀行爭議這筆收費,Google Play 上的算式會變得更糟。對於在 2026 年 8 月 3 日之後下的訂單,Google 把 chargeback 成本轉嫁給開發者:你要承擔購買價格減去 Play 的服務費,再加上銀行的 chargeback 費。支付產業消息來源估計那筆銀行費用約在每筆爭議 $15 到 $25 之間,而在整年收費上,它疊加在遠比月費方案任何時候會暴露的還要大的逆轉金額之上。Google 引導開發者透過 orders.reviewrefund 流程使用其 24 小時的 chargeback 審查,作為對抗不正當爭議的方式。
| 每個案例的暴露 | 月費方案 | 年度方案 |
|---|---|---|
| 全額退款逆轉的付款 | 一個月 | 整整一年 |
| 已花掉的已交付成本 | 約一個月的使用 | 最多一年的使用 |
| 2026 年 8 月 3 日後的 Google chargeback | 一個月,減服務費,加銀行費 | 一年,減服務費,加銀行費 |
在年度方案裡,你的證據唯一有分量的視窗
大多數年度退款都是在沒有你的情況下決定的:Google 的 48 小時自助退款、支援人員核准的退款,以及 Apple 自行核准的任何退款。那些是商店的決定,而不是你輸掉的戰役,事後再多的證據也無法改變它們。恰好有兩個時刻,你傳送的內容是決定之前有記錄的輸入資料。
- Apple 的消耗量請求給你 12 小時,在訂閱被提出退款時傳送交付與帳戶訊號,加上你的退款偏好。
- Google 的 chargeback 審查給你 24 小時,在買家向銀行爭議收費時透過 orders.reviewrefund 傳送證據。
在高價值的年度方案上,兩個視窗每次都值得回應,因為押上的金額是整整一年,而不是單一個月。這兩個視窗以外的一切都是記帳,而不是一場較量。
EEA 與 UK 買家在哪裡改變了算式
消費者法不會止於商店的政策。在歐洲經濟區和英國,法定撤回權讓買家有更強的立足點來取消購買,而 Google Play 也針對這些地區發布了另一套退款政策以相符。對於賣給那裡客戶的年度方案,請假設退款途徑對買家可能比標準的 48 小時規則更寬鬆,並把那些退款當作商店決定的,而非可爭議的。
如何在你的數字中解讀年度退款
年度退款不該和月費退款以相同方式記錄,因為暴露並不相同。
- 用金額而非次數來衡量年度退款。一筆整年逆轉可能勝過數十筆月費退款,所以年度方案上偏低的退款次數仍可能是一場很大的金錢外流。
- 在 Google Play 上,對真正的年度中途取消預設使用 proratedRefund,並把 fullRefund 保留給整筆收費確實應該退回的案例。這個選擇就是你留下或送出去的錢。
- 把商店決定的退款和兩個可爭議的視窗區分開來。只依你回應過的消耗量請求和 chargeback 審查來評判你的防禦,絕不要依 Apple 或 Google 自行發出的退款。
- 快速提交證據。在年度方案裡,12 小時和 24 小時的計時器和其他任何方案一樣長,但取決於它們的金額卻是整整一年。
這就是 RefundHalt 對待年度方案的方式。高價值的消耗量請求和 chargeback 審查會連同其截止期限率先浮現,年度退款是依金額衡量,而不是按次數混在一起,而商店在沒有你的情況下決定的退款則另外記錄,讓你的帳本完整,又不必假裝你本來可以對抗它們。
簡短版
年度訂閱退款是依據最後一次收費計算,所以在年度方案裡,全額退款會一次退還整整一年。在 Google Play 上,你可以在前 48 小時之後選擇結果:fullRefund 退回整整一年,proratedRefund 只退回未使用的部分,兩者都立即撤銷存取權。在 App Store 上,你什麼都不能選,因為只有 Apple 決定,而你唯一的輸入是 12 小時的消耗量請求。真正的代價比付款更大,因為你已經花掉的數個月運算、儲存和服務,並不會隨著金錢一起回來。用金額衡量年度退款,在案例真實時按比例退款,並回應每一個可爭議的視窗,因為在年度方案裡,押上的永遠是整整一年。
常見問題解答
- 我可以自己退款年度訂閱嗎?
- 這取決於商店。在 Google Play 上你可以,使用 Play Developer API 方法 purchases.subscriptionsv2.revoke,並由你選擇 fullRefund 或 proratedRefund。在 App Store 上你不行。沒有供開發者使用的退款 API,所以客戶必須在 reportaproblem.apple.com 提出申請,而且只有 Apple 決定金額。
- 年度方案的全額退款會退回整整一年嗎?
- 會,當退款是全額退款時。退款是依據客戶最新訂單的價值,而在年度方案裡那筆訂單就是整年的收費。在 Google Play 上,fullRefund 退還目前計費週期的 100%,也就是整整一年。在 App Store 上,Apple 逐案決定金額,而且可以退回整整一年。
- 在 Google Play 上,fullRefund 和 proratedRefund 有什麼差別?
- fullRefund 退還目前計費週期的 100% 並結束訂閱。proratedRefund 只依據剩餘的權益時間退還未使用的部分,同樣立即結束存取權。在半途取消的年度方案上,fullRefund 退回整整一年,而 proratedRefund 大約退回剩下的一半。
- 我可以阻止 Apple 退款年度訂閱嗎?
- 不行。只有 Apple 能核准或拒絕 App Store 退款,而且沒有辦法阻擋。你唯一的輸入是 CONSUMPTION_REQUEST 通知,它給你的伺服器 12 小時,透過 Send Consumption Information 端點傳送交付與帳戶訊號,加上你的退款偏好。Apple 把它當作輸入資料,而非否決權。
- 取消年度訂閱會退回未使用的月份嗎?
- 不會。取消只會停止下一次續訂,而客戶保有存取權直到目前的年度結束。沒有金錢移動。退款是另一個獨立請求。Apple 不公開訂閱退款的按比例計算公式,所以年度中途取消不會自動退回未使用的部分。
資料來源與延伸閱讀
- Android Developers: Manage subscriptions and one-time purchases (purchases.subscriptionsv2.revoke, fullRefund vs proratedRefund, refund based on the latest order, SUBSCRIPTION_REVOKED)
- Google Play Android Publisher API: purchases.subscriptionsv2.revoke reference
- Google Play Help: Apps, games, and in-app purchases refund policies (48-hour self-service window, once per app, contact the developer after 48 hours)
- Google Play Help: Refund policies in EEA countries and the UK (separate statutory-rights refund policy)
- Google Play Console Help: Updates to refund protection and chargeback cost responsibility (developer carries purchase price minus service fee plus bank chargeback fee for orders after August 3, 2026)
- Apple Support: Request a refund for apps or content that you bought from Apple (customers file at reportaproblem.apple.com, Apple decides, 24 to 48 hours for an update)
- Apple Developer: Send Consumption Information (App Store Server API, the 12-hour consumption request input for consumables and auto-renewable subscriptions)
- Apple Developer: CONSUMPTION_REQUEST notification type (sent for refund requests on auto-renewable subscriptions, with the ConsumptionRequestReason field)
RefundHalt
App Store 與 Google Play 的退款自動駕駛
繼續閱讀
過多的退款申請,代價可能遠超退款本身,因為兩大 App 商店都把它視為品質訊號
Apple 審查準則 5.6.4 把過多的退款申請列為 App 未達品質標準的跡象,Google 的開發人員發布協議也允許它依退款率下架新開發人員的 App。本文整理兩家商店的原文、下架的實際成本,以及如何避開風險。
在處理退款之前先驗證 App Store 伺服器通知,因為任何人都能向你的 webhook URL 發送請求
在檢查簽章之前,一則退款通知只不過是一個 HTTPS 請求。本文說明如何驗證 App Store 伺服器通知和 Google Play RTDN 訊息、各商店簽署的內容,以及偽造的退款或遭錯誤拒絕的退款會讓你付出什麼代價。