Tất cả bài viết
Phân tích chuyên sâuĐọc trong 8 phút

Hoàn tiền gói trả trước trên Google Play tuân theo quy tắc khác với gói đăng ký, và chỉ một lần quên xác nhận nạp thêm có thể khiến cả gói bị thu hồi

Gói trả trước không bao giờ tự động gia hạn, nên khách hàng không thể hủy mà chỉ nạp thêm. Bài viết giải thích cách Google Play quyết định hoàn tiền gói trả trước, một lần nạp thêm không được xác nhận khiến bạn mất gì, và lệnh gọi API nào hoàn tiền cho phần nào.

Một thanh niên đứng trước ki-ốt nạp tiền điện thoại trên con phố đông đúc lúc chạng vạng, tay cầm điện thoại Android, kiểu khách hàng mua gói trả trước trên Google Play và đôi khi yêu cầu hoàn tiền gói trả trước

Điểm chính

  • Gói trả trước trên Google Play cấp quyền truy cập trong một kỳ thanh toán cố định và không bao giờ tự gia hạn. Khách hàng kéo dài gói bằng cách mua một lần nạp thêm, và Google cho biết gói trả trước không thể hủy vì chúng chỉ đơn giản chạy đến ngày hết hạn.
  • Mỗi lần nạp thêm gói trả trước trên Google Play là một giao dịch mua mới với mã thông báo mua hàng mới, và mã thông báo trước đó được gửi trong trường linkedPurchaseToken. Google gửi thông báo SUBSCRIPTION_PURCHASED cho mỗi lần nạp thêm.
  • Google Play yêu cầu nhà phát triển xác nhận từng giao dịch mua trả trước và từng lần nạp thêm. Gói từ một tuần trở lên có 3 ngày, còn gói ngắn hơn một tuần có một nửa thời lượng gói, nên gói ba ngày có 1,5 ngày.
  • Nếu nhà phát triển bỏ lỡ thời hạn xác nhận một lần nạp thêm gói trả trước trên Google Play, Google sẽ thu hồi lần nạp thêm đó, thu hồi và hủy phần còn lại của gói đăng ký, rồi hoàn tiền cho người dùng.
  • Trung tâm trợ giúp Google Play cho khách hàng biết gói trả trước chưa sử dụng có thể được hoàn tiền, và các yêu cầu hoàn tiền gửi sau hơn 48 giờ kể từ khi mua sẽ được chuyển cho nhà phát triển.
  • Google mô tả tùy chọn fullRefund của purchases.subscriptionsv2.revoke là hoàn lại khoản phí gần nhất trên mỗi mục, nên với gói trả trước đã nạp thêm, nó nhắm vào khoản phí mới nhất chứ không phải mọi lần nạp thêm khách hàng từng mua.
  • Với các đơn hàng Google Play đặt sau ngày 3 tháng 8 năm 2026, một khoản bồi hoàn bị thua khiến nhà phát triển mất giá mua trừ phí dịch vụ của Play, cộng thêm phí bồi hoàn của ngân hàng, và điều này áp dụng cho lần nạp thêm trả trước như mọi đơn hàng khác.

Chỉ cần bỏ lỡ việc xác nhận một lần nạp thêm trên Google Play, Google sẽ không chỉ hoàn tiền cho lần nạp thêm đó. Google thu hồi lần nạp thêm, thu hồi và hủy phần còn lại của gói trả trước của khách hàng, rồi hoàn tiền. Đó là điểm nguy hiểm nhất trong việc hoàn tiền gói trả trước trên Google Play, và bạn hoàn toàn kiểm soát được nó. Phần còn lại của bức tranh hoàn tiền cho gói trả trước khá giống gói đăng ký thông thường, chỉ có vài khác biệt ảnh hưởng đến cách bạn xây dựng hệ thống và những gì bạn mất.

Gói trả trước trên Google Play khác gói đăng ký tự động gia hạn như thế nào

Gói trả trước là một gói cơ bản bán quyền truy cập trong một kỳ thanh toán nhất định rồi dừng lại. Tài liệu trợ giúp Play Console của Google cho biết người dùng mua gói để có quyền sử dụng trong kỳ đó, rồi nạp thêm để lùi ngày kết thúc nếu muốn tiếp tục. Lần nạp thêm có thể là bất kỳ gói cơ bản trả trước nào trong cùng gói đăng ký, kể cả gói có thời lượng khác. Chính ví dụ của Google kéo dài một gói thêm một năm bằng lần nạp thêm $59.99.

