Configurar un lote de PlayFab que se pueda comprar en Google Play Store
En este tutorial se muestra cómo crear correctamente un lote de PlayFab, agregarlo a su juego en el marketplace de Google para que los jugadores lo compren y cómo canjear los artículos que contiene.Requisitos previos
- Un título en Game Manager de PlayFab.
- Una integración existente entre el título seleccionado y el marketplace que desee.
- Una aplicación ya creada y disponible en Google Play.
- Asegúrese de que la aplicación tiene habilitada la API Google Play Android Developer.
Paso 1: Crear un lote
En este tutorial, empezamos creando el lote en Google Play Console.Crear un lote con Google Play Console
- Abra la aplicación que desee en Google Play Console.
-
En la barra de navegación izquierda, desplácese hacia abajo hasta la sección Monetize y seleccione In-app products.

-
Seleccione Create product en la parte superior derecha.

-
Escriba el Product ID y el nombre que desee para el lote. En este tutorial, use warrior_bundle como Product ID. Recuerde el Product ID, porque se usará para la vinculación con Game Manager.

-
Desplácese hacia abajo hasta la sección Price y seleccione Set price.

-
Agregue el precio que quiera que tenga el lote, por ejemplo 1,00 USD, y seleccione Apply prices en la parte inferior derecha.

-
Seleccione Save para guardar todos los cambios que acaba de realizar en el lote. Tenga en cuenta que guardarlo no lo activa como producto. Una vez guardado, aparece la opción de activación. Para activar el lote en su aplicación en Google Play Console, seleccione el botón Activate en la parte inferior derecha.

Crear un lote con Game Manager
Para crear un nuevo lote en Game Manager, siga estos pasos:- Vaya a Game Manager y navegue hasta su título.
-
En el menú de navegación izquierdo, elija Engage > Economy.

-
Seleccione la pestaña Bundles.

-
Seleccione New bundle.

-
Agregue al lote la información que desee, como artículos y precios. En este tutorial, use Warrior Bundle como nombre.

-
Desplácese hasta el final de la página y seleccione Save and publish si quiere que se publique de inmediato, o Save as draft si quiere guardarlo pero aún no quiere que esté disponible.

Agregar artículos al lote
Un lote por sí solo no concede ningún artículo a un jugador; primero debemos vincularle artículos y, una vez canjeado, concede esos artículos a ese jugador específico. Antes de agregar artículos a un lote, asegúrese de que ya los ha creado y publicado en su catálogo. Nosotros ya tenemos una espada llamada Fire Sword y un escudo llamado Ice Shield. Si no sabe cómo crear un artículo, consulte este paso. ¡Ahora, agréguelos al lote! Para ello, puede agregarlos mientras crea el lote por primera vez, siempre que los artículos ya estén creados, o puede agregarlos más adelante editando el lote. En el modo de edición, desplácese hacia abajo hasta la sección Items del lote y seleccione el botón Add; esto muestra una ventana con todos los artículos disponibles en el catálogo, desde la cual puede filtrar por tipo (Items o artículos de contenido generado por el usuario (UGC)) o buscar un artículo específico. Seleccionamos el botón Add junto a cada uno de los artículos que queremos agregar y, por último, el botón azul Add de la parte inferior de la ventana.
Habilitar la asignación de marketplace
Para garantizar que, cuando un jugador compre un lote desde su aplicación, la compra se realice y se asigne correctamente en Game Manager, debe configurar su asignación de marketplace (Marketplace Mapping). Esto puede hacerse al crear el lote en Game Manager o después de crearlo, volviendo al lote en modo de edición.- Vaya a su lote en modo de edición.
- Desplácese hasta la sección Marketplace Mapping.
- En el menú desplegable Marketplace, seleccione el marketplace que desee. (Para este tutorial, será GooglePlay).
- Para su Marketplace ID, asegúrese de usar el mismo que su Product ID en Google Play Console. En este tutorial, usamos Warrior_bundle.
- Para terminar, seleccione el + en el lado derecho de esa fila.

Paso 2: Generar un token de compra
Asegúrese de haber completado el requisito previo n.º 3 antes de continuar; de lo contrario, no hay forma práctica de generar un token de compra.
Paso 3: Canjear un lote
Ahora que tiene el lote creado tanto en Game Manager como en Google Play Console, puede canjear el lote para uno de sus jugadores. En este ejemplo, nos centramos en hacerlo con la API de PlayFab, en concreto, la llamada RedeemGooglePlayInventoryItems, que forma parte de la API de Economy de PlayFab.Comprobar los AlternateIDs
Antes de realizar la llamada de canje, asegúrese de que tiene el AlternateId correcto en Game Manager; debe ser el mismo que en Google Play Console. La captura de pantalla siguiente procede de su lote en Game Manager; el Marketplace ID es lo que llamamos AlternateId; básicamente, es otra forma de identificar el lote.

Autenticar al jugador
Para canjear un artículo, use RedeemGooglePlayInventoryItems. Pero antes, debemos asegurarnos de que el jugador que quiere canjear los artículos se autentica correctamente en la aplicación, para lo cual probablemente use LoginWithGoogleAccount.Para ver un ejemplo más detallado, consulte Configuración de la autenticación de PlayFab con el inicio de sesión de Google Play Juegos en Unity.
X-EntityToken. Tendría este aspecto si usa una plataforma de API para realizar pruebas.

Realizar la llamada de canje
Con el jugador autenticado, ambas instancias del lote creadas y sus identificadores alternativos comprobados, y su token de compra, ya está listo para realizar la llamada de canje. Para ello, usamos la llamada a la API RedeemGooglePlayInventoryItems.Purchases, que contiene el Product ID (que debe coincidir con el de Google Play Console) y un campo Token que corresponde al token de compra devuelto al llamar al sistema de facturación de Google Play.
Una respuesta correcta incluye un código de estado 200 junto con datos como una marca de tiempo y un MarketplaceTransactionId.
Después de realizar un canje correcto, si accede al inventario del jugador, debería poder ver los dos artículos vinculados al lote.



items_redeemed de PlayStream distintos; esto se debe a que, aunque canjeamos un solo lote, el lote contenía dos artículos diferentes.
Paso 4: Consumo
Después de canjear correctamente la compra, debe asegurarse de que se consume correctamente en el marketplace. Las formas de hacerlo son:- Con el método purchases.products.consume, que forma parte de la API Google Play Developer.
- Con el método BillingClient.consumeAsync, que forma parte del cliente de facturación de Google.
- O bien con uno de los complementos integrados, como los disponibles en Unity y Unreal.
200 después del proceso de canje con 1 o más resultados correctos y 0 errores. Si recibe una respuesta 202 o un error de canje, se recomienda reintentar la llamada de consumo una vez más pasado un tiempo.
