List Product
List your SaaS products in GCP Marketplace, fully managed by Suger on your behalf.
Overview
List your products/services via GCP Producer Portal, so your clients can search & buy your listings in GCP Marketplace. There are three parts to complete for listing a SaaS product, they are Product Details, Pricing Model and Technical Integration. More details can be found in the official guidance.
Product Details
Add listing info and marketing info about your product, including:
- Product Name
- Product Logo Image
- Product Overview / Description
- Product Search Keywords
- Product More Info URL
- Privary Policy URL
- Support URL
- Support Email
- Sales Contact Email
Pricing Model
Select the pricing model, configure the price & metrics (if applicable), and submit it for GCP review.
- If you would like to offer a Free Trial of your software to Google Cloud users, fill out the Cloud Marketplace solution trial intake form. More details can be found here.
Technical Integration
The technical integration includes two parts: Billing Integration and Frontend Integration.
-
Billing Integration. On the Overview page of your product in the GCP Producer Portal console, go to the
Technical integration
section and click onBILLING INTEGRATION
. Link two service accounts with three integrations as listed below.Service Accounts Integrations - cloud-commerce-procurement@system.gserviceaccount.com
- The service account created in the step 4 of GCP Integration
- Partner Procurement API integration
- Cloud Pub/Sub integration
- Service control API integration (Only for product with usage fees)
-
Frontend Integration. On the Overview page of your product in the GCP Producer Portal console, go to the
Technical integration
section and click onFRONTEND INTEGRATION
. Enter the fields as shown in below image with the values as shown in below table.Input Field Value Sign up URL https://api.suger.cloud/public/signup/gcp/orgId/{your-suger-org-id}/{your-gcp-product-id}
If Enable SSO login SSO URL: https://api.suger.cloud/public/login/gcp/orgId/{your-suger-org-id}/{your-gcp-product-id}
If Disable SSO login Login URL: https://api.suger.cloud/public/login/gcp/orgId/{your-suger-org-id}/{your-gcp-product-id}
tip- No matter enable or disable the
SSO login
, the login URL is the same ashttps://api.suger.cloud/public/login/gcp/orgId/{your-suger-org-id}/{your-gcp-product-id}
. - If enable
SSO login
, the redirectedlogin URL
contains three query parameters:partner
,sugerEntitlementId
andx-gcp-marketplace-token
. Here is the official guidance to verify thex-gcp-marketplace-token
JWT token. - If the
SSO login
is not enabled, the redirected login URL doesn't contain any query parameters.
- No matter enable or disable the
-
Run the below command in the GCP console terminal to grant the
serviceConsumer
&serviceController
roles tocloud-commerce-procurement@system.gserviceaccount.com
for your product listing.gcloud endpoints services add-iam-policy-binding \
{your-gcp-product-id}.endpoints.{your-gcp-marketplace-project-id}.cloud.goog \
--member='serviceAccount:cloud-commerce-procurement@system.gserviceaccount.com' \
--role='roles/servicemanagement.serviceConsumer'gcloud endpoints services add-iam-policy-binding \
{your-gcp-product-id}.endpoints.{your-gcp-marketplace-project-id}.cloud.goog \
--member='serviceAccount:cloud-commerce-procurement@system.gserviceaccount.com' \
--role='roles/servicemanagement.serviceController'To make the product listing public alive,
gcloud endpoints services add-iam-policy-binding \
{your-gcp-product-id}.endpoints.{your-gcp-marketplace-project-id}.cloud.goog \
--member='allUsers' \
--role='roles/servicemanagement.serviceConsumer'
Set Product Signup URL
Suger will automatically sync with GCP Marketplace
and pull all your listed products info. You can see all your listings on Suger Console Product page. Select the product listed in the previous steps, and click the buttion EDIT
in Product Info
section. Fill your product Signup URL in the input field of Fulfillment URL, and click SAVE
.
Signup URL Redirect
- After purchasing the product, your buyer is directed to
https://api.suger.cloud/public/signup/gcp/orgId/your-suger-org-id/your-gcp-product-id
first, - Then it is redirected to your product Signup URL with two query parameters
sugerEntitlementId
&partner
, for example,https://your-product-signup-url?sugerEntitlementId=1234abcd&partner=gcp
. - Your service need to collect this
sugerEntitlementId
and save it with the account created by the buyer. - More details can be found here.
Login URL Redirect
-
After the buyer has purchased the product and completed the signup process via the Signup URL Redirect, they will subsequently be redirected to the
login URL
specified in the GCP Marketplace integration, as shown below. -
If the
login URL
in GCP Marketplace integration is empty, theFulfillment URL
in Product will be redirected to.
Track Consumption with Labels
SaaS products with a hybrid architecture require the integration with user labels to understand how the ISV solution impacts Google Cloud infrastructure consumption in the customer's project. This type of architecture includes a data plane in the customer's Google Cloud project and a control plane in your Google Cloud project. This data will give Google insights into your products' impact in terms of their associated customer Google Cloud usage, which Google can use to showcase impact and guide go to market (GTM) investments.
Step 1 - Request consumption tracking label
For each product that you offer through Cloud Marketplace, you must request a label and then integrate it into your product. To request a label for your Cloud Marketplace product, complete the Partner Consumption Tracking Initiative form. After you complete the form, you receive an automated email with the label that you must integrate with your product.
Step 2 - Integration tracking label with SaaS product
There are FIVE methods to add the consumption tracking label to the resources that your product deploys. The detailed guidance for Terraform can be found at Google Cloud Provider Configuration Reference in the official Terraform documentation. For information about adding labels by using the Google Cloud console, Google Cloud CLI, or the REST API, see Create resources with labels.
- Terraform (recommended ✅)
- The Google Cloud console
- Google Cloud CLI
- REST API
- Cloud Deployment Manager (deprecated soon, don’t use 🚫)
FAQ
-
Is Google Cloud Validated Solution designation required to list in the marketplace?
Yes, it is required
-
I saw a company on GCP that lists no pricing; they default to a “talk to sales.” Is it common for vendors to not disclose pricing?
You can hide all your pricing plans in the public GCP marketplace listing. Some of our clients have this configuration. It is a very common strategy in the B2B SaaS industry, giving sales more flexibility to negotiate deals. We can configure it relatively straightforward.
-
Why is the IAM binding setting the principal to “allUsers” instead of a specific group or service account? If I am reading this command correctly, it will bind the service management.serviceConsumer role to all users on that endpoint, meaning anyone can view or enable a service in the project.
Setting it to “allUsers” will make it public live, so any GCP clients can purchase and subscribe to your listing service.