Subscriptions etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Subscriptions etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

7 Kasım 2026 Cumartesi

How to Create In-App Purchases (IAP) and Subscriptions in Google Play Console: Complete Developer Guide

How to Create In-App Purchases (IAP) and Subscriptions in Google Play Console: Complete Developer Guide

When developing mobile games and applications, transforming your project into a sustainable, revenue-generating product is one of the most exciting milestones. In the Google Play ecosystem, the official and secure way to deliver premium digital features, passes, and subscriptions directly to users is through Google Play In-App Billing.

Recent updates to the Google Play Console UI have rebranded traditional "In-app products" to "One-time products", while subscriptions are now managed under a modular Base Plan and Offers architecture.

In this comprehensive technical guide, we walk through the exact steps implemented at Arar Games for 15te15 Sports Analysis & System Slip and our retro arcade catalog. We cover creating Remove Ads, Developer Support/Tips, and Weekly/Monthly VIP Subscriptions, complete with UI screenshots, Google's strict character constraints, and C# .NET 9 integration.


1. Core Concepts: Selecting the Right Product Type

Before creating store items in Google Play Console, categorize your monetization model into three main types:

Product Type Google Play Classification Typical Use Case Quantity / Re-purchase Restore Purchases
Non-Consumable One-time product (Buy) Remove Ads, Lifetime Pro License Purchased once per user Automatically restored via Google account
Consumable One-time product (Buy) Coins, Extra Lives, Buy Developer Coffee Infinite re-purchases allowed Not restored after being consumed
Subscription Subscriptions + Base Plan Weekly VIP Pass, Monthly Pro Tier Recurring (Auto-renewing or Prepaid) Active while subscription period is valid

2. PART I: Creating a One-Time Product (Remove Ads)

In this section, we create iap_remove_ads, allowing users to permanently remove all banner and interstitial ads.

Step 1: Navigating the Console

Select your application in Google Play Console. From the left navigation pane:
👉 Monetize with Play ➔ Products ➔ One-time products.

One-Time Products Menu
Google Play Console left navigation showing One-time products.

Click the blue "Create product" button in the upper right corner.


Step 2: Defining Product ID

The first field in the form is Product ID:

  • Format: Lowercase letters, numbers, underscores (_), and periods (.) only (e.g., iap_remove_ads).
  • ⚠️ Strict Rule: Once a Product ID is created in Google Play Console, it can never be changed or reused, even if the item is later deleted.
  • Ensure your codebase (BillingClient.queryProductDetailsAsync or your service layer) references this exact ID string.

Defining Product ID
Configuring unique iap_remove_ads Product ID.


Step 3: Product Name and Description (50-Character Minimum!)

Scroll down to the Product description section:

  1. Name:
    The item title displayed in the user's checkout sheet (up to 55 characters).
    Value: Remove Ads
  2. Description:
    Google Play enforces a strict minimum length of 50 characters (0 / 200). Submissions with fewer than 50 characters will fail validation.
    Sample Copy (92 characters):
    Permanently removes all banner and interstitial ads for an uninterrupted, smooth experience.

Product Description 50 Char Rule
Entering description satisfying the 50-character minimum rule.


Step 4: Uploading Product Icon

Google Play requires a dedicated icon for checkout and Play Store promotional displays:

  • Format: 32-bit PNG (with alpha channel support).
  • Dimensions: 1:1 square ratio, between 512 px and 1080 px per side (e.g., 512x512 px).
  • Max file size: 8 MB.

Uploading Product Icon
Uploading transparent 512x512 pixel NO ADS icon.


Step 5: Tax, Compliance, and Age Rating

At the bottom under Tax, compliance, and programs:

  1. Product tax category: Keep the default "Digital app sales".
  2. Age rating: Select "All ages" or "Same as app's age rating".
  3. Payment location restriction: Select "No country / region restricted".

Tax and Age Rating
Configuring digital compliance and age ratings.

Click Next at the bottom right.


Step 6: Purchase Option and Pricing

On the second step:

  1. Purchase option ID: Enter default.
  2. Purchase type: Select "Buy".

Purchase Option ID
Purchase option configuration.

  1. Advanced options: Leave "Allow users to purchase more than one" unchecked (since Remove Ads is non-consumable).
  2. Digital content or service: Select "Digital content".

Advanced Options
Selecting digital content classification.

  1. Setting Prices:
    Click "Set prices" ➔ "Bulk edit pricing". Choose your base currency (TRY) and enter the price (e.g., 29.99). Click "Apply" to let Google automatically compute international exchange rates and local taxes.

Set Prices Menu
Regional pricing table.

Set Price Modal
Setting base TRY price and automatic currency conversion.

  1. Activate:
    Click "Activate" at the bottom right. The product will immediately switch to Active!

Product Summary
Complete overview of activated one-time product.

Active Products Table
Table showing active one-time product with 1 active purchase option.


3. PART II: Subscriptions and Base Plan Architecture

Subscriptions allow you to offer recurring access to VIP features, continuous algorithmic updates, and live calculators.

