Đăng ký trong các trò chơi cho phép bạn cung cấp lợi ích định kỳ cho người dùng với phí hàng tháng. Đăng ký tương tự như thẻ, nhưng trong khi các lợi ích của một thẻ được cấp vĩnh viễn, các lợi ích của một đăng ký phụ thuộc vào việc người dùng thanh toán phí hàng tháng.
Đăng ký trên Roblox có các đặc điểm sau:
- Tự động gia hạn: Đăng ký sẽ tự động gia hạn, không phải là mua một lần, và có thể được định giá bằng tiền tệ địa phương hoặc Robux.
- Chi trả bằng Robux: Dù đăng ký được mua bằng tiền tệ địa phương hay Robux, bạn nhận doanh thu từ đăng ký bằng Robux. Để biết thêm chi tiết, vui lòng xem Kiếm tiền với đăng ký.
- Một tầng: Tất cả các đăng ký trong một trò chơi có thể được người dùng sở hữu đồng thời. Đăng ký loại trừ lẫn nhau không được hỗ trợ.
- Định giá theo vùng: Định giá theo vùng được kích hoạt theo mặc định cho các đăng ký được bán bằng Robux và không thể tắt. Định giá theo vùng không có sẵn cho các đăng ký được bán bằng tiền tệ địa phương.
Hướng dẫn về đăng ký
Trước khi tạo các đăng ký của bạn, hãy chắc chắn rằng chúng phù hợp với Điều khoản sử dụng của Roblox và tuân thủ các luật pháp địa phương. Bất kỳ trò chơi nào tham gia vào các trò gian lận, cố gắng gây nhầm lẫn cho người dùng bằng những đề nghị sai hoặc vi phạm Tiêu chuẩn cộng đồng của chúng tôi sẽ bị gỡ bỏ.
Bạn cũng phải đảm bảo rằng các đăng ký của bạn tuân thủ những hướng dẫn sau:
- Cung cấp các tùy chọn đăng ký rõ ràng và phân biệt: Sử dụng tên ngắn gọn, súc tích và tự giải thích mà phân biệt các tùy chọn đăng ký với nhau. Xác định giá cả và thời hạn cho từng tùy chọn khi bán trong trò chơi.
- Cung cấp cùng lợi ích trên các nền tảng và thiết bị: Bất cứ nơi nào đăng ký được mua, hãy đảm bảo rằng người dùng nhận được cùng lợi ích cho bất kỳ kế hoạch đăng ký nào.
- Thiết kế các đăng ký để phù hợp với nhau và các sản phẩm tổng thể của trò chơi: Việc phân bậc cùng một bộ lợi ích, như việc cung cấp các cấp "Đồng," "Bạc," và "Vàng" mà loại trừ lẫn nhau, hiện không có sẵn. Hãy đảm bảo các đăng ký đại diện cho những bộ lợi ích khác nhau.
- Cung cấp lợi ích trong suốt thời gian đăng ký: Sau khi một đề nghị đăng ký được công khai, hãy tôn trọng các lợi ích được mô tả và không thu hồi lợi ích một cách âm thầm.
- Không chỉ dẫn người dùng mua trên nền tảng khác (như di động, web, v.v.) trong trò chơi: Trong khi bạn có thể giao tiếp với người dùng bên ngoài nền tảng, việc sử dụng ứng dụng Roblox để chỉ dẫn người dùng mua ở nơi khác là bị cấm.
- Không yêu cầu người dùng thực hiện thêm các yêu cầu bổ sung để nhận lợi ích của đăng ký sau khi đã thanh toán: Việc yêu cầu người dùng thực hiện các nhiệm vụ bổ sung, chẳng hạn như đăng bài trên mạng xã hội, để nhận lợi ích mà họ đã thanh toán là bị cấm. Hướng dẫn này không ảnh hưởng đến thẻ trận, mà bạn cho phép tạo và tiếp thị như một đăng ký mua.
Robux vs tiền tệ địa phương
Các đăng ký có thể được định giá bằng Robux hoặc tiền tệ địa phương. Bảng sau so sánh hai tùy chọn thanh toán.
| Robux | Tiền tệ địa phương | |
|---|---|---|
| Đủ điều kiện | Tất cả các nhà phát triển | Cần một tài khoản được xác minh bằng ID hoặc số điện thoại |
| Nền tảng | Có sẵn trên tất cả các nền tảng | Có sẵn trên Web, App Store và Google Play |
| Quốc gia | Có sẵn ở tất cả các quốc gia hỗ trợ Roblox | Không có sẵn tại Argentina, Trung Quốc, Colombia, Ấn Độ, Indonesia, Nhật Bản, Nga, Đài Loan, Türkiye (Thổ Nhĩ Kỳ), UAE, Ukraine và Việt Nam |
| Giá | Bất kỳ số tiền bằng hoặc lớn hơn 49 Robux | $2.99, $4.99, $7.99, $9.99 hoặc $14.99 |
| Định giá theo vùng | Kích hoạt theo mặc định | Không có sẵn |
| Chi trả | 70% doanh thu từ đăng ký mỗi tháng | 70% trong tháng đầu tiên, sau đó 100% trong các tháng tiếp theo |
Tạo đăng ký
Để tạo một đăng ký:
- Nhấp vào Tạo đăng ký.
- Tải lên một hình ảnh bìa.
- Nhập một tên duy nhất. Bạn không thể có hai đăng ký với cùng một tên trong cùng một trò chơi.
- Nhập một mô tả rõ ràng về các lợi ích mà bạn đang cung cấp.
- Chọn một trong những tùy chọn thanh toán sau:
- Người đăng ký thanh toán bằng Robux: Tính phí người dùng phí đăng ký định kỳ bằng Robux. Nếu bạn chọn tùy chọn này, bạn phải nhập một giá tùy chỉnh lớn hơn hoặc bằng 49 Robux. Định giá theo vùng được kích hoạt theo mặc định cho đăng ký và không thể tắt.
- Người đăng ký thanh toán bằng tiền tệ địa phương: Tính phí người dùng phí đăng ký định kỳ bằng tiền tệ địa phương của họ. Nếu bạn chọn tùy chọn này, bạn phải chọn một giá đăng ký từ 5 bậc giá có sẵn.
- Chọn một trong những loại sản phẩm sau:
- Bền: Các mục vĩnh viễn tồn tại sau khi sử dụng hoặc tiếp nhận, chẳng hạn như các mục vật lý như vũ khí. Nếu một đăng ký bao gồm một gói các loại hàng hóa khác nhau, với một hoặc nhiều trong số chúng là bền, chẳng hạn như gói giá trị với một thanh kiếm và một bình thuốc, hãy chọn Bền như loại sản phẩm.
- Có thể tiêu: Các mục tạm thời có thể mua lại hết hạn sau khi sử dụng hoặc tiếp nhận, chẳng hạn như các loại thuốc có thể tiêu cho phép tăng cường tạm thời hết hạn theo thời gian.
- Tiền tệ: Bất kỳ phương tiện trao đổi nào mà người dùng có thể sử dụng để mua các mục trong trò chơi của bạn.
- Nhấp vào Tạo đăng ký.
Kích hoạt đăng ký
Bạn có thể có tối đa 50 đăng ký cho mỗi trò chơi giữa các đăng ký đang hoạt động và không hoạt động.
Để đưa một đăng ký lên bán, nhấp vào ⋮ bên cạnh đăng ký mà bạn muốn kích hoạt và chọn Kích hoạt. Các đăng ký hoạt động sẽ tự động có sẵn để bán trên tab Cửa hàng của trang chi tiết trò chơi, và có thể được thêm vào trò chơi của bạn thông qua các hàm MarketplaceService.
Trước khi kích hoạt đăng ký của bạn lần đầu tiên, bạn phải xác nhận một phiên bản rút gọn của tên trò chơi của bạn. Tên trò chơi rút gọn này sẽ được hiển thị cho người dùng khi họ đăng ký, và xuất hiện bên cạnh tên đăng ký mà bạn đã tạo trong Tạo đăng ký.
Trạng thái đăng ký
Đăng ký có hai trạng thái có thể:
- Hoạt động: Các đăng ký hoạt động có sẵn để bán, với người đăng ký có thể gia hạn đăng ký vào đầu kỳ tiếp theo.
- Không hoạt động: Các đăng ký không hoạt động không có sẵn để bán.
Để thay đổi trạng thái của một đăng ký, nhấp vào ⋯ ở góc trên bên phải của ô đăng ký và chọn Kích hoạt (nếu đăng ký hiện đang không hoạt động) hoặc Gỡ bỏ bán (nếu đăng ký hiện đang hoạt động).
Nếu bạn chọn Gỡ bỏ bán, bạn sẽ nhận được tùy chọn để cho phép các người đăng ký hiện tại gia hạn đăng ký của họ, hoặc để hủy các gia hạn trong tương lai cho các người đăng ký hiện tại. Nếu bạn không có kế hoạch gỡ bỏ vĩnh viễn các lợi ích liên quan đến đăng ký khỏi trò chơi của bạn, chúng tôi khuyên bạn nên cho phép các người đăng ký hiện tại gia hạn đăng ký của họ.
Chỉnh sửa đăng ký
Các trường bạn có thể chỉnh sửa phụ thuộc vào phương thức thanh toán.
| Trường có thể chỉnh sửa | Đăng ký được bán bằng Robux | Đăng ký được bán bằng tiền tệ địa phương |
|---|---|---|
| Hình ảnh bìa | Có | Có |
| Tên | Không | Không |
| Mô tả | Có | Có |
| Phương thức thanh toán | Có (có thể chuyển sang tiền tệ địa phương) | Có (có thể chuyển sang Robux) |
| Giá | Có (một lần mỗi 60 ngày) | Không |
| Loại sản phẩm | Không | Không |
| Trạng thái hoạt động | Có | Có |
Việc thay đổi phương thức thanh toán chỉ ảnh hưởng đến các đăng ký mới. Các người đăng ký hiện tại vẫn giữ phương thức thanh toán ban đầu của họ và phải hủy và đăng ký lại để chuyển đổi.
Xóa đăng ký
Để xóa một đăng ký, nhấp vào ⋮ bên cạnh đăng ký mà bạn muốn xóa và chọn Xóa.
Xóa một đăng ký đang hoạt động dẫn đến việc hoàn tiền đầy đủ cho các người đăng ký đang hoạt động và không có Robux cho bạn. Trong hầu hết các trường hợp, nếu bạn muốn xóa một đăng ký, chúng tôi khuyên bạn nên gỡ bỏ nó khỏi bán trước, chọn tùy chọn hủy tất cả các gia hạn và chờ đến khi kỳ hiện tại kết thúc.
Xóa một đăng ký yêu cầu bốn số cuối của ID đăng ký để xác nhận.
Tích hợp đăng ký vào một trò chơi
Kiểm tra trạng thái đăng ký của người dùng
Mẫu mã sau thực hiện việc phát hiện đăng ký trong trò chơi của bạn:
-- Chạy mã này trên máy chủ
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local SUBSCRIPTION_ID = "EXP-11111111" -- Thay thế bằng ID đăng ký của bạn
local function grantAward(player: Player)
-- Bạn nên cấp giải thưởng liên quan đến đăng ký ở đây
end
local function revokeAwardIfGranted(player: Player)
-- Phương thức này sẽ được gọi cho mỗi người chơi không có đăng ký
-- Nếu mã của bạn lưu trữ đăng ký vào Data Stores hoặc cung cấp một số lợi ích cần phải 'thu hồi'
-- bạn nên sử dụng phương thức này để xử lý việc thu hồi
end
local function checkSubStatus(player)
local success, response = pcall(function()
return MarketplaceService:GetUserSubscriptionStatusAsync(player, SUBSCRIPTION_ID)
end)
if not success then
warn(`Lỗi trong việc kiểm tra xem người chơi có đăng ký hay không: {response}`)
return
end
if response.IsSubscribed then
grantAward(player)
else
revokeAwardIfGranted(player)
end
end
local function onUserSubscriptionStatusChanged(player: Player, subscriptionId: string)
if subscriptionId == SUBSCRIPTION_ID then
checkSubStatus(player)
end
end
Players.PlayerAdded:Connect(checkSubStatus)
Players.UserSubscriptionStatusChanged:Connect(onUserSubscriptionStatusChanged)
Thay thế một thẻ bằng một đăng ký
Một tùy chọn để triển khai các đăng ký trong trò chơi của bạn là thay thế một thẻ hiện có bằng một đăng ký. Đây là một tùy chọn tốt nếu bạn muốn nhanh chóng triển khai các đăng ký mà không cần thêm tính năng hoặc giải thưởng mới.
Khi thay thế một thẻ bằng một đăng ký, hãy giữ các điều sau trong tâm trí:
- Bất kỳ người giữ nào hiện có của thẻ nên tiếp tục nhận lợi ích mà họ đã thanh toán.
- Thẻ nên được gỡ bán để người dùng mới có thể mua đăng ký thay thế.
- Đăng ký có thể bị thu hồi, có nghĩa là nếu thẻ của bạn trước đó đã lưu trữ lợi ích của nó vào một Data Store, bạn cần phải "thu hồi" các lợi ích này. Điều này không áp dụng cho tất cả các cách thực hiện thẻ, nhưng có thể áp dụng cho những cái phức tạp hơn.
Mẫu mã sau thay thế một thẻ bằng một đăng ký:
-- Chạy mã này trên máy chủ
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local LEGACY_GAME_PASS_ID = 1234 -- Thay thế bằng ID của thẻ bị thay thế bằng một đăng ký
local SUBSCRIPTION_ID = "EXP-11111111" -- Thay thế bằng ID đăng ký của bạn
local function awardBenefit(player: Player)
-- Bạn nên cấp lợi ích của đăng ký ở đây
end
local function revokeBenefitIfGranted(player: Player)
-- Phương thức này sẽ được gọi cho mỗi người chơi không có đăng ký
-- Nếu mã của bạn lưu trữ đăng ký vào Data Stores hoặc cung cấp một số lợi ích cần phải 'thu hồi'
-- bạn nên sử dụng phương thức này để xử lý việc thu hồi
end
local function checkSubscriptionStatus(player: Player)
local success, result = pcall(function()
return MarketplaceService:GetUserSubscriptionStatusAsync(player, SUBSCRIPTION_ID)
end)
if not success then
print(`Lỗi khi lấy trạng thái đăng ký: {result}`)
return
end
if result.IsSubscribed then
awardBenefit(player)
else
revokeBenefitIfGranted(player)
end
end
local function onPlayerAdded(player: Player)
local success, result = pcall(function()
return MarketplaceService:UserOwnsGamePassAsync(player.UserId, LEGACY_GAME_PASS_ID)
end)
if not success then
print(`Lỗi khi lấy trạng thái thẻ: {result}`)
return
end
if result then
-- Nếu người chơi đã mua thẻ cổ điển, chúng ta không cần phải kiểm tra trạng thái đăng ký của họ
-- vì họ đã được cấp lợi ích cho đời
awardBenefit(player)
return
end
checkSubscriptionStatus(player)
end
local function onUserSubscriptionStatusChanged(player: Player, subscriptionId: string)
if subscriptionId == SUBSCRIPTION_ID then
checkSubscriptionStatus(player)
end
end
local function onPromptGamePassPurchaseFinished(player: Player, purchasedPassID: number, purchaseSuccess: boolean)
if purchaseSuccess and purchasedPassID == LEGACY_GAME_PASS_ID then
awardBenefit(player)
end
end
Players.PlayerAdded:Connect(onPlayerAdded)
Players.UserSubscriptionStatusChanged:Connect(onUserSubscriptionStatusChanged)
-- Chúng ta sẽ tiếp tục lắng nghe các giao dịch thẻ trong trường hợp thẻ vẫn còn được bán
MarketplaceService.PromptGamePassPurchaseFinished:Connect(onPromptGamePassPurchaseFinished)
Thúc đẩy việc mua đăng ký
Người dùng có thể mua đăng ký trực tiếp từ tab Cửa hàng trên trang chi tiết trò chơi của bạn, nhưng bạn cũng nên thêm một cách để họ có thể mua đăng ký trong trò chơi.
Khi bạn thúc đẩy một giao dịch mua đăng ký, UserSubscriptionStatusChanged sẽ kích hoạt nếu người chơi đã sở hữu đăng ký, điều này giúp bắt các tình huống mà một người chơi mua đăng ký từ tab Cửa hàng của trang chi tiết trò chơi của bạn trong khi họ đã ở trong trò chơi.
Mặc dù bạn có thể thúc đẩy một giao dịch mua đăng ký từ client, việc kiểm tra xem người dùng đã có đăng ký hay không với GetUserSubscriptionStatusAsync phải được thực hiện từ máy chủ.
Mẫu mã sau tạo một RemoteFunction mà client có thể sử dụng để yêu cầu trạng thái của một đăng ký:
--Mã này nên chạy trên máy chủ
local ReplicatedStorage = game:GetService("ReplicatedStorage")
-- Tạo một RemoteFunction mà client có thể sử dụng để yêu cầu trạng thái đăng ký
local getSubscriptionStatusRemote = Instance.new("RemoteFunction")
getSubscriptionStatusRemote.Name = "GetSubscriptionStatus"
getSubscriptionStatusRemote.Parent = ReplicatedStorage
getSubscriptionStatusRemote.OnServerInvoke = function(player: Player, subscriptionId: string)
assert(typeof(subscriptionId) == "string")
return MarketplaceService:GetUserSubscriptionStatusAsync(player, subscriptionId)
end
-- Mã này nên chạy trên client
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local SUBSCRIPTION_ID = "EXP-11111111" -- Thay thế bằng ID đăng ký của bạn
local getSubscriptionStatusRemote = ReplicatedStorage:WaitForChild("GetSubscriptionStatus")
local purchaseSubscriptionButton = script.Parent.PromptPurchaseSubscription -- Thay thế bằng nút của bạn
local function playerHasSubscription()
-- Lưu ý nếu đăng ký của bạn đang thay thế một thẻ, bạn sẽ cần kiểm tra nếu thẻ đó cũng đã được sở hữu ở đây
local success, result = pcall(function()
return getSubscriptionStatusRemote:InvokeServer(SUBSCRIPTION_ID)
end)
if not success then
print(`Lỗi khi lấy trạng thái đăng ký: {result}`)
return
end
return result.IsSubscribed
end
-- Ẩn nút nếu người chơi đã có đăng ký
local function hideButtonIfPlayerHasSubscription()
if playerHasSubscription() then
purchaseSubscriptionButton.Visible = false
end
end
local function onPromptSubscriptionPurchaseFinished(player: Player, subscriptionId: string, didTryPurchasing: boolean)
if didTryPurchasing then
-- Có thể mất một thời gian để đăng ký được ghi nhận, vì vậy chúng ta sẽ kiểm tra xem giao dịch mua đã diễn ra trong 10 giây
-- và ẩn nút nếu đã diễn ra
task.delay(10, hideButtonIfPlayerHasSubscription)
end
end
-- Nếu người chơi đã có đăng ký, chúng ta không muốn hiển thị nút gì cả
hideButtonIfPlayerHasSubscription()
purchaseSubscriptionButton.Activated:Connect(function()
MarketplaceService:PromptSubscriptionPurchase(Players.LocalPlayer, SUBSCRIPTION_ID)
-- Nếu người chơi đã có đăng ký, ẩn nút
hideButtonIfPlayerHasSubscription()
end)
MarketplaceService.PromptSubscriptionPurchaseFinished:Connect(onPromptSubscriptionPurchaseFinished)
Các hàm liên quan khác
Các hàm liên quan khác có sẵn trong MarketplaceService là:
- GetSubscriptionProductInfoAsync, cái trả về thông tin sản phẩm của một đăng ký. Bao gồm thông tin liệu đăng ký có được định giá bằng Robux hay tiền tệ địa phương.
- GetUserSubscriptionPaymentHistoryAsync, cái trả về lịch sử thanh toán đăng ký của người dùng.
- GetUserSubscriptionStatusAsync, cái trả về trạng thái đăng ký của người dùng.
Kiếm tiền với đăng ký
Đối với các đăng ký được định giá bằng tiền tệ địa phương, bạn kiếm Robux với tỷ lệ từ US $0.01 đến 1 Robux tùy theo giá cơ bản của nền tảng mà bạn đã chọn, sau khi trừ phí nền tảng. Bạn nhận được 70% giá trị đăng ký trong tháng đầu tiên, và 100% từ tháng thứ hai trở đi. Tỷ lệ chia doanh thu này nhất quán trên tất cả các nền tảng.
Ví dụ, nếu đăng ký hàng tháng của bạn có giá USD $5:
- Tháng đầu tiên: Bạn kiếm 350 Robux (500 * 0.7 = 350)
- Từ tháng thứ hai trở đi: Bạn kiếm được toàn bộ số 500 Robux (500 * 1.0 = 500)
Đối với các đăng ký được định giá bằng Robux, bạn kiếm được 70% giá trị đăng ký mỗi tháng. Tỷ lệ chia doanh thu này nhất quán trên tất cả các nền tảng.
Ví dụ, nếu đăng ký hàng tháng của bạn có giá 500 Robux:
- Tháng đầu tiên: Bạn kiếm 350 Robux (500 * 0.7 = 350)
- Từ tháng thứ hai trở đi: Bạn tiếp tục kiếm 350 Robux (500 * 0.7 = 350)
Doanh thu từ các đăng ký bằng tiền tệ địa phương phải chịu thời gian giữ 30 ngày và sẽ được thêm vào số dư Robux của bạn sau khi thời gian đăng ký đã hoàn tất.
Doanh thu từ các đăng ký bằng Robux theo dõi cùng thời gian giữ như thẻ và sản phẩm phát triển, khoảng 5 ngày.
Hoàn tiền
Đối với các đăng ký bằng tiền tệ địa phương, nếu người dùng yêu cầu hoàn tiền thông qua ngân hàng hoặc cửa hàng ứng dụng của họ trong thời gian giữ 30 ngày, thì thời gian giữ sẽ bị hủy và bạn sẽ không nhận được khoản chi trả cho giao dịch đó.
Các khoản hoàn tiền nhận được ngoài khoảng thời gian giữ sẽ dẫn đến việc số tiền chi trả cho giao dịch hoàn tiền bị trừ vào số dư Robux của bạn. Nếu trò chơi của bạn thuộc sở hữu của một Nhóm và số dư của Nhóm thấp hơn số tiền cần phải trừ, số còn lại sẽ được trừ từ số dư Robux của Chủ sở hữu Nhóm.
Khi người dùng hủy hoặc không gia hạn các đăng ký đang hoạt động của họ, họ không tự động nhận được hoàn tiền. Họ phải yêu cầu hoàn tiền bằng tay, được xử lý theo từng trường hợp. Để biết thêm thông tin về quy trình hoàn tiền đăng ký của người dùng, hãy kiểm tra trung tâm trợ giúp.
Chi trả
Bạn có thể tìm thấy các khoản chi trả đăng ký của mình trong Số dư Robux ⟩ Giao dịch của tôi.
Chi trả đăng ký và Chi trả Nhóm xuất hiện dưới Robux đến sắp xếp, trong khi các khoản hoàn tiền được nhóm lại dưới Robux đi như một Hoàn tiền chi trả. Các trang phụ về đăng ký và chi trả nhóm cung cấp thông tin bổ sung cho các danh mục tương ứng của chúng.

