Một lần hoàn tiền trên gói thuê bao tháng cam kết 12 tháng của Apple có thể chấm dứt cả năm, hoặc chỉ một tháng
Gói thuê bao tháng cam kết 12 tháng của Apple chia việc hoàn tiền thành hai trường hợp. Hoàn tiền cho một tháng đã qua thì việc thanh toán vẫn tiếp tục. Hoàn tiền cho tháng hiện tại thì cam kết chấm dứt ngay. Bài viết giải thích từng trường hợp đến máy chủ của bạn ra sao, tốn bao nhiêu, và bạn nên gửi gì cho Apple.

Điểm chính
- Trên gói thuê bao tháng cam kết 12 tháng của Apple, hoàn tiền cho một kỳ thanh toán trước chỉ thu hồi giao dịch của tháng đó, khách hàng vẫn tiếp tục thuê bao và thanh toán đúng lịch.
- Khi Apple hoàn tiền cho kỳ thanh toán hiện tại của gói thuê bao tháng cam kết 12 tháng, cam kết chấm dứt ngay và các khoản thanh toán hàng tháng còn lại sẽ không bao giờ được thu.
- Khách hàng hủy gói cam kết 12 tháng là hủy việc gia hạn cam kết, không phải hủy các khoản thanh toán còn lại. Apple vẫn thu tiền hàng tháng và chỉ gửi EXPIRED sau kỳ thứ 12.
- Billing Grace Period (thời gian ân hạn thanh toán) không áp dụng cho gói thuê bao tháng cam kết 12 tháng. Apple yêu cầu nhà phát triển thu hồi quyền truy cập khi nhận DID_FAIL_TO_RENEW và khôi phục khi nhận DID_RENEW với subtype BILLING_RECOVERY.
- Nếu Apple không thu hồi được khoản thanh toán tháng bị lỗi của gói cam kết 12 tháng trong vòng 90 ngày, cam kết chấm dứt và việc thu hồi quyền truy cập là cuối cùng.
- Yêu cầu hoàn tiền trên gói cam kết sẽ kích hoạt CONSUMPTION_REQUEST, và Apple yêu cầu dữ liệu sử dụng cùng mong muốn hoàn tiền của bạn cho kỳ thanh toán đó trong vòng 12 giờ.
- Nâng cấp từ gói cam kết 12 tháng lên gói cao hơn sẽ chấm dứt cam kết ngay lập tức, và khách hàng có thể được hoàn tiền theo tỷ lệ cho phần chưa dùng của kỳ hiện tại.
Một lần hoàn tiền được chấp thuận trên gói thuê bao tháng cam kết 12 tháng của Apple có thể chỉ lấy lại một khoản thanh toán, hoặc hủy toàn bộ các khoản còn lại trong năm. Trường hợp nào xảy ra phụ thuộc vào một chi tiết mà phần lớn mã máy chủ không bao giờ kiểm tra: tháng được hoàn tiền có phải là tháng hiện tại hay không. Tài liệu của Apple nói rõ điều này. Hoàn tiền cho một kỳ thanh toán đã qua thì cam kết vẫn tiếp tục. Hoàn tiền cho kỳ hiện tại thì cam kết chấm dứt ngay. Xử lý hai trường hợp như nhau, bạn sẽ hoặc cắt quyền của một khách hàng vẫn đang trả tiền, hoặc tiếp tục phục vụ một khách hàng đã ngừng trả.
Cách gói cam kết 12 tháng của Apple thu tiền
Apple ra mắt tùy chọn này vào tháng 4 năm 2026. Đây không phải loại sản phẩm mới. Bạn thêm một gói thanh toán hàng tháng vào thuê bao tự gia hạn một năm sẵn có trong App Store Connect, và product ID giữ nguyên. Khách hàng trả tiền mỗi tháng, đã cam kết 12 lần thanh toán, và cam kết tự gia hạn thêm 12 tháng khi khoản cuối cùng hoàn tất, trừ khi họ hủy trước.
| Quy tắc | Tài liệu của Apple nói gì |
|---|---|
| Nơi bán | Mọi storefront trừ Hoa Kỳ và Singapore |
| Thiết bị và SDK | OS 26.4 trở lên, không gồm watchOS, trong ứng dụng build bằng SDK 26.5 trở lên |
| Giới hạn giá | Tổng 12 tháng phải ít nhất bằng giá năm trả trước và không quá 1,5 lần mức đó |
| Điều kiện tiên quyết | Phải thiết lập gói năm trả trước tại một quốc gia trước khi có thể bán gói trả hàng tháng ở đó |
| Cách thể hiện trong dữ liệu | billingPlanType là MONTHLY, và commitmentInfo chứa billingPeriodNumber, totalBillingPeriods, commitmentExpiresDate và commitmentPrice |
| Nếu bạn gỡ tùy chọn | Khách hàng hiện tại không được gia hạn khi hết cam kết, và khách hàng mới không thể chọn nó |
Mỗi kỳ thanh toán tạo ra một giao dịch riêng và cấp quyền truy cập một tháng. Chính chi tiết này quyết định cách hoàn tiền hoạt động. Apple hoàn tiền theo giao dịch, và trên gói cam kết, mỗi tháng là một giao dịch riêng.
Hoàn tiền ảnh hưởng thế nào đến cam kết 12 tháng
Hướng dẫn của Apple về vòng đời cam kết chia hoàn tiền thành hai trường hợp. Điểm khác nhau là hoàn tiền áp dụng cho kỳ thanh toán nào.
| Hoàn tiền áp dụng cho | Điều xảy ra với cam kết | Bạn thấy nó ở đâu | Máy chủ của bạn nên làm gì |
|---|---|---|---|
| Một kỳ thanh toán trước | Tiếp tục bình thường. Thanh toán đúng lịch | revocationDate trên giao dịch của kỳ đó | Chỉ thu hồi giao dịch đó. Giữ thuê bao hoạt động |
| Kỳ thanh toán hiện tại | Chấm dứt ngay | revocationDate trên giao dịch mới nhất | Kết thúc quyền truy cập. Sẽ không còn khoản thanh toán nào |
| Nâng cấp lên gói cao hơn | Chấm dứt ngay và gói mới bắt đầu | DID_CHANGE_RENEWAL_PREF, subtype UPGRADE | Chuyển quyền lợi. Có thể có hoàn tiền theo tỷ lệ cho phần chưa dùng |
Hoàn tiền tháng thứ hai có hủy phần còn lại của năm không?
Không, miễn là tháng thứ hai đã qua. Giả sử khách hàng đang ở tháng thứ năm và Apple hoàn tiền khoản của tháng thứ hai. Apple thu hồi giao dịch tháng thứ hai, còn khách hàng vẫn tiếp tục thuê bao. Việc thu tiền từ tháng sáu đến tháng mười hai vẫn diễn ra. Hướng dẫn của Apple nói rõ: hãy kiểm tra revocationDate trên giao dịch bị ảnh hưởng, nhưng đừng hiểu nó là việc hủy cam kết.
Khi nào hoàn tiền chấm dứt cam kết
Nếu hoàn tiền áp dụng cho kỳ thanh toán hiện tại, cam kết chấm dứt ngay. Dấu hiệu là revocationDate trên giao dịch mới nhất. Nếu trường này xuất hiện, kỳ hiện tại đã bị thu hồi và không còn khoản thanh toán nào nữa, nên quyền truy cập cũng kết thúc.
Nâng cấp cũng có thể dẫn đến hoàn tiền
Apple lưu ý rằng khách hàng có thể được hoàn tiền sau khi đổi gói, không chỉ khi họ yêu cầu. Nâng cấp từ gói cam kết lên thuê bao cao hơn có hiệu lực ngay. Cam kết chấm dứt, gói mới bắt đầu, và khách hàng có thể được hoàn tiền theo tỷ lệ cho phần chưa dùng của kỳ hiện tại trong cam kết. Hạ cấp thì ngược lại. Hạ cấp chờ đến khi cam kết 12 tháng hoàn tất.
Hủy không phải là hoàn tiền
Khách hàng bấm Hủy trên gói cam kết 12 tháng vẫn chưa ngừng trả tiền. Theo Apple, họ đang hủy việc gia hạn cam kết, không phải các khoản thanh toán còn lại trong kỳ hạn hiện tại. Đây là những gì đến máy chủ của bạn.
- Apple gửi DID_CHANGE_RENEWAL_STATUS với subtype AUTO_RENEW_DISABLED.
- Trạng thái tự gia hạn của cam kết chuyển về 0, nên cam kết sẽ không gia hạn khi hết kỳ hạn.
- Thông tin gia hạn thuê bao vẫn hiển thị willAutoRenew là 1, vì việc thu tiền hàng tháng vẫn tiếp tục.
- Thông báo DID_RENEW tiếp tục đến cho từng tháng còn lại. EXPIRED đến sau kỳ thứ 12, và lúc đó quyền truy cập mới kết thúc.
Apple yêu cầu nhà phát triển kiểm tra loại gói thanh toán trước khi chạy logic hủy thông thường. Nếu là MONTHLY, đừng thu hồi gì cả. Hãy tôn trọng mọi kỳ thanh toán còn lại.
Có một ngoại lệ theo khu vực. App Store Connect Help cho biết khách hàng hủy vẫn tiếp tục trả tiền đến khi cam kết hoàn tất, trừ một số khu vực, và dẫn đến trang của Apple về việc hủy thuê bao tại Đức, Israel, Nam Phi và Thổ Nhĩ Kỳ. Tại bốn quốc gia này, khách hàng có quyền hủy thuê bao với hiệu lực ngay và được hoàn tiền theo tỷ lệ bất cứ lúc nào.
Thanh toán thất bại là mất quyền truy cập ngay
Gói cam kết bỏ đi một tấm lưới an toàn mà có thể bạn đang dựa vào ở nơi khác. Billing Grace Period không áp dụng. Khi một lần gia hạn hàng tháng thất bại, Apple yêu cầu bạn thu hồi quyền truy cập trong lúc thuê bao ở trạng thái billing retry, và chỉ khôi phục nếu khoản thanh toán được thu hồi thành công.
| Thông báo | Ý nghĩa | Cần làm gì |
|---|---|---|
| DID_FAIL_TO_RENEW | isInBillingRetryPeriod là true | Thu hồi quyền truy cập ngay |
| DID_RENEW, subtype BILLING_RECOVERY | commitmentExpiresDate dịch chuyển theo ngày thu hồi thanh toán | Khôi phục quyền truy cập và lưu ngày kết thúc mới |
| EXPIRED, subtype BILLING_RETRY | Apple không thu hồi được khoản thanh toán trong vòng 90 ngày | Cam kết đã kết thúc. Việc thu hồi trước đó là cuối cùng |
Sau khi thu hồi thanh toán thành công, hãy đọc commitmentExpiresDate từ giao dịch mới nhất. Nó sẽ không khớp với ngày kết thúc ban đầu, và mọi lần gia hạn sau đó đều theo lịch đã dịch chuyển.

