Tất cả bài viết
Deep diveĐọc trong 9 phút

Việc gia hạn thất bại thường xuyên hơn việc khách hàng hủy, và tỷ lệ rời bỏ ngoài ý muốn đó là doanh thu bạn vẫn có thể giành lại

Một thẻ bị từ chối, chứ không phải một cú chạm vào nút hủy, mới là thứ chấm dứt phần lớn các gói đăng ký, và cửa hàng tiếp tục cố thu tiền trong nhiều tuần. Đây là cách thời gian ân hạn thanh toán, thử lại thanh toán và tạm giữ tài khoản hoạt động trên App Store và Google Play, cùng chi phí thực sự mà tỷ lệ rời bỏ ngoài ý muốn gây ra cho bạn.

Một bàn tay cầm điện thoại hiển thị biểu ngữ thanh toán gói đăng ký thất bại bên cạnh một thẻ ngân hàng đã hết hạn, minh họa tỷ lệ rời bỏ ngoài ý muốn từ một lần gia hạn bị từ chối

Điểm chính

  • Rời bỏ ngoài ý muốn là gói đăng ký kết thúc vì một khoản phí gia hạn thất bại, thường là thẻ hết hạn hoặc bị từ chối, chứ không phải vì khách hàng chọn hủy. Đó là vấn đề thanh toán, và cả hai cửa hàng đều được thiết kế để khôi phục nó cho bạn.
  • Khi một lần gia hạn thất bại, không cửa hàng nào chấm dứt gói đăng ký ngay lập tức. Apple thử lại thẻ trong tối đa 60 ngày, và Google Play giữ một cửa sổ khôi phục 60 ngày được chia giữa thời gian ân hạn và tạm giữ tài khoản.
  • Trong thời gian ân hạn thanh toán, người đăng ký vẫn giữ quyền truy cập đầy đủ trong khi cửa hàng thử lại. Khôi phục trong thời gian ân hạn ở cả hai cửa hàng thì không có gián đoạn và không mất ngày nào, và ngày thanh toán không dịch chuyển.
  • Sau thời gian ân hạn, người đăng ký mất quyền truy cập, nhưng việc thử lại vẫn tiếp tục. Khôi phục lúc đó, Apple bắt đầu một chu kỳ thanh toán mới vào ngày khôi phục, và Google đặt lại ngày thanh toán, nên bạn lấy lại người đăng ký với một lịch mới tinh.
  • Việc khôi phục chạy ngầm mà không tốn phí gì cho bạn. Bạn không trả cho bộ xử lý để thử lại, và Apple còn gánh cả những ngày miễn phí được phục vụ trong thời gian ân hạn. Doanh thu bạn mất thường là doanh thu bạn để tuột đi khi tắt thời gian ân hạn hoặc đọc nhầm một người đăng ký có thể khôi phục thành đã ra đi.
  • Các tín hiệu đến trên chính những luồng App Store Server Notifications và Google Play RTDN mà bạn đã dùng cho hoàn tiền: DID_FAIL_TO_RENEW và SUBSCRIPTION_IN_GRACE_PERIOD, SUBSCRIPTION_ON_HOLD, rồi một BILLING_RECOVERY hoặc SUBSCRIPTION_RECOVERED khi thẻ được thanh toán.
  • Một người đăng ký đang trong thời gian ân hạn hoặc tạm giữ vẫn chưa rời bỏ. Chỉ tính họ là mất khi cửa sổ 60 ngày khép lại mà không khôi phục, nếu không tỷ lệ rời bỏ của bạn trông tệ hơn thực tế và tỷ lệ khôi phục của bạn trông như bằng không.

Một thẻ hết hạn, một ngân hàng từ chối một lần gia hạn, và một người đăng ký bạn chưa bao giờ mất ngừng trả tiền. Họ không mở ứng dụng của bạn và chạm vào nút hủy. Phương thức thanh toán của họ chỉ đơn giản thất bại, và trừ khi bạn biết điều gì xảy ra tiếp theo, họ rơi khỏi doanh thu của bạn không một tiếng động. Đây là rời bỏ ngoài ý muốn, và trên cả App Store lẫn Google Play, cửa hàng không bỏ cuộc với khoản thanh toán đó khi nó thất bại. Nó giữ người đăng ký, tiếp tục thử lại thẻ, và trong hầu hết trường hợp giữ một cửa sổ mở trong nhiều tuần nơi tiền vẫn có thể đến. Phần lớn việc khôi phục đó diễn ra dù bạn hành động hay không. Đọc nó cho đúng là sự khác biệt giữa việc đếm một lần hủy thật và việc xóa sổ một khoản thanh toán mà cửa hàng sắp thu về cho bạn.

