Suscripciones

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Suscripciones dentro de las experiencias te permiten ofrecer a los usuarios beneficios recurrentes por una tarifa mensual.Al igual que pases, la principal diferencia entre suscripciones y pases es que los beneficios de un pase se otorgan en perpetuidad, mientras que los beneficios de una suscripción dependen de que el usuario pague una tarifa mensual.Las suscripciones en Roblox tienen las siguientes características:

  • Renovación automática: Las suscripciones se renuevan automáticamente, no son compras únicas y se facturan en moneda local.
  • desembolso/pagode Robux: Recibes ingresos de suscripción en Robux. Para más detalles, vea Gana con suscripciones.
  • De un solo nivel: Todas las suscripciones dentro de una experiencia pueden ser propiedad de usuarios simultáneamente.No se admiten suscripciones mutuamente exclusivas.

Los usuarios pueden comprar suscripciones en la aplicación de escritorio o en el sitio web utilizando créditos de tarjeta de regalo de Roblox o una tarjetas regalode crédito o débito, y a través de métodos de pago en las tiendas de Apple y Google en regiones calificadas.Los usuarios pueden ver y gestionar sus compras de suscripción en la pestaña Suscripciones en la configuración de su cuenta de Roblox.

Las suscripciones se desplegarán a más regiones en el futuro. Las regiones no disponibles incluyen: Argentina, Colombia, India, Indonesia, Japón, Rusia, Taiwán, Türkiye (Turquía), Emiratos Árabes Unidos, Ucrania y Vietnam.

Directrices de suscripción

Antes de crear sus suscripciones, asegúrese de que se alineen con los términos de uso de Roblox y cumplan con las leyes locales.Cualquier experiencia que participe en estafas, intente engañar a los usuarios con ofertas falsas o de otra manera incumpla nuestros estándares de la comunidad, se eliminará.Además, asegúrese de que sus suscripciones cumplan con las siguientes directrices:

  • Proporcione opciones de suscripción borrary distintivas: Use nombres cortos, precisos y explicativos que diferencien las opciones de suscripción entre sí.Especifique el precio y la duración de cada opción al comercializar en la experiencia.
  • Ofrezca los mismos beneficios en todas las plataformas y dispositivos: Independientemente de dónde se compró la suscripción, asegúrese de que el usuario reciba los mismos beneficios para cualquier plan de suscripción dado.
  • Diseñar suscripciones para que encajen entre sí y las ofertas de experiencia general: La segmentación de la misma suite de beneficios, como ofrecer niveles "Bronce", "Plata" y "Oro" que son mutuamente exclusivos, no está disponible actualmente.Asegúrate de que las suscripciones representen conjuntos distintos de beneficios.
  • Ofrezca los beneficios para el plazo completo de la suscripción: Una vez que una oferta de suscripción esté sitio activo, honre los beneficios descritos y no revoque los beneficios detrás de escena.
  • No dirija a los usuarios a comprar en otra plataforma (por ejemplomóvil, web, etc.) en la experiencia: Mientras estés libre de comunicarte con usuarios fuera de la plataforma, dirigir a los usuarios a comprar en otro lugar usando la aplicación de Roblox está prohibido.
  • No gatee los beneficios de suscripción por requisitos adicionales una vez que el usuario haya patrocinado: Requerir que un usuario realice tareas adicionales, como publicar en redes sociales, para obtener acceso a los beneficios que ha pagado está prohibido.Esta directriz no afecta a los pases de batalla, que puedes crear y comercializar como una comprarpor suscripción.

Crear suscripciones

