- 12 Mar 2025
- 4 Minutes to read
- Print
SaaSify GCP Project Configuration Setup
- Updated on 12 Mar 2025
- 4 Minutes to read
- Print
In this Article
In this article, learn how to create a Service Account for GCP, set up a Custom Role, grant access to the Service Account and assign roles, enable programmatic access to the GCP Producer Portal, and configure test accounts.
Custom Role Creation
Before creating a Service Account, we must have a Custom Role with minimal permissions. Follow the steps below to create a Custom Role:
Navigate to GCP Console – IAM
Select the marketplace project in the project list and click Roles from the left menu.
Click on + Create Role.
Provide a title for the Custom Role: “GCPMarketplaceRoleForSaaSifyIntegration”
If required, provide a Description.
Provide the ID: “GCPMarketplaceRoleForSaaSifyIntegration_ID”
Select the Role launch stage as General Availability.
Click on + Add Permissions:
In the Filter permissions by role field:
Search for “Pub/Sub Editor” and select the same.
Click on Ok.
In the filter, search for “pubsub.subscriptions.create”
Select the permission.
Click on Add.
Once again, click on + Add Permissions
Search for “Pub/Sub Editor” and select the same.
Click on Ok.
In the filter, search for “pubsub.subscriptions.get.”
Select the permission.
Click on Add.
Click on + Add Permissions:
Search for “Service Controller” and select the same.
From the list of Permissions, select the below permission and click on Add.
servicemanagement.services.check
servicemanagement.services.report
Click on + Add Permissions:
From the list of Permissions, select the below permission and click on Add.
consumerprocurement.entitlements.get
consumerprocurement.entitlements.list
Click on Create.
Creation of Service Account for GCP
A Service Account is required to communicate with GCP Marketplace APIs like Cloud Commerce Partner Procurement API and Service Control API to manage customer purchases, accounts, entitlements, and usage report management from SaaSify.
A Service Account will be created within Spektra Systems' public project and provided to you by PSM. No further action is required from your side at this time.
Note:
Please ensure you have received the service account details. If not, kindly reach out to the team.
Example: saasify@spektrasystems-public.iam.gserviceaccount.com
Granting Access to Service Account Setup
To grant access to the Service Account and assign roles, please follow the steps below:
Navigate to the GCP Console: Go to the IAM section.
Click on "Grant Access." This will allow you to add principals and assign roles to them.
Add New Principals: Enter the service account provided by PSM.
Assign Roles: Click on the "Select a role" dropdown and add the following roles:
a. Commerce Price Management Private Offers Admin
b. Commerce Producer Viewer
c. GCPMarketplaceRoleForSaaSifyIntegration (the role created during custom role creation).
Click on "Save": Ensure all changes are saved.
Programmatic Access to GCP Producer Portal
Programmatic access in SaaSify enables access to the marketplace project. It allows the SaaSify system to access the GCP console.
Navigate to IAM in GCP Console.
Make sure the <partnercompanyname>-public project is selected.
Provide the permissions to the saasify-pvtoffer-svc@spektrasystems.com account as mentioned below:
Click on Grant Access.
Add the New principals as saasify-pvtoffer-svc@spektrasystems.com.
Click on Select a role.
In the Select a role dropdown, type Commerce Price Management Private Offers Admin in the filter text.
It will display the role “Commerce Price Management Private Offers Admin.”
Select the role shown in the result window.
Click on Add Another Role.
In the Select a role dropdown, type Commerce Producer Admin in the filter text.
It will display the role “Commerce Producer Admin.”
Select the role shown in the result window.
Click on Add Another Role.
In the Select a role dropdown, type Service Management Administrator in the filter text.
It will display the role of “Service Management Administrator.”
Select the role shown in the result window.
Click on Save.
Configuration of Test Accounts
Below are the steps that you need to follow to test the purchase of the product:
To test the purchase of the product before making it live, we need to make sure that we have the following details:
Email ID of the Test User
Billing Account ID of the Test User (Note: Use 000000-000000-000000 format with A-F and 0-9 numbers and letters)
Before proceeding with the test purchase, complete the below steps:
Add the test user email under IAM with the required permissions.
Navigate to IAM in GCP Console .
Make sure the <partnercompanyname>-public project is selected.
Click on Grant Access.
Add the New principals (Provide the email ID of the test user).
Click on Select a role.
In the Select a role dropdown, type Commerce Producer Admin in the filter text and click on it.
Click on + Add Another Role.
In the Select a role dropdown, type Service Management Administrator in the filter text and click on it.
Click on + Add Another Role.
In the Select a role dropdown, type Commerce Price Management Private Offers Admin in the filter text and click on it.
Click on Save.
Configure the test billing account used to test the purchase. This will make the user eligible for attractive discounts on the incurred charges..
Navigate to the GCP Producer Portal.
Make sure the <partnercompanyname>-public project is selected.
Select Reports from the left menu.
Click on Add a Test Billing Account and provide the billing account ID.
Click on Done.
Click on Save.
This is subject to GCP approval and will take approximately 24 hours.
Once the test billing account is approved, you can use the above billing account for public and private test purchases.
Next Step
Follow the steps on the next page to perform SaaSify GCP Product Configuration Setup.