roblox-monetization · diff
git:20260924.4741b2b to git:20261015.28be409
6 added, 4 removed. Audit A to A.
---
name: roblox-monetization
description: "Use when implementing Roblox GamePasses, Developer Products, subscriptions, private servers, Creator Rewards, or purchase policy checks."
- last_reviewed: 2026-08-21
+ last_reviewed: 2026-10-04
sources:
- https://create.roblox.com/docs/reference/engine/classes/MarketplaceService
- https://create.roblox.com/docs/reference/engine/classes/MarketplaceService#BindReceiptHandler
- https://create.roblox.com/docs/production/monetization/passes
- https://create.roblox.com/docs/production/monetization/developer-products
- https://create.roblox.com/docs/production/monetization/subscriptions
+ - https://raw.githubusercontent.com/Roblox/creator-docs/main/content/en-us/production/monetization/regional-pricing.md
+ - https://create.roblox.com/docs/production/monetization/robux-transfers
- https://create.roblox.com/docs/production/monetization/paid-random-items
- https://create.roblox.com/docs/reference/engine/classes/PolicyService
- https://create.roblox.com/docs/creator-rewards
- https://devforum.roblox.com/t/creator-rewards-is-live/3838257
- original
---
# roblox monetization
## When to Load
Load when adding a Game Pass, Developer Product, subscription, private server, Creator Rewards-related product decision, or purchase eligibility check.
## Quick Reference
- Prompt purchases from the client, but grant value only from server-owned code.
- - Passes: durable ownership for an experience. Check ownership server-side and refresh after a purchase.
+ - Passes: one server-owned ID→benefit registry; join and purchase refresh use the same idempotent benefit path. Full.md §2a.
- Developer Products: repeatable consumables. Grant through a server-owned receipt handler, either `ProcessReceipt` or `BindReceiptHandler` with `Enum.ReceiptType.DeveloperProduct`. `PromptProductPurchaseFinished` is not purchase confirmation.
- - A receipt that cannot be safely granted must return `NotProcessedYet`. Roblox redelivers it when the player rejoins (there is no time-based retry).
+ - Failed receipts remain `NotProcessedYet`; retries depend on the chosen receipt API, not an invented timer. See full.md.
- For eligibility-sensitive purchases, check `PolicyService` and current Roblox guidance. If a paid-random-item restriction applies, offer the user the documented choices, including earnable rewards, a known non-random sequence, or direct purchase. Do not default to hiding or blocking the feature; handle the affected purchase path without stopping unrelated work.
- Creator Rewards is a platform program, not a grant API. Track eligibility, attribution, engagement, and dashboard reporting separately from purchases and inventory.
- - Test failed grants, duplicate receipts, player absence, and interrupted saves before shipping.
+ - Test failed/duplicate grants, absent players, and interrupted saves. Transfers, subscription changes, and dynamic pricing: full.md.
- A receipt handler's presence is not proof of correctness; inspect its ownership, durable idempotent grant, and retry paths for unknown products or absent players.
**Need the details?** Load `references/full.md` for purchase flows and failure handling.