Antes de que puedas crear una suscripción, debes ser verificado por teléfono o ID verificado. Para crear una suscripción:

  1. Navegue por su experiencia en el Panel del creador y seleccione Productos de monetización > Suscripciones .A continuación, haga clic en Crear una suscripción .

  2. Sube una imagen de cubierta para tu suscripción. La imagen es visible para otros después de la moderación.

  3. Crea un nombre de suscripción único Nombre de suscripción .No se pueden compartir dos suscripciones dentro de una experiencia el mismo nombre.Este nombre de suscripción aparece junto a una versión acortada del nombre de tu experiencia en las facturas.Los caracteres permitidos son a-z, A-Z, 0-9, espacios y .,:/!?@#&' .

  4. Escribe una descripción de tu suscripción.Esto es lo que ven los usuarios al decidir comprar su suscripción.Su descripción debe describir claramente qué beneficios ofrece su suscripción.Las descripciones están limitadas a 1,000 caracteres y admiten emojis.Una vez que actives una suscripción, no puedes reducir sus beneficios.

  5. Seleccione el tipo de producto de suscripción Product Type . Hay tres tipos de productos:

    1. Duradero: Objetos permanentes que persisten después del uso o adquisición, como objetos físicos como armas.Si una suscripción incluye un paquete de diferentes tipos de bienes, con uno o más de ellos durables, como un paquete de valor con una espada y una poción, elige Durable como introducirde producto.
    2. Consumible: Objetos reutilizables temporales que expiran después de su uso o adquisición, como pociones consumibles que otorgan aumentos temporales que expiran con el tiempo.
    3. Moneda: Cualquier medio de intercambio que los usuarios puedan usar para comprar artículos dentro de tu experiencia.
  6. Seleccione el precio de su suscripción (en USD).Ganas Robux en función del precio web.Los suscriptores de aplicaciones móviles se facturan un precio más alto.Los suscriptores se facturan en su moneda local.

  7. La cadencia recurrente es con qué frecuencia se carga al usuario por suscripción.Actualmente, este valor siempre es mensual.Haga clic en Crear suscripción .

  8. Revisa los detalles y haz clic en Crear .

Activar suscripciones

Una vez que una suscripción esté lista para entrar en venta, haga clic en en la esquina superior derecha de la pestaña de suscripción y seleccione Activar .Las suscripciones activadas están disponibles para la venta en la página Detalles de la experiencia y dentro de la propia experiencia.

Antes de activar tu suscripción por primera vez, debes confirmar una versión acortada del nombre de tu experiencia.Este nombre de experiencia abreviado se muestra al usuario cuando se suscribe, apareciendo junto al nombre de suscripción que creó en Crear suscripciones.También es visible administrar suscripciones en Roblox y en Configuración de la tienda de aplicaciones.

Editar suscripciones

Puedes tener hasta 50 suscripciones por experiencia entre suscripciones activas e inactivas.Para editar suscripciones, navegue por su experiencia en el tablero de control del creador y seleccione productos de monetización > suscripciones .

Puedes editar la imagen, la descripción o el estado de una suscripción.Si desea editar más que estas propiedades, debe eliminar y recrear las suscripciones con los cambios deseados.

Cambiar imagen

Para actualizar la imagen de una suscripción:

  1. Con la suscripción seleccionada, haga clic en el botón Cambiar .

  2. Elige una nueva imagen y haz clic en Guardar , luego Guardar cambios . La nueva imagen se publica después de pasar con éxito la moderación.

Cambiar descripción

Para cambiar la descripción de una suscripción:

  1. Con la suscripción seleccionada, haga clic en el campo Descripción .
  2. Edita la descripción, luego haz clic en Guardar cambios . Las descripciones están limitadas a 1,000 caracteres y pueden admitir emojis.
  3. Confirme los cambios haciendo clic en Sí, confirmar en la ventana de confirmación. Las actualizaciones de la descripción se reflejan inmediatamente.

Cambiar estado

Las suscripciones tienen dos estados posibles:

  • Activo — Las suscripciones activas están disponibles para la venta, con suscriptores que pueden renovar su suscripción al comienzo del próximo período.
  • Inactivo — Las suscripciones inactivas no están disponibles para la venta.

