Set up Google Play
Choose the correct Play developer account, complete identity and organization verification, and create your app record.
Use your own Google Play developer account to publish an Android app. Complete developer-account verification and the initial app record in Play Console. RNBlocks can then connect your service account and review an upload of a finished Android App Bundle to an internal-testing draft.
Opening Play Console from RNBlocks does not establish a Google publishing connection or verify that your account is ready.
On this page
Individual testers or Google Groups?
An email list names individual tester accounts and is managed in Play Console. A Google Group is a membership list with its own group address, not a new Gmail account. It is optional: you can keep using individual tester emails in Play Console. Google’s publishing API can select existing groups for a testing track, but cannot manage individual email lists.
The group connection grants testing access to current and future group members. Keep the group private and check its membership before approving access. Creating a group, managing members and accepting an invitation are separate steps from publishing a build.
Share the opt-in link with your testers; adding an email to the list is not a TestFlight-style invitation. An active test release still needs an eligible tester to open that link with the listed Google account and install the app. Google may show a temporary package-name label for a new, unreviewed app. Internal testing does not make the app publicly available.
What can the publishing agent do?
The agent handles the supported steps after you connect the required accounts and approve the proposed actions. Some Google forms still need Play Console. Completing a form there does not mean RNBlocks can submit it through its tools.
| Google Play work | Current RNBlocks support |
|---|---|
Build an APK or App Bundle | Prepare and start an approved Expo build, then check the result. |
Upload an App Bundle | Upload a finished AAB to an internal-testing draft and check its version code. |
Listing and contact details | Save the initial title, descriptions and public contact fields, then read them back. |
Icon, screenshots and feature graphic | Upload reviewed assets into empty image sets and verify the saved images. |
Data safety | Propose editable answers and send the approved declaration through Google’s API. Confirm the form in Play Console; upload success is not Google approval. |
Build, upload and track status | Check the provider’s current status and retain the results in the publishing conversation. |
Other App content questionnaires | Propose answers from your app and guide you to Play Console. RNBlocks does not currently submit these forms. |
Initial countries and regions | Select them in Play Console → Production → Countries / regions. Google’s public API can read availability, but has no initial country-selection write method. |
Start internal testing | Yes—verified through the agent with an existing uploaded App Bundle. Tester access and actual installation are separate checks. |
Release publicly | Implementation is being qualified. Public release needs a separate final approval; internal testing does not authorize it. |
Select testers | Individual email lists use Play Console. The agent’s new Google Group connection is being verified; it adds an existing group after review and preserves existing groups. |
Choose where the app will be available
Before the first public release, open your app in Play Console → Test and release → Production → Countries / regions. Choose Add countries / regions, select the countries you want, use Edit countries / regions to add them, then save. This configures availability; it does not create or publish a release.
This initial selection is a Play Console step. Google’s public countryavailability API only reads the setting. RNBlocks can continue the supported build, upload and reviewed release actions after you complete it. An internal test does not prove production countries have been selected.
1 / 1 · Countries / regionsSelect your countries in Production. Use Edit countries / regions to add them, then save. This does not publish a release.
- Choose the countries you want.
- Use Edit countries / regions to add them, then save.
- Country selection does not publish the app.
Create the developer account
Choose the owner and account type
Sign in to Play Console with the Google account that will own the developer account. Choose Personal or Organization based on who is publishing.
Complete registration
Review Google’s agreement and pay the US$25 one-time registration fee yourself. Payment methods vary by location. RNBlocks credits do not cover this charge.
Finish the verification tasks
Follow the tasks shown on the Console home page. A registration receipt means the account was created; it does not mean identity, organization, website or contact verification is complete.
Which name belongs in which field?
For an organization, match the legal name and address across the payments profile, supporting records and D-U-N-S information. A brand and an authorized person are different identities.
| Information | Use |
|---|---|
Developer name | Your public developer brand; it can differ from the legal name. |
Organization legal name and address | The actual organization details in the linked payments profile and D-U-N-S record. |
Representative’s identity | The authorized person’s legal name and identity documents. |
Contact information for Google | Working email and phone details for account communications. |
Public developer contact | The support contact details Google identifies as public for your account type. |
Which email and phone number will be public?
Use reachable organization-controlled contacts for a business. Google also displays verified legal identity information: organization name and address, or personal legal name and country; monetization and regional rules can require more. Review the public Developer profile before release.
| Detail | Purpose |
|---|---|
Google Account sign-in | The owner’s login. Keep it separate from published support contacts. |
Contact email / contact phone | Google uses these for account communication; they are not shown to users on Play. |
Developer email / developer phone | Public developer-profile contacts. Organizations provide both; check the personal-account and regional requirements. |
App support contact | Set per app in Store settings → Store listing contact details. It can differ from the developer-profile contact. |
Prepare the right verification documents
An organization can be asked for both business registration evidence and a representative’s government photo ID. The accepted documents depend on the payments-profile country.
For the United States, Google’s examples include IRS-issued documents such as CP575 or 147C and qualifying state incorporation documents. Use the current country-specific list rather than assuming a document accepted elsewhere will work.
Submit unmodified, clear documents directly to Google. If you entered a brand in a legal-name field, correct the relevant legal information during verification; do not create another account and pay again as a first fix.
Check what remains after registration
If Create app is unavailable, read the incomplete Console tasks first. The relevant account owner should resolve the named issue or contact Google support; another app or account will not bypass it.
Identity or organization documentation: submitted is different from approved.
Website ownership: complete the verification requested for the organization’s real website.
Phone and email: finish the required verification challenges.
Personal-account device verification: complete the Android-device check when requested.
Production access: some new personal accounts must complete a qualifying closed test before applying.
Verify the organization website
Use the organization’s real site
Provide a website the organization controls. A social profile cannot be verified as this website. The site’s ownership check is separate from app support, privacy and deletion pages.
Prepare Search Console ownership
Register and verify the site in Google Search Console using an authorized owner. Then send the website verification request from Play Console’s Account details page.
Finish the association
The same Google Account can approve the association automatically. Otherwise the verified Search Console owner must approve the request. Check the Play Console result; creating the website alone does not complete verification.
Why is phone verification still locked?
Google requires identity verification first, plus website verification for organizations or device verification for personal accounts. Submitted documents still awaiting approval do not satisfy that prerequisite.
When the task becomes available, enter the number in international format, choose text message or voice call, and use Verify phone number. Enter the six-digit code directly in Google. If text delivery fails, try the offered call option.
Common verification questions
| Question | Next step |
|---|---|
Can the brand differ from the company or my ID? | Yes. For example, fictional Northstar Apps can be the developer brand, Northstar Labs LLC the legal organization, and Jordan Ellis its representative. Put each in the field asking for it. |
I put my brand in the legal-name field. Start over? | First identify the field and correct the legal information during verification. Do not create another account or pay again just to fix a name. |
Why do I see two document requests? | Read each heading. Organization evidence and a representative’s photo ID verify different things. A repeated company-document request does not by itself prove you need a different document. |
Can I reuse the company’s D-U-N-S number? | Use the existing number for the same legal organization. Check its name/address and the linked payments profile; do not invent a new identity for another app. |
The uploads finished. Am I verified? | Check approval and the remaining Home tasks. Website and phone tasks can remain after document submission. |
The owner email opens an older account | Confirm the signed-in Google Account and account status. Resolve access or closure with Google support rather than treating a new email as a verification workaround. |
Create your app record
Create the app
In Play Console, choose Home → Create app. Set the app name, default language, app or game, and free or paid. If Google asks for the package name here, use the exact Android package saved in RNBlocks and check availability.
Complete the declarations
Read and accept the declarations that apply, including Play App Signing terms, then create the record. The dashboard lists the remaining setup tasks.
Match the Android identity
In RNBlocks Release settings, keep the Android package name for this app consistent with the build and any existing Play listing. An update must use the existing app identity.
Can the agent create the app through an API?
Google’s public Play publishing API does not currently expose ordinary app-record creation. Create the first record in Play Console. The agent can help prepare that browser form, while you review the declarations and agreements. This does not mean every later publishing step must be manual.
Once the record exists and API access is configured, supported tools can upload builds, update listing text and images, manage testing tracks and check release status. Fastlane supply also manages an existing Play app; it does not replace initial app creation.
Google’s Custom App Publishing API creates private enterprise apps that can never become public. Its separate appstoreappsreview creation endpoint is for third-party app stores. Neither is a shortcut for creating a public Google Play app.
Already verified? Reuse your account
Company verification belongs to your developer account. Use that verified account for another app instead of registering again. Each app still needs its own app record, package name, listing and release setup.
A verified Google account, an app record and permission for a publishing service are three separate things. Signing in to Play Console does not automatically give RNBlocks API access.
Whose account am I connecting?
For the service-account route, each publisher creates or reuses their own connection. You do not need to repeat developer registration or create a new Cloud project for every app. Add access to another app only when you want that connection to manage it.
A project name such as ‘Publishing tools’ is just a label. Confirm the signed-in Google Account and the project’s owner before continuing; an RNBlocks-looking name does not establish ownership.
| Item | Who owns it and what it does |
|---|---|
Google sign-in | Your Google Account, such as the work Gmail used to open Play Console. |
Play developer account | Your business or personal publisher account. Your apps and releases stay here. |
Google Cloud project | A project controlled by the publisher that holds the publishing connection. It is not another app listing or a requirement to move the app’s backend to Google. |
Service account and key | A technical identity and private credential used by publishing software. It is not a new Gmail inbox or a second paid Play developer membership. |
RNBlocks connection | Your saved authorization for RNBlocks to use that credential with the selected app. It does not transfer ownership to RNBlocks. |
Set up your publishing connection once
There are two places to finish setup: Google gives publishing tools access, then RNBlocks saves your private connection. In Google Cloud, enabling the Google Play Android Developer API is a one-time switch for your chosen project. It lets publishing tools communicate with Play; it does not upload or release your app. Google asks you to accept its API terms as part of enabling it.
You can reuse this setup for later builds and other apps you own. For another app, grant the service account access to that app in Play Console, then select the saved connection in RNBlocks. You do not need a new Cloud project, key or paid developer membership each time.
Choose your Google Cloud project
Open Google Cloud Console using an account authorized by your publisher. Select an existing suitable project or create one. Enable the Google Play Android Developer API. A service account does not need the project Owner or Editor role to publish through Play.
Create a publishing key
Open IAM & Admin → Service Accounts. Create or select a dedicated publishing service account. Under Keys, create a JSON key and download it privately. Do not paste the key into chat, commit it with app code, or share your Google password.
Choose its Play access
Open Play Console → Users and permissions → Invite new users. Use the service account’s email, select the intended app under App permissions, and grant only the required capabilities. Testing tracks, store presence and editing draft apps have separate permissions. Google combines draft editing with deletion access, so review that grant carefully. Production release and account administration are broader permissions.
Connect and check the app
Where Google Play Connections is available in RNBlocks, upload the key in its private form and give the connection a recognizable name. Then select it for the app. Checking the key and confirming access to the app are separate checks; do not assume that saving a key means an upload succeeded.
1 / 5 · Your projectIn Google Cloud, select a project you control or create one. You can reuse it for other apps.
- Use a project and service account controlled by your publisher.
- Grant access to the intended app and actions in Play Console.
- Connect privately in RNBlocks, then verify the selected app.
Already have a service account?
Reuse a suitable service account owned by your publisher. In Google Cloud, select its project, open IAM & Admin → Service Accounts, then choose the account. Use Keys → Add key → Create new key → JSON if you need a new private key. Confirm its app access in Play Console before connecting it.
Publishing credentials and push-notification credentials serve different purposes. Setting up a Play publishing key does not configure notifications. Keep these separate unless you intentionally grant the account both sets of permissions.
Why can an upload work but a listing save fail?
Google checks different permissions for uploads, store details and draft apps. For a new draft app, check both Manage store presence and Edit and delete draft apps. The latter also grants deletion of that draft; it does not grant production release access.
Open Play Console → Users and permissions → your publishing service account → App permissions → your app → Manage permissions. After an approved change, select Apply and Save changes. Keep access limited to the intended app.
A permission error alone does not tell you which access is missing. Check which step failed before changing permissions. Text accepted into a temporary Google edit is not saved to the listing until that edit is committed and checked.
1 / 5 · View appSelect View app information. Google also selects app quality information. Leave Admin unchecked.
- Use App permissions for the selected app.
- Grant only the capabilities needed for your task.
- Select Apply, then Save changes.
How automated Google Play access works
A service account is a robot account for publishing software. It belongs to your Google Cloud project; RNBlocks connects to it with your permission. With this setup, create one or reuse a suitable existing account, then grant access only to the apps it should manage. A separate Cloud project or key for every app is not required. Never grant Cloud project Owner or Editor just to enable Play publishing.
Use the service account’s JSON key, not a generic Google Cloud API key. It serves a similar purpose to the Apple API key used for publishing, but Google’s creation and permission steps are different. EAS Submit’s Android route requires this service-account key; Google OAuth support does not automatically make an OAuth connection usable by EAS Submit.
Google supports a service account for server-to-server publishing. Enable the Google Play Developer API in a Google Cloud project, then grant the service account the required app permissions in Play Console → Users and permissions. You no longer need to link the developer account to the Cloud project.
Keep service account keys out of chat and app source. Use a provider’s private credential form, and grant only the access needed for the intended app and actions. RNBlocks can review an existing AAB upload and initial listing details. Check the available tools for later testing, policy and release steps; connecting the account does not complete them.
A Play store build uses an Android App Bundle (AAB). A direct-install APK is a separate testing route. Expo’s current EAS Submit guidance supports the first internal release after the Play app record and service account are configured; it does not require a manual first upload. Check the chosen track and release status before approving an upload.
Before a production release
Prepare a signed store build, complete the listing and App content tasks, choose a testing track and verify the app on real devices. Use Play Console to check that the uploaded build and declarations are ready for review.
An Android APK installed directly on a phone does not satisfy a required Play closed-testing period. See the testing guide for the current personal-account requirement.
Official references
- Get started with Play Console
- Google developer account information
- Google developer contact requirements
- Manage a verified Play developer profile
- Google verification documents by country
- Verify your Google developer identity
- Verify your organization website
- Create an app in Play Console
- Testing requirements for new personal Play accounts