Vì không có gì được gia hạn nên cũng không có gì để hủy. Tài liệu thanh toán của Google cho biết gói trả trước không thể hủy, và người dùng muốn dừng chỉ cần để gói chạy đến ngày hết hạn. Trạng thái gói đăng ký của gói trả trước chỉ có thể là ACTIVE, PENDING hoặc CANCELED, và expiryTime luôn có mặt.

Gói trả trước quan trọng nhất ở những nơi thanh toán định kỳ bị hạn chế. Hướng dẫn của RevenueCat nêu ví dụ Ấn Độ, nơi Google tạm ngừng cho khách hàng mới đăng ký các gói tự động gia hạn do quy định của Reserve Bank of India, và gọi gói trả trước là lựa chọn hiển nhiên cho những thị trường như vậy.

Gói cơ bản tự động gia hạnGói cơ bản trả trước
Tự gia hạnCóKhông, người dùng mua lần nạp thêm
Người dùng có thể hủy khôngCóKhông, chạy đến expiryTime
Dùng thử miễn phí và ưu đãiCóKhông, ưu đãi chỉ dành cho gói cơ bản tự động gia hạn
Mã thông báo mua hàng mớiKhi nâng cấp, hạ cấp hoặc đăng ký lạiMỗi lần nạp thêm
Xác nhậnTrong vòng 3 ngày sau mỗi giao dịch mua mới3 ngày cho gói từ một tuần trở lên, một nửa thời lượng cho gói ngắn hơn
Có thể tạm dừngCóKhông

Mỗi lần nạp thêm là một giao dịch mua riêng

Google cấp mã thông báo mua hàng mới cho mỗi lần nạp thêm và đặt mã thông báo trước đó vào linkedPurchaseToken của giao dịch mua mới. Google cũng gửi một thông báo dành cho nhà phát triển theo thời gian thực SUBSCRIPTION_PURCHASED cho mỗi lần. Các lần nạp thêm được cộng dồn. Nếu người dùng nạp thêm sớm, thời gian mới được cộng vào ngày hết hạn cũ chứ không phải tính từ hôm nay. Người dùng chỉ có thể giữ một lần nạp thêm chưa dùng tại một thời điểm, và prepaidPlan.allowExtendAfterTime cho bạn biết khi nào lần tiếp theo khả dụng.

Thời hạn xác nhận là nơi bắt đầu hoàn tiền gói trả trước

Bạn phải xác nhận mọi giao dịch mua trả trước, kể cả mọi lần nạp thêm, vì người dùng đi qua luồng mua hàng mỗi lần. Google cho gói từ một tuần trở lên 3 ngày. Gói ngắn hơn một tuần có một nửa thời lượng, nên gói ba ngày phải được xác nhận trong vòng 1,5 ngày và gói một ngày trong vòng 12 giờ.

Đó là lý do gói trả trước ngắn rủi ro hơn vẻ ngoài. Gói tự động gia hạn hằng tuần hoặc hằng tháng luôn cho bạn 3 ngày như nhau. Gói trả trước một ngày chỉ cho bạn 12 giờ, và một sự cố backend kéo dài hơn thế sẽ biến khách hàng trả tiền thành các khoản hoàn tiền tự động. Hướng dẫn của RevenueCat cũng nêu cùng quan điểm, cảnh báo rằng đơn hàng thứ hai phải được xác nhận nhanh khi gói cơ bản chỉ kéo dài 1 hoặc 3 ngày.

Ai quyết định hoàn tiền gói trả trước

Phần lớn các khoản hoàn tiền gói trả trước trên Google Play được quyết định mà không cần bạn. Chính sách hoàn tiền của Google cho biết người dùng có thể được hoàn tiền trong vòng 48 giờ sau khi mua hàng trong ứng dụng, kể cả gói đăng ký, tùy theo chi tiết. Sau 48 giờ, người dùng được hướng dẫn liên hệ nhà phát triển, bên có thể xử lý hoàn tiền theo chính sách riêng và luật hiện hành. Trang trợ giúp về gói đăng ký của Google thêm một dòng riêng cho gói trả trước: nếu gói chưa được sử dụng, người dùng có thể yêu cầu hoàn tiền cho gói đó.