Hoàn tiền trên gói cam kết khiến bạn mất bao nhiêu
Đây là phần tiền, với giá ví dụ. Giả sử gói năm trả trước của bạn có giá €59,99 và tùy chọn cam kết hàng tháng có giá €6,99, tổng cộng €83,88 trong 12 tháng. Mức này nằm trong giới hạn 1,5 lần giá trả trước của Apple.
| Tình huống, khách hàng ở tháng 4 | Khoản đã hoàn | Khoản tương lai bị mất | Giá trị cam kết mất đi |
|---|---|---|---|
| Apple hoàn tiền tháng 2 | €6,99 | Không có. Tháng 5 đến 12 vẫn thu tiền | €6,99 |
| Apple hoàn tiền tháng 4, kỳ hiện tại | €6,99 | €55,92, tám khoản không bao giờ được thu | €62,91 |
| Khách hàng hủy, không hoàn tiền | Không có | Không có. Tháng 5 đến 12 vẫn thu tiền | €0 |
| Khách hàng ở Đức hủy | Một phần tháng 4 theo tỷ lệ | €55,92 | Tối đa €62,91 |
Đó là giá khách hàng trả. Phần bạn thực sự mất là phần của bạn trong mỗi khoản thanh toán. Apple trả 70% giá thuê bao, trừ các khoản thuế áp dụng, trong năm đầu tiên khách hàng dùng dịch vụ trả phí, và 85% sau đó hoặc cho thành viên App Store Small Business Program.
Khoản hoàn tiền mới chỉ là một nửa hóa đơn. Một tháng truy cập không miễn phí để phục vụ. Nếu ứng dụng của bạn chạy tác vụ tạo nội dung bằng AI, gọi API trả phí của bên thứ ba, hoặc lưu trữ tệp của khách hàng, bạn đã trả tiền cho năng lực tính toán, các lệnh gọi và dung lượng lưu trữ đó trong tháng được hoàn tiền. Hoàn tiền cho tháng đã qua trả lại khoản thanh toán và để lại các chi phí đó cho bạn. Hoàn tiền cho tháng hiện tại cũng vậy, và còn xóa phần còn lại của năm khỏi dự báo của bạn.
Cách trả lời CONSUMPTION_REQUEST cho gói cam kết
Đây là điểm duy nhất bạn có tiếng nói. Khi khách hàng yêu cầu hoàn tiền trên gói cam kết, Apple gửi CONSUMPTION_REQUEST đến endpoint App Store Server Notifications V2 của bạn. Bạn trả lời bằng Send Consumption Information, và Apple yêu cầu bạn phản hồi trong vòng 12 giờ. Phản hồi chứa dữ liệu sử dụng và mong muốn hoàn tiền của bạn cho kỳ thanh toán đó, không phải cho toàn bộ cam kết.
- Chỉ gửi dữ liệu nếu khách hàng đã đồng ý. Tài liệu của Apple nói rằng nếu không có sự đồng ý, bạn không nên phản hồi yêu cầu này.
- Bỏ qua consumptionPercentage. API trả về ConsumptionPercentageAutoRenewableSubscriptionError khi bạn gửi trường này cho thuê bao tự gia hạn.
- Dựa mong muốn hoàn tiền vào mức sử dụng của tháng đó. Khách hàng đã chạy 300 lượt tạo nội dung trả phí trong tháng bị khiếu nại để lại dấu vết chi phí thật. Khách hàng chưa từng mở ứng dụng thì không.
- Xem yêu cầu áp dụng cho kỳ nào. Yêu cầu cho kỳ hiện tại, nếu Apple chấp thuận, sẽ chấm dứt cam kết. Yêu cầu cho kỳ đã qua thì không.
Máy chủ của bạn cần xử lý những gì
- Đọc billingPlanType trên mọi giao dịch và thông báo gia hạn. MONTHLY nghĩa là các quy tắc cam kết được áp dụng.
- Cấp quyền truy cập dựa trên expirationDate của giao dịch. Apple cho biết ngày hết hạn trong commitmentInfo dùng để hiển thị tiến độ, không dùng để quyết định quyền truy cập.
- Khi có hoàn tiền, kiểm tra xem giao dịch mới nhất có revocationDate hay không trước khi kết thúc thuê bao.
- Khi khách hàng hủy, giữ quyền truy cập đến khi EXPIRED đến sau kỳ thứ 12.
- Khi nhận DID_FAIL_TO_RENEW, thu hồi ngay. Đừng chờ một thời gian ân hạn sẽ không bao giờ đến.
- Lưu lại commitmentExpiresDate sau mỗi lần BILLING_RECOVERY.
Apple quyết định mọi khoản hoàn tiền trên App Store, nên CONSUMPTION_REQUEST là cơ hội duy nhất để bạn đưa dữ liệu sử dụng đến trước Apple. RefundHalt tự động trả lời các yêu cầu đó trong khung 12 giờ và ghi lại mỗi lần hoàn tiền rơi vào kỳ thanh toán nào, nên một khoản hoàn tiền cho tháng đã qua sẽ không bao giờ bị nhầm là mất khách hàng.
Câu hỏi thường gặp
- Điều gì xảy ra khi Apple hoàn tiền một khoản thanh toán của gói thuê bao tháng cam kết 12 tháng?
- Tùy vào kỳ thanh toán. Hoàn tiền cho kỳ trước chỉ thu hồi giao dịch của tháng đó, và cam kết vẫn tiếp tục với lịch thanh toán như cũ. Hoàn tiền cho kỳ hiện tại chấm dứt cam kết ngay, nên các khoản còn lại sẽ không bao giờ được thu.
- Khách hàng có thể hủy sớm gói thuê bao tháng cam kết 12 tháng của Apple không?
- Họ có thể hủy, nhưng việc hủy chỉ ngăn cam kết gia hạn, không dừng các khoản thanh toán còn lại. Việc thu tiền tiếp tục đủ 12 kỳ và quyền truy cập cũng tiếp tục theo. App Store Connect Help có nêu ngoại lệ ở một số khu vực, và trang hỗ trợ của Apple cho biết khách hàng tại Đức, Israel, Nam Phi và Thổ Nhĩ Kỳ có thể hủy với hiệu lực ngay và được hoàn tiền theo tỷ lệ.
- Billing Grace Period có áp dụng cho gói cam kết 12 tháng không?
- Không. Apple cho biết Billing Grace Period không áp dụng cho gói thuê bao tháng cam kết 12 tháng. Hãy thu hồi quyền truy cập khi DID_FAIL_TO_RENEW đến, khôi phục khi nhận DID_RENEW với subtype BILLING_RECOVERY, và coi EXPIRED với subtype BILLING_RETRY sau 90 ngày là cuối cùng.
- Tôi có nhận được CONSUMPTION_REQUEST cho gói cam kết 12 tháng không?
- Có. Yêu cầu hoàn tiền trên gói cam kết sẽ gửi CONSUMPTION_REQUEST đến endpoint App Store Server Notifications V2 của bạn. Hãy phản hồi trong vòng 12 giờ với dữ liệu sử dụng và mong muốn hoàn tiền cho kỳ thanh toán đó, và chỉ khi khách hàng đã đồng ý chia sẻ dữ liệu với Apple.
- Gói thuê bao tháng cam kết 12 tháng có ở Hoa Kỳ không?
- Không. Apple cung cấp gói này trên mọi storefront của App Store trừ Hoa Kỳ và Singapore, trên OS 26.4 trở lên, không gồm watchOS, trong ứng dụng build bằng SDK 26.5 trở lên.
Nguồn và tài liệu đọc thêm
- Apple Developer News: Now Available: Monthly Subscriptions with a 12-Month Commitment (April 27, 2026)
- Apple Developer Documentation: Managing the life cycle of monthly subscriptions with a 12-month commitment
- Apple Developer Documentation: Supporting monthly subscriptions with a 12-month commitment
- App Store Connect Help: Set availability for an auto-renewable subscription (monthly with 12-month commitment)
- Apple Support: About canceling subscriptions in Germany, Israel, South Africa, or Türkiye
- Apple Developer Documentation: Send Consumption Information
- Apple Developer Documentation: App Store Server Notifications notificationType
- Apple Developer: Auto-renewable subscriptions (net revenue after one year of paid service)
- Apple Developer: What's new in Apple In-App Purchase (WWDC26)
RefundHalt
Chế độ tự động xử lý hoàn tiền cho App Store và Google Play
Đọc tiếp
Chính sách hoàn tiền của ứng dụng không thể vượt trên Apple hay Google, vậy hãy viết chính sách khớp với những gì thực sự xảy ra
Chính sách hoàn tiền của ứng dụng chỉ ràng buộc bạn ở nơi bạn thực sự là người hoàn tiền. Apple tự hoàn tiền cho mọi giao dịch mua trên App Store, còn Google Play giao việc hoàn tiền cho bạn sau 48 giờ. Dưới đây là nội dung của từng thỏa thuận, cái giá của một lời hứa thiếu cân nhắc và những điều khoản đáng viết.
Cách bạn phản hồi yêu cầu hoàn tiền quyết định vụ việc kết thúc bằng hoàn tiền hay chargeback
Khi khách hàng gửi email hoặc để lại đánh giá đòi lại tiền, cách bạn phản hồi yêu cầu hoàn tiền phụ thuộc vào cửa hàng đã bán giao dịch đó. Bài viết này cho biết ai là người quyết định, những thời hạn ràng buộc bạn, chi phí của từng kết quả và các mẫu trả lời giúp khép lại vụ việc.