Step 1: Creating a Subscription

Navigate to 👉 Monetize with Play ➔ Products ➔ Subscriptions and click "Create subscription".

Subscriptions Landing Page
Google Play Console Subscriptions hub.

Enter the identifier and name:

  • Product ID: iap_premium_weekly
  • Name: Weekly Premium Pass

Subscription Creation Modal
Creating Weekly Premium Pass subscription.


Step 2: Subscription Details and Strict Text Rules

Click "Edit subscription details". Google enforces two critical constraints:

  1. Benefits (Max 40 Characters each!):
    Each bullet point must not exceed 40 characters:
    • Bullet 1 (39 chars): Full access to 12-15 guarantee engines
    • Bullet 2 (36 chars): Live 15-match scores & prize tracker
    • Bullet 3 (37 chars): VIP priority queue & ROI simulations
  2. Description (Min 50 Characters!):
    Sample (122 chars):
    Full 4-week VIP access to all 12-15 guarantee calculation engines, live tracking, ad-free experience, and ROI analysis.

Subscription Details Benefits
Entering subscription benefits complying with the 40-character limit.

Upload your 512x512 badge icon, set tax category to "Digital app sales" ➔ "Service", age rating to "All ages", and click Save.

Subscription Icon Preview
Subscription badge icon preview.


Step 3: Configuring the Base Plan

A subscription must have at least one Base Plan before it can be offered:

  1. Base plan ID: weekly-base (or monthly-base).
  2. Type: Select Auto-renewing.
  3. Billing period: Select Weekly (or Monthly).
  4. Grace period: Default 7 days recommended.

Base Plan Type
Selecting Auto-renewing base plan type.

Billing Period Settings
Configuring billing period and grace period.


Step 4: Regional Pricing and Activation

  1. Under Price and availability, click "Set prices".
  2. Select TRY and enter 49.90 (for weekly) or 179.90 (for monthly VIP).
  3. Google calculates global prices across all countries.
  4. Click Save, then click "Activate" to publish the base plan.

Regional Pricing Table
Country and regional pricing sheet.

Subscription Price Modal
Setting base subscription fee.

Once completed, both your Weekly and Monthly plans will display Active base plans: 1 in your Subscriptions overview!

Active Subscriptions Overview
Monthly VIP Pass and Weekly Premium Pass activated in Google Play Console.


4. Complete Store Catalog Matrix

The final product matrix synchronized between Google Play Console and our C# codebase:

Product ID Title Type Price Base Plan / Option Summary
iap_remove_ads Remove Ads One-Time (Non-Consumable) 29.99 ₺ default Permanently disables banner and interstitial ads.
iap_buy_coffee Buy Developer a Coffee One-Time (Consumable) 39.99 ₺ default Coffee support tip & supporter badge.
iap_full_support Full Support One-Time (Consumable) 99.99 ₺ default Indie ecosystem R&D fund & Gold Supporter.
iap_premium_weekly Weekly Premium Pass Subscription (Auto-renewing) 49.90 ₺ / wk weekly-base Unlimited 12-15 guarantee system calculations.
iap_premium_monthly Monthly VIP Pass Subscription (Auto-renewing) 179.90 ₺ / mo monthly-base 4-week VIP priority queue & live ROI simulator.

5. Client Code Integration (.NET 9 / Android BillingClient v8.1.0)

For Android MAUI / Blazor Hybrid apps targeting modern Google Play requirements in 2026, reference Xamarin.Android.Google.BillingClient 8.1.0.

Handling purchase responses in our C# state machine:

// StoreModels.cs - Post-purchase state update
switch (productId)
{
    case "iap_premium_weekly":
        _state.ActiveSubscriptionId = "iap_premium_weekly";
        _state.SubscriptionExpiresAt = DateTime.UtcNow.AddDays(7);
        break;

    case "iap_premium_monthly":
        _state.ActiveSubscriptionId = "iap_premium_monthly";
        _state.SubscriptionExpiresAt = DateTime.UtcNow.AddDays(30);
        break;

    case "iap_remove_ads":
        _state.IsAdsRemoved = true;
        break;

    case "iap_buy_coffee":
        _state.CoffeeCount++;
        break;

    case "iap_full_support":
        _state.FullSupportCount++;
        break;
}

OnStateChanged?.Invoke();

6. Conclusion and Arar Games Showcase

Mastering Google Play Billing with precise Product IDs, text constraint compliance, and clean architecture creates a transparent, smooth user journey and a resilient revenue foundation.

Experience our production apps and indie games live on digital stores:

🎮 Our Games and Applications:

📢 Studio Channels & Social Media:

Follow our technical blog posts, devlogs, and indie releases:


Tags & Topics

#GooglePlayConsole #InAppPurchase #IAP #Subscriptions #OneTimeProducts #AndroidDev #DotNet9 #CSharp #BillingClient #IndieDev #GameMonetization #BlockedPixelPanzer #PaintTrek #ArarGames