Para cambiar el estado de una suscripción:

  1. En la página de suscripciones, haz clic en en la esquina superior derecha del mosaicode la suscripción.O bien Activar o Quitar de venta muestras, dependiendo del estado actual de la suscripción, junto con algunas otras opciones.
  2. Seleccione Activar o Quitar de venta para cambiar el estado de la suscripción.
    1. Si selecciona Quitar de venta , se le dará la opción de permitir que los suscriptores existentes renovacióno cancelen las renovaciones futuras para los suscriptores actuales.En general, es recomendable permitir que los suscriptores existentes renueven a menos que estés planeando eliminar permanentemente los beneficios de suscripción asociados de tu experiencia.

Integrar suscripciones en una experiencia

Este ejemplo de código es un simple ejemplo de cómo implementar la detección de suscripción en tu experiencia:


-- Ejecuta este código en el servidor
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local SUBSCRIPTION_ID = "EXP-11111111" -- Reemplazar con tu ID de suscripción
local function grantAward(player: Player)
-- Debe otorgar el premio asociado con la suscripción aquí
end
local function revokeAwardIfGranted(player: Player)
-- Este método se llama para cada jugador que no tenga la suscripción _not_
-- Si tu código guarda suscripciones a almacenes de datos o proporciona algún beneficio que debe ser "revocado"
-- deberías usar este método para manejar la revocación
end
local function checkSubStatus(player)
local success, response = pcall(function()
return MarketplaceService:GetUserSubscriptionStatusAsync(player, SUBSCRIPTION_ID)
end)
if not success then
warn(`Error while checking if player has subscription: {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)

Reemplazar un pase de juego con una suscripción

Una opción para desplegar suscripciones en tu experiencia es reemplazar un Pase de juego existente con una suscripción.Esta es una gran opción si quieres implementar rápidamente suscripciones en tu experiencia sin agregar nuevas características o premios.

Hay dos consideraciones importantes al reemplazar un pase de juego con una suscripción:

  • Cualquier titular existente del Pase de juego debería seguir recibiendo el beneficio que pagó.
  • El Pase de juego debe ser retirado de venta para que los nuevos usuarios puedan comprar la suscripción en su lugar.
  • Las suscripciones pueden ser revocadas, lo que significa que si tu Game Pass anteriormente persistió sus beneficios en un tiendade datos, debes "deshacer" estos beneficios.Esta consideración no se aplica a todas las implementaciones de pase de juego, pero podría aplicarse a las más complejas.

El siguiente ejemplo de código muestra cómo reemplazar un pase de juego con una suscripción:


-- Ejecuta este código en el servidor
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local LEGACY_GAME_PASS_ID = 1234 -- Reemplazar con el ID del pase de juego que se reemplaza por una suscripción
local SUBSCRIPTION_ID = "EXP-11111111" -- Reemplazar con tu ID de suscripción
local function awardBenefit(player: Player)
-- Deberías otorgar la suscripción aquí
end
local function revokeBenefitIfGranted(player: Player)
-- Este método se llama para cada jugador que no tenga la suscripción _not_
-- Si tu código guarda suscripciones a almacenes de datos o proporciona algún beneficio que debe ser "revocado"
-- deberías usar este método para manejar la revocación
end
local function checkSubscriptionStatus(player: Player)
local success, result = pcall(function()
return MarketplaceService:GetUserSubscriptionStatusAsync(player, SUBSCRIPTION_ID)
end)
if not success then
print(`Error fetching subscription status: {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(`Error fetching game pass status: {result}`)
return
end
if result then
-- Si el jugador ha comprado el pase de juego heredado, no necesitamos buscar su estado de suscripción
-- ya que tienen el beneficio otorgado por toda la vida
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)
-- Seguiremos escuchando las compras de pases de juego en el juego en caso de que el pase de juego aún esté en venta
MarketplaceService.PromptGamePassPurchaseFinished:Connect(onPromptGamePassPurchaseFinished)

Compras de suscripción rápidas

Aunque los usuarios pueden comprar suscripciones directamente desde la página Detalles del juego de una experiencia, también deberías agregar una forma de comprar una suscripción en el juego.

Cuando solicita una comprarde suscripción, dispara si el jugador ya posee la suscripción, lo que ayuda a capturar escenarios en los que un jugador compra una suscripción de la página Detalles del juego mientras ya está en el juego.

Aunque puedes solicitar una compra de suscripción desde el cliente, verificar si un usuario ya tiene una suscripción a través de MarketplaceService.GetUserSubscriptionStatusAsync debe hacerse desde el servidor.

Este ejemplo crea un RemoteFunction que el cliente puede usar para solicitar el estado de una suscripción:


--Este código debe ejecutarse en el servidor
local ReplicatedStorage = game:GetService("ReplicatedStorage")
-- Crea una función remota que el cliente pueda usar para solicitar el estado de la suscripción
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

-- Este código debe ejecutarse en el cliente
local MarketplaceService = game:GetService("MarketplaceService")
local Players = game:GetService("Players")
local SUBSCRIPTION_ID = "EXP-11111111" -- Reemplazar con tu ID de suscripción
local getSubscriptionStatusRemote = ReplicatedStorage:WaitForChild("GetSubscriptionStatus")
local purchaseSubscriptionButton = script.Parent.PromptPurchaseSubscription -- Reemplazar con tu botón
local function playerHasSubscription()
-- Tenga en cuenta si su suscripción está reemplazando un pase de juego, también deberá verificar si el pase de juego también se encuentra aquí
local success, result = pcall(function()
return getSubscriptionStatusRemote:InvokeServer(SUBSCRIPTION_ID)
end)
if not success then
print(`Error fetching subscription status: {result}`)
return
end
return result.IsSubscribed
end
-- Oculta el botón si el jugador ya tiene la suscripción
local function hideButtonIfPlayerHasSubscription()
if playerHasSubscription() then
purchaseSubscriptionButton.Visible = false
end
end
local function onPromptSubscriptionPurchaseFinished(player: Player, subscriptionId: string, didTryPurchasing: boolean)
if didTryPurchasing then
-- Puede tardar un tiempo en registrarse la suscripción, así que comprobaremos si la compra se realizó en 10 segundos
-- y ocultar el botón si tiene
task.delay(10, hideButtonIfPlayerHasSubscription)
end
end
-- Si el jugador ya tiene la suscripción, no queremos mostrar el botón en todos/todas
hideButtonIfPlayerHasSubscription()
purchaseSubscriptionButton.Activated:Connect(function()
MarketplaceService:PromptSubscriptionPurchase(Players.LocalPlayer, SUBSCRIPTION_ID)
-- Si el jugador ya tiene la suscripción, oculta el botón
hideButtonIfPlayerHasSubscription()
end)
MarketplaceService.PromptSubscriptionPurchaseFinished:Connect(onPromptSubscriptionPurchaseFinished)

Otras funciones relevantes

Otras funciones relevantes están disponibles en MarketplaceService :

Gana con suscripciones

Las suscripciones se facturan en moneda local, pero ganas Robux a una tasa de US$0.01 a 1 Robux según el precio de la plataforma base que seleccionaste para la suscripción después de las tarifas de plataforma.Roblox cobra una tarifa de plataforma del 30% solo por el primer mes, lo que significa que recibes los ingresos completos de la suscripción a partir del segundo mes.Esta división de ingresos es consistente en todas las plataformas.

Por ejemplo, si un usuario se suscribe al precio base de US$9.99 (equipo de escritorio) o $12.99 (móvil):

  • Primer mes: El creador de la suscripción recibe 999 * .7 = 699 o 1299 * .7 = 909 (móvil).
  • Segundo mes en adelante: El creador de la suscripción recibe 999 = 999 (de equipo de escritorio) o 1299 = 1299 (móvil).

Las ganancias están sujetas a retenes de 30 días y se agregarán a tu saldo de Robux después de que se haya entregado el plazo completo de la suscripción.Si un usuario solicita un reembolso por una suscripción a través de su banco o tienda de aplicaciones dentro del período de espera de un mes, el período de espera se cancelará y no recibirá el pago por esa transacción.

Los reembolsos recibidos fuera de la ventana de espera resultarán en la cantidad a pagar por la transacción reembolsada que se deducirá de tu saldo de Robux.Si tu experiencia es propiedad de un Grupo y el saldo del Grupo es menor a la cantidad a deducir, el resto se deducirá del saldo de Robux del propietario del Grupo.

Los usuarios que cancelan una suscripción activa y no renuevan no resultan automáticamente en un reembolso.El usuario debe solicitar reembolsos manualmente, que se manejan en una base de caso a caso.Para obtener más información sobre el proceso de reembolso de suscripción de usuario, consulta el centro de ayuda.

Pagos de suscripción

Los pagos se encuentran en Robux Balance > Mis transacciones :

Suscripciones y pago de suscripción de grupo aparecen bajo Entrante Robux, mientras los reembolsos se agrupan bajo Saliente Robux como una reversión de pago .Las páginas de suscripción y de suscripción de grupo proporcionan información adicional para sus respectivas categorías.

Para ver la información de reembolso de usuarios individuales, utilice MarketplaceService:GetUserSubscriptionPaymentHistoryAsync() .

Análisis de suscripción

La analítica de suscripciones te ayuda a medir el éxito de las suscripciones individuales, identificar tendencias y predecir potenciales ganancias futuras.Las suscripciones se agrega a la página de análisis de suscripciones después de la primera vez que se activan y no se eliminan cuando se desactivan o se eliminan.Puede acceder a analíticas prefabricadas a través del tablero de control del creador, o puede capturar actualizaciones de suscripción en tiempo real usando webhooks.

A través del tablero de control del creador

Para acceder a la analítica de suscripción en el tablero de control del creador:

  1. Navegue a su página de creaciones en tablero de creación del creador y seleccione su experiencia.

  2. Navegue hasta la pestaña Monetización y seleccione Suscripciones .

La analítica de suscripción rastrea las siguientes métricas:

  • Suscripciones: La cantidad total de suscripciones activas en tu experiencia.
  • Ingresos estimados: Los ingresos netos ganados por las experiencias después de las tarifas. No incluye información de reembolso.
  • Desglose de suscriptores: Los diferentes tipos de suscriptores.
    • Nuevo : El número de compras de suscripción por suscriptores por primera vez.
    • Renovado : El número de renovaciones de suscripciones comprados en un período anterior.
    • Resurrected : El número de nuevas suscripciones comprados por usuarios que previamente se habían cancelado.
  • Cancelaciones : El número de suscripciones que no se renovaron.Esto incluye todas las cancelaciones independientemente del desencadenador, ya sea la cancelación del usuario, la desactivación de la suscripción por parte del creador o por otros medios.
    • Las cancelaciones son diferentes de los reembolsos.Las suscripciones canceladas son suscripciones que ya no se renovarán, pero se pagan en su totalidad por el resto del ciclo de facturación, mientras que los reembolsos devuelven la cantidad de la suscripción pagada al usuario.
  • Suscripciones por plataforma : El número de suscripciones comprado en cada plataforma.
  • Ganancias de la plataforma : Los ingresos netos obtenidos a través de suscripciones comprados en cada plataforma.

Esta información es visible en forma de gráficos basados en un rango de fechas bajo la pestaña Tendencias , y como una lista completa de suscripciones totales ofrecidas bajo la pestaña Historia .

A través de webhooks

La función de webhook de API de nube incluye gatillos para cuatro eventos de suscripción: cancelado, comprado, reembolsado y renovado.Estas notificaciones se disparan inmediatamente, por lo que puedes responder en tiempo real o crear tu propia Análisispersonalizada.Para obtener más información sobre cómo configurar un webhook, vea Notificaciones de webhook.