With a Google In-App Purchase Subscription, app owners can make money from their apps. Users can download your app for free, and then they can make additional purchases in your app by adding subscriptions to a specific Channel, Chat Group, or Bot.
Adding a Subscription to a Channel, Chat Group or Bot
Make sure to install one or more of these components in your Navigation or Side Menu.
Click 'Channels’.
Click the channel to set up payment.
Turn the toggle on, enter your product ID, choose your subscription period, add your price, and choose your currency.
You can do the same thing with group chat and bots.
Add Subscriptions as Products in the Google Play Console
Go to Google Play Console and select your app.
From the left side menu, scroll down until you reach the ‘Products’ section and click ‘Subscriptions’.
Click ‘Create subscription’.
- Add product ID: Add channel_sub. Make sure to match it to the SKU you added to your channel. According to Google guides, it MUST start with a number or lowercase letter.
- Add Name.
And click ‘Create.’
On the same page of the subscription, click ‘Add Base Plan.’
Base Plan
- Add Base Plan ID: channel-monthly-subscription-plan.
Make the grace period None
- Choose ‘Charge at next billing date.’
- Allow resubscription.
Price and availability
Set up your price and choose your targeted regions. Click ‘Set price.’
Mark countries and click ‘Set price.’
Make sure to match the currency setting with the currency you chose in your channel or chat group.
Click ‘Save.’
Then click ‘Activate.’
Here are more details regarding Google's subscription creation.
Linking Subscription Purchases with nandbox App Builder
After making your subscription, you need to link your account to a Google Developer Project.
You MUST be the owner of the Google Play Console account to continue with the following steps; other invited users, regardless of their account privileges, will not be able to access this section.
These setup steps are for one time only.
Go to Google Play Console from the left-hand side menu, scroll down until you reach ‘Setup’, slide the menu down, and click ‘API access.’
Click ‘Create a new Google Cloud project,’ then click ‘Save.’
The Google Cloud Project instantly connects to your Google Play Developer Account. Click ‘View in Google Cloud Platform.’
Click ‘View all products’.
Scroll down till you reach ‘Analytics’ and select ‘Pub/Sub.’
Click ‘Create Topic.’
- Add Topic ID. [ChannelSubscriptionsTopic]
- Mark ‘Add a default subscription.’
- Mark ‘Google-managed encryption key.’
- Then click ‘Create.’
From the ‘Topic’ page, go to the ‘INFO PANEL’ on the right, select ‘PERMISSIONS,’ and click ‘ADD PRINCIPAL.’
- Add New Principal:
MANDATORY!
Add google-play-developer-notifications@system.gserviceaccount.com.
- Select a role: Pub/Sub => Pub/Sub Publisher
Then click ‘Save.’
Copy the topic name and save it for later.
Then go back and click on your topic to add your subscription.
Add subscription ID: nandboxbackend
- Mark ‘Push’
- Add the nandbox Endpoint URL:
MANDATORY!
Skip the rest of the required information and click ‘Create.’
Make sure to refresh your Google Console page and select ‘API access’ to check all your changes.
Go back to your Google Play Console, select your app, and then select ‘Monetization setup.’
Paste the topic name you copied before. You can also send a test notification to verify your proper configuration.
Once tested, click "Save changes".
Create a Service Account
We use a service account to verify the in-app purchases.
Go back to Google Cloud, click ‘IAM and admin,’ and click ‘CREATE SERVICE ACCOUNT.’
- Add service account name: SubscriptionsBackendService
- Add service account ID: SubscriptionsBackendService
- Click ‘CREATE AND CONTINUE.’
- Select a role: Scroll down till you find ‘Project,’ hover over it, select ‘Editor,’ and click ‘Done.’
Adding Key
Click on your created service account.
Go to the ‘Key’ page, click ‘ADD KEY,’ choose ‘JSON,’ then click 'Create.’
Your JSON file will be downloaded automatically once you click ‘Create’. Make sure to save it for later.
From your Google Console account, go to the ‘API access’ page and click ‘Manage Play Console Permissions’ for the service account you created.
Mark all financial data permissions.
And click ‘Send invitation.’
Go back to your App Builder; on the ‘App Settings’ page, turn the toggle of in-app purchases on, and click the gear icon to open the settings.
Upload the JSON file you downloaded before, then click ‘Submit.’
That concludes your task!
Test your Subscription before Publishing
One of Google's features, license testing, allows you to test payments made in your app without having to use real money.
Note that before implementing these steps, you need to upload your app bundle to the internal testing section FIRST. Check out this document for testing your app via the internal testing feature.
From your Google Play console dashboard, select 'License testing.'
You can add yourself to a list, mark it on the list, and click 'Save changes.'
Make sure that payment methods are turned on so that users can pay for subscriptions that way.
- If you schedule your channel subscription to run every week, license testing will aim to speed up the process by reducing the duration to just 5 minutes. Additionally, one month will be 5 minutes, three months will be 10 minutes, six months will be 15 minutes, and a year will be 30 minutes.
- One advantage of licensing testing is that when you test your subscription payment, you will be asked if you want to examine what your users would see in both successful and unsuccessful payment scenarios.
❓ FAQs
Q: How can I add in-app subscription payments using Google Play—without writing any code?
A: You can enable Google Play’s In-App Purchase Subscriptions for your app’s channels, chat groups, or bots directly in nandbox—no developers needed. Users can subscribe weekly, monthly, or yearly and pay securely through Google Play.
Q: How do I enable subscriptions for a channel, group, or bot?
- In the nandbox app builder, add Channels, Chat Groups, or Bots to your app layout.
- Select the component (e.g., your channel).
- Turn Subscription Toggle ON.
- Enter a Product ID, choose the subscription period, set your price, and select the currency.
- Click Save.
Repeat these steps for other components you want to monetize.
Q: How do I set up subscriptions in Google Play Console?
- Log in to your Google Play Console.
- Go to Products → Subscriptions → Create Subscription.
- Enter the same Product ID you used in nandbox (e.g.,
channel_sub
).
- Add a Name for the subscription and click Create.
- Add a Base Plan:
- ID: e.g.,
monthly-subscription-plan
- Grace Period: None
- Billing Mode: Charge at next billing date
- Enable Resubscription
- Set pricing for regions and click Activate.
✅ Make sure the currency matches what you entered in nandbox.
Q: How do I link subscriptions with nandbox for payment notifications?
- In Google Play Console → Setup → API Access.
- Create a Google Cloud Project and save.
- Go to Google Cloud → Pub/Sub → Create Topic:
- Topic ID:
ChannelSubscriptionsTopic
- Enable default subscription and Google-managed encryption.
- Under Permissions, add this principal:
google-play-developer-notifications@system.gserviceaccount.com
- Role:
Pub/Sub Publisher
- Create a subscription for the topic:
- Subscription ID:
nandboxbackend
- Type: Push
- Endpoint URL:
https://w1.nandbox.net:4020/google/in-app-billing
- Copy the Topic Name.
Q: How do I complete the connection to nandbox?
- Back in Google Play Console → Monetization Setup, paste the Topic Name.
- Send a test notification to verify.
- Click Save Changes.
Q: How do I create a service account and upload JSON credentials?
- In Google Cloud, go to IAM & Admin → Service Accounts → Create Service Account:
- Name:
SubscriptionsBackendService
- Role:
Project → Editor
.
- After creating, go to Keys → Add Key → JSON → Create.
- Download and securely save the JSON file.
- Back in Google Play Console → API Access, link this service account:
- Grant Financial permissions and send the invitation.
- In nandbox app builder → App Settings → In-App Purchases:
- Toggle ON, click the gear icon, and upload the JSON file.
- Click Submit.
Your app is now ready to validate and process subscription payments securely.
Q: How do I test in-app subscriptions before going live?
- Upload your app bundle to the Internal Testing track in Google Play.
- Go to License Testing and add tester emails.
- Test subscriptions:
- Google speeds up billing during tests (e.g., 1 month = 5 minutes).
- Simulate success, failure, and cancellation scenarios.