Hướng hoàn tiềnAi quyết địnhBạn có thể phản hồi khôngThời hạn
Yêu cầu trong vòng 48 giờ sau khi mua hoặc nạp thêmGoogleKhôngKhông có
Yêu cầu sau 48 giờBạn, theo chính sách của bạn và luật địa phươngKhông áp dụngGoogle không quy định
Giao dịch mua hoặc nạp thêm chưa xác nhậnTự độngKhông3 ngày, hoặc một nửa thời lượng gói nếu dưới một tuần
Bồi hoàn được gắn cờ để nhà phát triển xem xétGoogle, sau đó là ngân hàngCó, qua orders.reviewrefund24 giờ
Bồi hoàn không qua xem xét của nhà phát triểnNgân hàngKhôngKhông có

Gói trả trước không thay đổi quy tắc bồi hoàn. Khi Google hỏi ý kiến của bạn về một tranh chấp, bạn có 24 giờ để trả lời qua orders.reviewrefund, và khi ngân hàng đã phán quyết thì quyết định là cuối cùng.

Lệnh gọi API nào hoàn tiền cho phần nào trên gói trả trước

Khi yêu cầu đến tay bạn, bạn có hai công cụ phía máy chủ, và chúng không hoàn tiền cho cùng một thứ.

orders.refund xử lý từng đơn hàng một

orders.refund hoàn tiền một gói đăng ký hoặc đơn hàng trong ứng dụng theo mã đơn hàng. Đặt revoke thành true và quyền truy cập kết thúc ngay lập tức. Google không hoàn tiền cho đơn hàng cũ hơn 3 năm. Vì mỗi lần nạp thêm là một giao dịch mua riêng, hoàn tiền đơn hàng đứng sau một lần nạp thêm là cách chính xác để chỉ hoàn tiền lần nạp thêm đó.

purchases.subscriptionsv2.revoke xử lý trên gói đăng ký

purchases.subscriptionsv2.revoke chấm dứt gói đăng ký và nhận một revocationContext. Google mô tả fullRefund là hoàn lại toàn bộ số tiền của khoản phí gần nhất trên mỗi mục, còn proratedRefund là hoàn lại số tiền theo tỷ lệ dựa trên thời gian còn lại. Với gói đã nạp thêm hai lần, khoản phí gần nhất là lần nạp thêm cuối cùng. Hãy tính đến điều này trước khi hứa trả lại toàn bộ số dư cho khách hàng.

Đừng lấy đi quyền truy cập mà khách hàng vẫn được hưởng

Tài liệu thanh toán của Google cảnh báo rằng việc xóa quyền truy cập vào gói đăng ký khi người dùng vẫn còn quyền hưởng là vi phạm chính sách gói đăng ký của Google Play. Với gói trả trước, thời gian đã trả tiền chính là quyền hưởng. Nếu bạn chỉ hoàn tiền lần nạp thêm gần nhất, hãy giữ cho thời gian đã trả trước đó tiếp tục chạy, trừ khi bạn cũng thu hồi và hoàn tiền phần đó.

Bàn làm việc của nhà phát triển với máy tính xách tay hiển thị ngày hết hạn gói đăng ký và một điện thoại Android bên cạnh, những dữ liệu quyết định việc hoàn tiền gói trả trước trên Google Play

Một khoản hoàn tiền gói trả trước khiến bạn tốn bao nhiêu

Khách hàng trả trước đã thanh toán trước cho một khoảng thời gian cố định, và bạn bắt đầu chi tiêu cho họ ngay khi họ có quyền truy cập. Khoản hoàn tiền trả lại tiền cho họ nhưng các chi phí đó vẫn còn nguyên.

  • Tài nguyên tính toán: mọi phiên, lần đồng bộ hoặc tác vụ phía máy chủ mà khách hàng chạy trong kỳ đã thanh toán đều là năng lực bạn đã trả tiền.
  • Lệnh gọi API: giọng nói, dịch thuật, bản đồ, suy luận mô hình hay bất kỳ dịch vụ bên thứ ba nào tính phí theo yêu cầu vẫn bị tính phí.
  • Lưu trữ: tệp và lịch sử khách hàng tạo ra vẫn nằm trên hóa đơn lưu trữ của bạn cho đến khi bạn xóa chúng.
  • Chi trả: chia sẻ doanh thu, tiền trả cho nhà sáng tạo và hoa hồng giới thiệu gắn với giao dịch mua đã rời khỏi tài khoản của bạn.

