Playgama
  • Welcome
  • 🚀Quick start
  • Submitting a game
  • Game Requirments
    • 💥Self-check
    • Technical Requirements
    • Advertising Requirements
    • User Experience Requirements
    • Content Requirements
    • Other Requirements
    • Platform-Specific Requirements
  • In-Game Purchases
    • Step-by-step IAP integration guide for Unity
  • FAQ
    • General
    • Submitting a Game
    • Game Moderation
    • Payments and Statistics
  • SDK
    • Getting started
    • Engines
      • Core (Plain JS)
        • 💥Intro
        • Setup
        • Platform Parameters
        • User Data
        • Advertising
          • Banner
          • Interstitial
          • Rewarded
          • AdBlock
        • User Parameters
        • Social Interactions
        • Leaderboards
        • Achievements
        • In-Game Purchases
        • Remote Configuration
      • Unity
        • 💥Intro
        • Setup
        • Platform Parameters
        • User Data
        • Advertising
          • Banner
          • Interstitial
          • Rewarded
          • AdBlock
        • User Parameters
        • Social Interactions
        • Leaderboards
        • Achievements
        • In-Game Purchases
        • Remote Configuration
      • Construct 3
        • 💥Intro
        • Setup
        • Platform Parameters
        • User Data
        • Advertising
          • Banner
          • Interstitial
          • Rewarded
          • AdBlock
        • User Parameters
        • Social Interactions
        • Leaderboards
        • Achievements
        • In-Game Purchases
        • Remote Configuration
      • GDevelop
        • 💥Intro
        • Setup
        • Platform Parameters
        • User Data
        • Advertising
          • Banner
          • Interstitial
          • Rewarded
          • AdBlock
        • User Parameters
        • Social Interactions
        • Leaderboards
        • Achievements
        • In-Game Purchases
        • Remote Configuration
      • Godot
        • 💥Intro
        • Setup
        • Platform Parameters
        • User Data
        • Advertising
          • Banner
          • Interstitial
          • Rewarded
          • AdBlock
        • User Parameters
        • Social Interactions
        • Leaderboards
        • Achievements
        • In-Game Purchases
        • Remote Configuration
      • Game Maker
        • 💥Intro
        • Setup
        • Platform Parameters
        • User Data
        • Advertising
          • Banner
          • Interstitial
          • Rewarded
          • AdBlock
        • User Parameters
        • Social Interactions
        • Leaderboards
        • Achievements
        • In-Game Purchases
        • Remote Configuration
      • Defold
        • 💥Intro
        • Setup
        • Platform Parameters
        • User Data
        • Advertising
          • Banner
          • Interstitial
          • Rewarded
          • AdBlock
        • User Parameters
        • Social Interactions
        • Leaderboards
        • Achievements
        • In-Game Purchases
        • Remote Configuration
    • Playgama Bridge Config
    • Changelog
  • For Partners
    • Getting Started
    • Embed the Widget
      • Adding Games Widget to Your WordPress Site
      • Adding Games Widget to Your Tilda Site
      • Adding Games Widget to Your Framer Site
    • Import the Game Catalog
    • Share your referral link
Powered by GitBook
On this page
  1. SDK
  2. Engines
  3. Godot

In-Game Purchases

PreviousAchievementsNextRemote Configuration

Last updated 7 days ago

Enable players to purchase items, upgrades, or currency within your game to enhance their experience and generate revenue.

There are two types of purchases: permanent (e.g., removing ads) and consumable (e.g., in-game coins).

Support

Check if in-game purchases are supported to offer items or upgrades within the game.

Bridge.payments.is_supported

Setup

Setup in-game purchases in the . For each product add an id and fill in the information for the required platforms, example for one product:

{
    ...    
    "payments": [
        {
            "id": "test_product",
            "playgama": {
                "amount": 1 // int price in Golden Fennec
            },
            "playdeck": {
                "amount": 1, // int price in Telegram Stars
                "description": "TEST PRODUCT"
            }
        }
    ]
}

Purchase

Allow players to buy items or upgrades in your game to enhance their gameplay experience.

func _ready():
    var id = "test_product" # id you specified in the config file
    Bridge.payments.purchase(id, funcref(self, "_on_purchase_completed"))

func _on_purchase_completed(success, purchase):
    print(success)
    print(purchase)
func _ready():
    var id = "test_product" # id you specified in the config file
    Bridge.payments.purchase(id, Callable(self, "_on_purchase_completed"))

func _on_purchase_completed(success, purchase):
    print(success)
    print(purchase)

Consumable

Consume purchased items, such as in-game currency, once they are used, to manage inventory and player progression.

func _ready():
    var id = "test_product" # id you specified in the config file
    Bridge.payments.consume_purchase(id, funcref(self, "_on_consume_completed"))

func _on_consume_completed(success, purchase):
    print(success)
    print(purchase)
func _ready():
    var id = "test_product" # id you specified in the config file
    Bridge.payments.consume_purchase(id, Callable(self, "_on_consume_completed"))

func _on_consume_completed(success, purchase):
    print(success)
    print(purchase)

Catalog of All Items

Retrieve a list of all available in-game items that players can purchase to display in the game store.

func _ready():
    Bridge.payments.get_catalog(funcref(self, "_on_get_catalog_completed"))

func _on_get_catalog_completed(success, catalog):
    print(success)
    
    for item in catalog:
        print("ID: " + str(item.id))
        print("Price: " + str(item.price))
        print("Price Currency Code: " + str(item.priceCurrencyCode))
        print("Price Value: " + str(item.priceValue))
func _ready():
    Bridge.payments.get_catalog(Caallable(self, "_on_get_catalog_completed"))

func _on_get_catalog_completed(success, catalog):
    print(success)
    
    for item in catalog:
        print("ID: " + str(item.id))
        print("Price: " + str(item.price))
        print("Price Currency Code: " + str(item.priceCurrencyCode))
        print("Price Value: " + str(item.priceValue))

List of Purchased Items

Retrieve a list of items that the player has purchased to manage their inventory and provide access to purchased content.

If the user loses internet connection when making an in-game purchase, the purchase might remain unprocessed. To avoid this, check for unprocessed purchases using this method (e.g., each time the game is launched).

func _ready():
    Bridge.payments.get_purchases(funcref(self, "_on_get_purchases_completed"))

func _on_get_purchases_completed(success, purchases):
    print(success)
    
    for purchase in purchases:
        print("ID: " + str(purchase.id))
func _ready():
    Bridge.payments.get_purchases(Callable(self, "_on_get_purchases_completed"))

func _on_get_purchases_completed(success, purchases):
    print(success)
    
    for purchase in purchases:
        print("ID: " + str(purchase.id))
config file