Skip to main content

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.

danger

Technical Integration

The technical integration includes two parts: Billing Integration and Frontend Integration.

  1. Billing Integration. On the Overview page of your product in the GCP Producer Portal console, go to the Technical integration section and click on BILLING INTEGRATION. Link two service accounts with three integrations as listed below.

    Service AccountsIntegrations
    • Partner Procurement API integration
    • Cloud Pub/Sub integration
    • Service control API integration (Only for product with usage fees)
  2. Frontend Integration. On the Overview page of your product in the GCP Producer Portal console, go to the Technical integration section and click on FRONTEND INTEGRATION. Enter the fields as shown in below image with the values as shown in below table.

    Input FieldValue
    Sign up URLhttps://api.suger.cloud/public/signup/gcp/orgId/{your-suger-org-id}/{your-gcp-product-id}
    If Enable SSO loginSSO URL: https://api.suger.cloud/public/login/gcp/orgId/{your-suger-org-id}/{your-gcp-product-id}
    If Disable SSO loginLogin 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 as https://api.suger.cloud/public/login/gcp/orgId/{your-suger-org-id}/{your-gcp-product-id}.
    • If enable SSO login, the redirected login URL contains three query parameters: partner, sugerEntitlementId and x-gcp-marketplace-token. Here is the official guidance to verify the x-gcp-marketplace-token JWT token.
    • If the SSO login is not enabled, the redirected login URL doesn't contain any query parameters.
  3. Run the below command in the GCP console terminal to grant the serviceConsumer & serviceController roles to cloud-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

  1. 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,
  2. 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.
  3. Your service need to collect this sugerEntitlementId and save it with the account created by the buyer.
  4. More details can be found here.

Login URL Redirect

  1. 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.

  2. If the login URL in GCP Marketplace integration is empty, the Fulfillment 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.