Để xem thông tin hoàn tiền cho từng người dùng, hãy sử dụng GetUserSubscriptionPaymentHistoryAsync.
Phân tích đăng ký
Phân tích đăng ký giúp bạn đánh giá sự thành công của từng đăng ký riêng lẻ, xác định xu hướng và dự đoán thu nhập tiềm năng trong tương lai. Các đăng ký được thêm vào trang phân tích đăng ký sau lần kích hoạt đầu tiên và không bị gỡ bỏ khi chúng bị tắt hoặc xóa. Bạn có thể truy cập các phân tích đã được chuẩn bị sẵn thông qua Bảng điều khiển Người sáng tạo, hoặc bạn có thể nắm bắt các cập nhật đăng ký theo thời gian thực bằng cách sử dụng webhooks.
Thông qua Bảng điều khiển Người sáng tạo
Để truy cập phân tích đăng ký trên Bảng điều khiển Người sáng tạo:
- Đi tới trang Sáng tạo của bạn trên Bảng điều khiển Người sáng tạo và chọn trò chơi của bạn.
- Đi tới Kiếm tiền ⟩ Đăng ký.
- Chọn tab Phân tích.
Phân tích đăng ký theo dõi các chỉ số sau:
- Số đăng ký: Tổng số đăng ký đang hoạt động trong trò chơi của bạn.
- Doanh thu ước tính: Doanh thu ròng được kiếm bởi các trò chơi sau khi trừ phí. Không bao gồm thông tin hoàn tiền.
- Phân loại người đăng ký: Các loại người đăng ký khác nhau.
- Mới: Số lượng giao dịch mua đăng ký của người đăng ký lần đầu.
- Đã gia hạn: Số lượng đăng ký nổi bật đã được mua trong thời gian trước.
- Khôi phục: Số lượng đăng ký mới được mua bởi người dùng đã hủy đăng ký trước đó.
- Hủy đăng ký: Số lượng đăng ký không được gia hạn. Điều này bao gồm tất cả các hủy đăng ký bất kể lý do, cho dù do người dùng hủy, đăng ký bị vô hiệu hóa bởi nhà phát triển, hoặc cho các lý do khác.
- Hủy đăng ký khác với hoàn tiền. Các đăng ký đã hủy là các đăng ký sẽ không gia hạn nhưng đã được thanh toán đầy đủ cho phần còn lại của chu kỳ hóa đơn, trong khi các khoản hoàn tiền sẽ trả lại số tiền đã thanh toán cho người dùng.
- Đăng ký theo nền tảng: Số đăng ký được mua trên từng nền tảng.
- Doanh thu theo nền tảng: Doanh thu ròng kiếm được thông qua các đăng ký được mua trên từng nền tảng.
Thông tin này được hiển thị dưới dạng biểu đồ dựa trên khoảng thời gian dưới tab Xu hướng, và dưới dạng một danh sách tổng hợp về tổng số đăng ký được cung cấp dưới tab Lịch sử.

Thông qua webhooks
Tính năng Webhook của Cloud API bao gồm các kích hoạt cho bốn sự kiện đăng ký: hủy, mua, hoàn tiền và gia hạn. Những thông báo này được kích hoạt ngay lập tức, vì vậy bạn có thể phản hồi theo thời gian thực hoặc tạo phân tích tùy chỉnh của riêng mình. Để biết thêm thông tin về cách thiết lập một webhook, hãy xem Thông báo webhook.