Đây không phải hoàn tiền và không phải bồi hoàn. Không có gì bị đảo ngược, không có tiền rời khỏi tài khoản của bạn. Doanh thu chỉ đơn giản không bao giờ đến, và trong báo cáo của bạn nó trông như một lần hết hạn bình thường. Đó chính xác là lý do nó rò rỉ một cách âm thầm. Một khách hàng hủy thì báo cho bạn biết họ đang rời đi. Một khách hàng có thẻ thất bại thì không nói gì với bạn, và nếu bạn đối xử với họ như nhau, bạn mất đi những người mà cửa hàng sắp giành lại.

Rời bỏ ngoài ý muốn thực chất là gì

Rời bỏ có hai hình thái, và chúng không phải cùng một vấn đề. Rời bỏ tự nguyện là một quyết định: khách hàng hủy vì họ không còn muốn gói đăng ký nữa. Rời bỏ ngoài ý muốn là một tai nạn: khoản phí gia hạn thất bại, thường vì thẻ hết hạn, chạm hạn mức, hoặc bị ngân hàng gắn cờ vì là khoản phí định kỳ hay khoản phí nước ngoài. Cái thứ nhất là vấn đề sản phẩm mà bạn sửa bằng sản phẩm. Cái thứ hai là vấn đề thanh toán, và đó là cái mà cửa hàng được thiết kế để sửa giúp bạn.

Vì sao nó lớn hơn vẻ ngoài

Gia hạn thất bại là chuyện thường, và chẳng liên quan gì đến việc ứng dụng của bạn tốt đến đâu. Thẻ hết hạn theo lịch, số dư cạn kiệt, và ngân hàng từ chối những khoản phí định kỳ mà họ cho là có vẻ rủi ro. Mỗi chu kỳ gia hạn, một phần các khoản phí của bạn thất bại vì những lý do mà người đăng ký chưa bao giờ chọn. Vì những người đăng ký đó chưa bao giờ tuyên bố họ rời đi, họ dễ bị đọc nhầm thành những lần hết hạn bình thường và dễ bị mất dấu, và đó là cách doanh thu có thể khôi phục cuối cùng bị ghi nhận là đã chết.

App Store tiếp tục cố trong 60 ngày

Khi một gói đăng ký tự động gia hạn không thu được phí, Apple không chấm dứt nó. Nó chuyển sang một giai đoạn thử lại thanh toán kéo dài tối đa 60 ngày, và Apple tiếp tục thử thẻ suốt cửa sổ đó. Điều người đăng ký trải nghiệm trong 60 ngày đó phụ thuộc vào một thiết lập mà bạn kiểm soát: thời gian ân hạn thanh toán.

Thời gian ân hạn thanh toán giữ quyền truy cập trong khi Apple thử lại

Bật Thời gian ân hạn thanh toán và người đăng ký vẫn giữ quyền truy cập đầy đủ vào nội dung trả phí của bạn trong suốt độ dài ân hạn, tối đa 16 ngày với các gói hàng tháng và hàng năm, trong khi Apple thử lại thẻ. Khôi phục trong thời gian ân hạn thì hoàn toàn không có gián đoạn: cùng ngày thanh toán, không mất ngày dịch vụ nào, và không có khoảng trống trong doanh thu của bạn. Apple còn gánh cả chi phí của những ngày nó phục vụ miễn phí trong thời gian ân hạn. Đây là thiết lập hiếm hoi gần như hoàn toàn có lợi, vì một người đăng ký được khôi phục thậm chí không bao giờ nhận ra khoản phí thất bại.

Sau ân hạn, quyền truy cập dừng nhưng việc thử lại thì không