Trường hợp quên xác nhận là trường hợp tốn kém nhất. Xác nhận trễ một lần nạp thêm một năm $59.99 không chỉ đảo ngược $59.99. Google còn thu hồi phần còn lại của gói, nên khách hàng mất quyền truy cập mà họ đã trả tiền và nhận được hoàn tiền, trong khi mọi chi phí bạn bỏ ra để phục vụ họ vẫn đã tiêu.

Danh sách kiểm tra khi xây dựng gói trả trước

  • Xác nhận mọi lần nạp thêm từ máy chủ của bạn, không chỉ giao dịch mua đầu tiên, và cảnh báo khi có giao dịch mua vẫn chưa được xác nhận sau vài giờ.
  • Đặt cảnh báo riêng cho gói ngắn. Gói một ngày có 12 giờ và gói ba ngày có 1,5 ngày.
  • Lưu mọi mã đơn hàng và mã thông báo mua hàng, và lần theo linkedPurchaseToken để thấy toàn bộ chuỗi nạp thêm của một khách hàng.
  • Xử lý mã thông báo mua hàng sớm. Google cho biết mã thông báo chỉ còn hiệu lực đến 60 ngày sau khi hết hạn, sau đó Developer API sẽ không chấp nhận nữa.
  • Hoàn tiền một lần nạp thêm bằng orders.refund trên đơn hàng của lần nạp thêm đó, và đừng mặc định rằng fullRefund bao gồm các lần nạp thêm trước.
  • Ghi nhận mức sử dụng theo từng giao dịch mua, để việc xem xét bồi hoàn có câu trả lời thực sự trong khung 24 giờ của nó.
  • Thu hồi quyền truy cập ngay khi nhận được SUBSCRIPTION_REVOKED, vì trạng thái của gói chuyển thành hết hạn.

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

Khách hàng có thể hủy gói trả trước trên Google Play không?
Không. Google cho biết gói trả trước không thể hủy vì chúng không tự động gia hạn. Gói chạy đến ngày hết hạn và khách hàng giữ quyền truy cập cho đến lúc đó. Để ngừng trả tiền, họ chỉ cần không mua lần nạp thêm nào nữa.
Khách hàng có thể được hoàn tiền gói trả trước trên Google Play không?
Có. Trung tâm trợ giúp của Google cho biết gói trả trước chưa sử dụng có thể được hoàn tiền, và Google có thể hoàn tiền mọi giao dịch mua trong ứng dụng, kể cả gói đăng ký, nếu yêu cầu được gửi trong vòng 48 giờ. Sau 48 giờ, Google chuyển khách hàng đến nhà phát triển, bên hoàn tiền theo chính sách riêng và luật địa phương.
Điều gì xảy ra nếu tôi không xác nhận một lần nạp thêm trả trước?
Google thu hồi lần nạp thêm, thu hồi và hủy phần còn lại của gói đăng ký, rồi hoàn tiền cho người dùng. Gói từ một tuần trở lên phải được xác nhận trong vòng 3 ngày, còn gói ngắn hơn trong vòng một nửa thời lượng, nên gói ba ngày có 1,5 ngày.
fullRefund trên gói trả trước có hoàn tiền mọi lần nạp thêm không?
Không, theo mô tả của Google. Tùy chọn fullRefund của purchases.subscriptionsv2.revoke hoàn lại toàn bộ số tiền của khoản phí gần nhất trên mỗi mục. Mỗi lần nạp thêm là một giao dịch mua riêng với đơn hàng riêng, nên hãy dùng orders.refund trên một đơn hàng cụ thể khi bạn muốn hoàn tiền một lần nạp thêm cụ thể.
Gói trả trước có hỗ trợ dùng thử miễn phí không?
Không. Tài liệu trợ giúp Play Console của Google cho biết ưu đãi, bao gồm dùng thử miễn phí và giá giới thiệu, chỉ có thể được tạo cho các gói cơ bản tự động gia hạn. Gói trả trước được thanh toán đầy đủ khi mua và ở mỗi lần nạp thêm.

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.