Một khi thời gian ân hạn kết thúc mà không có khoản phí thành công, người đăng ký mất quyền truy cập, nhưng Apple tiếp tục thử thẻ trong phần còn lại của cửa sổ 60 ngày. Khôi phục trong khoảng đó và người đăng ký gia hạn vào ngày khôi phục, bắt đầu một chu kỳ thanh toán mới, và Apple không tính phí cho những ngày ân hạn đã cho đi. Chỉ khi trọn 60 ngày trôi qua mà không có thanh toán thành công thì gói đăng ký mới hết hạn vĩnh viễn. Để thời gian ân hạn tắt và người đăng ký mất quyền truy cập ngay khoảnh khắc gia hạn thất bại, đó là thời điểm tệ nhất có thể để trao cho một khách hàng đang trả tiền một cánh cửa bị khóa.

Các thông báo đánh dấu từng bước

Luồng App Store Server Notifications của bạn thuật lại toàn bộ trình tự. DID_FAIL_TO_RENEW cho bạn biết một lần gia hạn đã thất bại, mang một subtype GRACE_PERIOD khi người đăng ký vẫn còn trong thời gian ân hạn và nên giữ quyền truy cập. GRACE_PERIOD_EXPIRED đánh dấu điểm kết thúc ân hạn, thời điểm để thu hồi quyền truy cập. DID_RENEW với subtype BILLING_RECOVERY nghĩa là thẻ cuối cùng đã thanh toán được và người đăng ký đã trở lại. EXPIRED với subtype BILLING_RETRY nghĩa là 60 ngày đã hết và người đăng ký thực sự đã ra đi. Xử lý bốn cái đó và quyền truy cập của bạn luôn khớp với trạng thái thực.

Một cuốn lịch với một khoảng ngày được đánh dấu và một chiếc đồng hồ cát nhỏ đặt trên đó, minh họa cửa sổ khôi phục mà một cửa hàng giữ mở trên một lần gia hạn gói đăng ký thất bại

Google Play chia chính 60 ngày đó thành hai

Google Play vận hành cùng ý tưởng đó ở một hình thái khác và với thuật ngữ riêng của mình. Một lần gia hạn thất bại đưa gói đăng ký qua một thời gian ân hạn rồi đến tạm giữ tài khoản, và hai cái cộng lại tạo thành một cửa sổ khôi phục 60 ngày.

Thời gian ân hạn giữ quyền truy cập, tạm giữ tài khoản lấy nó đi

Trong thời gian ân hạn, người đăng ký vẫn giữ quyền truy cập trong khi Google thử lại thẻ, và thời điểm hết hạn được đẩy ra khi các lần thử lại chạy. Nếu thẻ thanh toán được, gói đăng ký khôi phục với ngày gia hạn ban đầu còn nguyên vẹn, như thể việc thất bại chưa bao giờ xảy ra. Nếu ân hạn hết, gói đăng ký rơi vào tạm giữ tài khoản. Giờ quyền truy cập dừng, và nó tắt cho đến khi việc thanh toán được sửa. Khôi phục từ tạm giữ tài khoản và quyền truy cập trở lại, nhưng ngày thanh toán đặt lại về ngày khôi phục thay vì ngày cũ.

Phép tính 60 ngày đã thay đổi vào cuối năm 2025

Kể từ ngày 1 tháng 12 năm 2025, Google tính độ dài tạm giữ tài khoản bằng 60 ngày trừ đi thời gian ân hạn của bạn. Ân hạn 16 ngày để lại 44 ngày tạm giữ, và cửa sổ khôi phục gộp lại vẫn là 60 ngày. Chọn ân hạn dài hơn thì bạn đánh đổi thời gian tạm giữ lấy thời gian truy cập, nhưng tổng cửa sổ không thay đổi. Google khuyến nghị đọc trạng thái gói đăng ký trực tiếp qua API của họ thay vì giả định một độ dài tạm giữ cố định, vì phần chia giờ được suy ra chứ không tĩnh.

Các loại RTDN bạn xử lý

Real-time Developer Notifications của Google Play gọi tên từng giai đoạn. SUBSCRIPTION_IN_GRACE_PERIOD nghĩa là giữ quyền truy cập và nhắc khách hàng sửa thẻ. SUBSCRIPTION_ON_HOLD nghĩa là thu hồi quyền truy cập ngay bây giờ. SUBSCRIPTION_RECOVERED nghĩa là thanh toán đã thành công và quyền truy cập trở lại. SUBSCRIPTION_CANCELED rồi SUBSCRIPTION_EXPIRED nghĩa là cửa sổ đã khép lại mà không có sự khắc phục và người đăng ký đã rời bỏ. Những cái này đến trên chính đường ống RTDN mà bạn đã chạy cho các giao dịch mua bị hủy và hoàn tiền.

Giai đoạnApp StoreGoogle Play
Gia hạn thất bại, giữ quyền truy cậpThời gian ân hạn thanh toán, tối đa 16 ngàyThời gian ân hạn, độ dài bạn đặt
Gia hạn thất bại, mất quyền truy cậpSau ân hạn, suốt phần còn lại của 60 ngàyTạm giữ tài khoản
Tổng cửa sổ khôi phụcTối đa 60 ngày60 ngày, ân hạn cộng tạm giữ
Khôi phục trong ân hạnCùng ngày thanh toán, không mất ngày nàoCùng ngày gia hạn, không gián đoạn
Khôi phục sau ân hạnChu kỳ thanh toán mới vào ngày khôi phụcNgày thanh toán đặt lại về ngày khôi phục
Kết thúc vĩnh viễnEXPIRED, subtype BILLING_RETRYSUBSCRIPTION_EXPIRED

Rời bỏ ngoài ý muốn tốn của bạn những gì

Chi phí ở đây không phải kiểu hoàn tiền, nơi khoản tiền bạn đã ghi nhận bị đòi lại. Nó là doanh thu không bao giờ xuất hiện, và nó ẩn trong các con số của bạn như một lần hết hạn thông thường.

Một lần gia hạn bạn đã trả tiền để giành được

Mỗi người đăng ký định kỳ đã khiến bạn tốn tiền thật để giành được: chi phí quảng cáo và nội dung sáng tạo đã thu hút họ, quá trình làm quen, cùng năng lực tính toán, lưu trữ và các lệnh gọi API mà bạn đã chạy cho họ mỗi chu kỳ kể từ đó. Một người đăng ký mất vì một chiếc thẻ chết ra đi với toàn bộ chi phí chìm đó không thu hồi được, và để thay thế doanh thu bạn lại trả chi phí thu hút từ đầu cho một người mới. Một người đăng ký mà cửa hàng khôi phục không tốn của bạn gì để giành lại. Khoảng cách giữa hai cái đó, thu hút lại toàn bộ so với bằng không, là số tiền mà rời bỏ ngoài ý muốn thực sự làm dịch chuyển.

Việc khôi phục đang chạy miễn phí, nếu bạn để nó chạy

Đây là phần bị bỏ sót. Trong thời gian ân hạn và thử lại, cửa hàng đang thu tiền thay mặt bạn mà không tốn phí gì cho bạn. Bạn không chạy việc thu nợ, bạn không trả cho bộ xử lý cho mỗi lần thử lại, và bạn không phải gửi lấy một email nào. Việc khôi phục đang diễn ra ngầm suốt một cửa sổ 60 ngày. Khi doanh thu đó vẫn cứ mất, thường nó bắt nguồn từ một trong hai sai lầm bạn tự gây ra: tắt thời gian ân hạn, khiến người đăng ký bị khóa ngay khoảnh khắc một chiếc thẻ thất bại, hoặc đối xử với một người đăng ký vẫn còn trong cửa sổ khôi phục như một lần hủy dứt khoát và từ bỏ khoản doanh thu mà cửa hàng chưa hề từ bỏ.

Cách thực sự giữ rời bỏ ngoài ý muốn ở mức thấp

Dồn công sức của bạn vào vài thiết lập và tín hiệu làm dịch chuyển việc khôi phục, và để cửa hàng làm việc thử lại mà nó vốn đã làm tốt.

Bật thời gian ân hạn thanh toán

Trên cả hai cửa hàng, hãy bật một thời gian ân hạn. Nó giữ những người đăng ký đang trả tiền ở trong ứng dụng của bạn trong khi cửa hàng thử lại, nên một người đăng ký được khôi phục không mất ngày nào, và đây là biện pháp kiểm soát có đòn bẩy cao nhất ở đây. Trên App Store nó là một công tắc trong App Store Connect. Trên Google Play, thời gian ân hạn được bật mặc định cho các gói cơ bản tự động gia hạn, nên việc cần làm là giữ nó bật và đặt một độ dài mà bạn thấy thoải mái phục vụ miễn phí.

Làm cho quyền truy cập khớp với trạng thái thực trong ân hạn và tạm giữ

Giữ quyền truy cập trong thời gian ân hạn, trên DID_FAIL_TO_RENEW của Apple với subtype GRACE_PERIOD và SUBSCRIPTION_IN_GRACE_PERIOD của Google. Thu hồi quyền truy cập khi ân hạn của Apple hết hạn và khi Google gửi SUBSCRIPTION_ON_HOLD. Khôi phục nó ngay khoảnh khắc việc khôi phục xảy đến, trên BILLING_RECOVERY hoặc SUBSCRIPTION_RECOVERED. Làm sai theo một hướng và bạn cho không quyền truy cập trong nhiều tuần. Làm sai theo hướng kia và bạn khóa một người đăng ký chỉ còn cách một lần thử lại là trả tiền cho bạn lần nữa.

Đếm việc khôi phục tách khỏi rời bỏ

Một người đăng ký trong ân hạn hoặc tạm giữ tài khoản chưa rời bỏ. Đừng ghi nhận họ là mất cho đến khi cửa sổ khôi phục khép lại mà không có khoản phí thành công. Nếu phân tích của bạn gộp gia hạn thất bại và khách hàng đã hủy vào một con số, tỷ lệ rời bỏ của bạn đọc ra tệ hơn thực tế và việc khôi phục của bạn đọc ra như thể chẳng có gì đang diễn ra. Tách rời bỏ ngoài ý muốn ra và theo dõi tỷ lệ khôi phục của nó, vì tỷ lệ đó là một con số bạn thực sự có thể làm dịch chuyển bằng một thiết lập và một lời nhắc.

Nhắc việc khắc phục, rồi tránh sang một bên

Một điều hữu ích bạn có thể thêm vào là một cú hích. Cả hai cửa hàng đều cho phép bạn nhắc người đăng ký cập nhật phương thức thanh toán của họ, Apple ở trong ứng dụng và Google qua In-App Messaging API và các thông báo Play. Một lời nhắc đúng thời điểm trong thời gian ân hạn nâng cao việc khôi phục, vì hầu hết những khách hàng này vẫn muốn gói đăng ký và chỉ cần sửa một chiếc thẻ. Ngoài cú hích đó, hãy để cửa hàng thử lại. Nó vốn đã làm phần tốn kém, miễn phí, trong nhiều tuần.

Chính những luồng App Store Server Notifications và RTDN mà RefundHalt vốn đã lắng nghe cho hoàn tiền cũng mang mọi tín hiệu thanh toán này. Ân hạn, tạm giữ, khôi phục và rời bỏ ngoài ý muốn đến trên bảng điều khiển của bạn ngay cạnh các khoản hoàn tiền, để bạn có thể quan sát cửa sổ khôi phục làm việc của nó thay vì phải đoán lần gia hạn thất bại nào đã ra đi và lần nào sắp trở lại.

Phiên bản ngắn gọn

Một lần gia hạn thất bại không phải là một lần hủy, và cửa hàng đối xử với nó như vậy trong nhiều tuần. Apple thử lại một chiếc thẻ trong tối đa 60 ngày và, với thời gian ân hạn bật lên, giữ người đăng ký ở trong ứng dụng của bạn trong khi làm điều đó. Google Play chia chính 60 ngày đó giữa một thời gian ân hạn giữ quyền truy cập và một tạm giữ tài khoản lấy nó đi. Bật ân hạn, xử lý các thông báo ân hạn và tạm giữ để quyền truy cập khớp với thực tế, nhắc khách hàng sửa thẻ của họ, và chỉ tính một người đăng ký là đã rời bỏ sau khi cửa sổ khép lại trống rỗng. Rời bỏ ngoài ý muốn là chỗ rò rỉ doanh thu duy nhất mà cửa hàng đang chủ động nỗ lực bịt lại cho bạn. Việc của bạn phần lớn là tránh sang một bên, và đọc các con số của mình đủ tốt để biết khi nào tổn thất là thật.

Câu hỏi thường gặp

Sự khác biệt giữa rời bỏ tự nguyện và rời bỏ ngoài ý muốn là gì?
Rời bỏ tự nguyện là khách hàng chọn hủy một gói đăng ký. Rời bỏ ngoài ý muốn là một gói đăng ký kết thúc vì một khoản phí gia hạn thất bại, thường là thẻ hết hạn hoặc bị từ chối, mà khách hàng không hề quyết định rời đi. Rời bỏ ngoài ý muốn là một vấn đề thanh toán mà cửa hàng cố khôi phục cho bạn, nên nó không nên được đếm hay xử lý theo cùng cách như một lần hủy thật.
Người đăng ký có giữ quyền truy cập khi thanh toán gia hạn của họ thất bại không?
Còn tùy giai đoạn. Trong thời gian ân hạn thanh toán, người đăng ký vẫn giữ quyền truy cập đầy đủ trong khi cửa hàng thử lại thẻ, trên cả App Store và Google Play. Sau khi thời gian ân hạn kết thúc, quyền truy cập dừng: Apple tiếp tục thử lại trong phần còn lại của cửa sổ 60 ngày với quyền truy cập tắt, và Google chuyển gói đăng ký vào tạm giữ tài khoản, nơi quyền truy cập bị thu hồi cho đến khi việc thanh toán được sửa.
Cửa hàng tiếp tục cố thu phí một gói đăng ký thất bại trong bao lâu?
Tối đa 60 ngày trên cả hai cửa hàng. Apple chạy một giai đoạn thử lại thanh toán tối đa 60 ngày, với thời gian ân hạn thanh toán nằm bên trong nó. Google Play giữ một cửa sổ khôi phục 60 ngày được chia giữa thời gian ân hạn và tạm giữ tài khoản, nơi mà, kể từ ngày 1 tháng 12 năm 2025, tạm giữ tài khoản được tính bằng 60 ngày trừ đi độ dài thời gian ân hạn của bạn.
Tôi có nên bật thời gian ân hạn thanh toán không?
Với hầu hết các ứng dụng, có. Thời gian ân hạn giữ những người đăng ký đang trả tiền ở trong ứng dụng của bạn trong khi cửa hàng thử lại một chiếc thẻ thất bại, nên bất kỳ ai khôi phục bên trong nó không mất ngày nào và không bao giờ nhận ra sự thất bại. Chi phí là vài ngày truy cập miễn phí cho những người đăng ký không bao giờ khôi phục. Lợi ích là giữ lại những người lẽ ra đã bỏ đi vì một lần khóa đột ngột.
Một người đăng ký trong thời gian ân hạn hoặc tạm giữ tài khoản đã rời bỏ chưa?
Chưa. Họ đang ở trong cửa sổ khôi phục, và cửa hàng vẫn đang cố thu tiền. Tính họ là đã rời bỏ sẽ thổi phồng tỷ lệ rời bỏ của bạn và che giấu tỷ lệ khôi phục của bạn. Chỉ ghi nhận một người đăng ký là mất khi cửa sổ 60 ngày khép lại mà không có thanh toán thành công, điều mà các cửa hàng báo hiệu bằng một thông báo EXPIRED (thử lại thanh toán) trên Apple và SUBSCRIPTION_EXPIRED trên Google Play.
Rời bỏ ngoài ý muốn có tạo ra một khoản hoàn tiền hay bồi hoàn không?
Không. Không có gì bị đảo ngược và không có tiền rời khỏi tài khoản của bạn. Một lần gia hạn thất bại là doanh thu không bao giờ đến, chứ không phải một khoản thanh toán bị rút lại. Đó là điều ngược lại với một khoản hoàn tiền hay bồi hoàn, và đó là lý do nó ẩn trong các báo cáo của bạn như một lần hết hạn thông thường thay vì hiện ra như tiền đi ra.

Nguồn và tài liệu đọc thêm

RefundHalt

Chế độ tự động xử lý hoàn tiền cho App Store và Google Play

Đọc tiếp

Yêu cầu hoàn tiền tiếp theo đã đang trên đường đến.

Thiết lập RefundHalt trong khoảng thời gian bạn cần để đọc thêm một email hỗ trợ về khoản hoàn tiền mà mình chưa kịp phản biện.