Cloud Marketplaces

Marketplace API Integration for Cloud ISVs: Patterns That Scale

Aug 28, 2026 · David Nakamura

Most ISV teams approach a cloud marketplace listing the way they approach a product page: write the copy, upload the logo, set a price, and ship it. That framing collapses the moment a customer actually subscribes. What follows is a sequence of webhook deliveries, API calls, and subscription lifecycle events that the ISV's backend must handle correctly — or the customer lands on a broken activation flow, metering goes unrecorded, and revenue leaks silently while the listing looks perfectly healthy in the marketplace console.

The integration work is engineering, not marketing. And because AWS, Azure, and GCP each model the problem slightly differently, ISVs listing across multiple hyperscalers need an architecture that absorbs those differences without duplicating logic or producing three separate, divergent codebases.

Why Marketplace Integration Is an Engineering Problem

The commercial appeal of cloud marketplaces is well understood: customers can draw down committed spend, procurement is simplified, and co-sell relationships open doors. What receives less attention in channel strategy discussions is the technical contract the ISV accepts when they list.

On AWS, a subscribed customer triggers a flow where the ISV must call ResolveCustomer within a time window, exchange the registration token for a customer identifier, and subsequently call the Metering Service API to report usage. Miss the window or fail to report usage, and the transaction either does not complete or the customer is not billed. On Azure, the ISV must implement a webhook endpoint that receives subscription lifecycle events — and must respond idempotently, since Azure retries deliveries. On GCP, the flow involves both a server-side Procurement API and a client-side frontend integration for SSO, with entitlement state managed through a set of event types that have no direct analogue in AWS.

Each platform surfaces a different mental model of what a subscription is, how it is activated, and how it is terminated. Getting any one of them right requires careful reading of the vendor documentation. Getting all three right, in a way that does not produce three separate maintenance burdens, requires architectural intent.

AWS Marketplace: SaaS Fulfillment and Metering

The AWS SaaS subscription flow centres on two API surfaces. The first is the SaaS Subscription API, used to resolve the registration token the marketplace sends when a customer subscribes and to complete the subscription lifecycle (subscribe-success, subscribe-fail, unsubscribe-pending, unsubscribe-success). The second is the Marketplace Metering Service, used to record usage for consumption-based products via BatchMeterUsage.

Several common mistakes appear repeatedly in ISV integrations. Calling MeterUsage synchronously on every billable event rather than batching is the most frequent; the API enforces a minimum metering interval, and synchronous calls add latency to product flows unnecessarily. A second mistake is treating the registration token as durable — it is not; the ISV must call ResolveCustomer immediately and store the resulting customer identifier. A third is failing to handle the unsubscribe-pending event gracefully, which leaves cancelled subscriptions active in the ISV backend until someone notices.

AWS provides a SaaS integration overview and a set of mock endpoints for testing metering calls in a sandbox environment, which significantly reduces the risk of discovering billing errors in production.

Azure Marketplace: SaaS Fulfillment API v2 and Webhook Handling

Azure structures the integration differently. The SaaS Fulfillment API v2 handles subscription management — resolving a subscription token, activating a subscription, and updating plan or seat quantity. Separately, the Metered Billing API handles consumption reporting for subscriptions that include custom meter dimensions.

The webhook is where most Azure integrations accumulate technical debt. Azure delivers lifecycle events — ChangePlan, ChangeQuantity, Suspend, Reinstate, Unsubscribe — to an endpoint the ISV registers during publishing. Azure expects a 200 response within ten seconds, retries on failure, and delivers events with a unique activityId that the ISV should use as an idempotency key. ISVs who store and check activityId on receipt handle retries cleanly; those who do not create duplicate state on every retry.

Authentication uses Azure Active Directory, requiring the ISV to register an application in AAD and use client credentials to call fulfillment endpoints. The publisher and customer are in different AAD tenants, which means the ISV application must be configured for multi-tenant access — a detail that is easy to miss and difficult to debug without understanding the underlying OAuth flow. The Microsoft commercial marketplace documentation covers this in detail, but the authentication section requires close reading.

GCP Marketplace: Procurement API and Frontend Integration

Google Cloud Marketplace uses a two-part integration model that has no close equivalent on the other hyperscalers. Server-side, the ISV registers as a subscriber to Cloud Pub/Sub notifications from the Procurement API and processes entitlement events — ENTITLEMENT_CREATION_REQUESTED, ENTITLEMENT_ACTIVE, ENTITLEMENT_CANCELLED, and several others. Client-side, the ISV implements a frontend SSO landing page where the customer arrives after subscribing, passing a JWT that the ISV validates against the Procurement API to confirm entitlement.

The Pub/Sub delivery model means the ISV must maintain a subscriber that acknowledges messages within the acknowledgement deadline or receives redeliveries. Because Pub/Sub guarantees at-least-once delivery, ISV backends must be idempotent on every entitlement event. The state machine for GCP entitlements has more intermediate states than AWS or Azure, and handling transitions between them — particularly around plan changes and account approvals — requires explicit modelling rather than optimistic assumptions.

Cross-Cloud Architecture Patterns

ISVs listing on two or three hyperscalers simultaneously face a convergence problem: each marketplace sends different event shapes, uses different authentication mechanisms, and models the subscription lifecycle with different terminology. The implementation choices made early determine how painful maintenance becomes over the next three years.

The pattern that holds up best introduces an abstraction layer — a marketplace integration service that translates hyperscaler-specific events into a single internal event schema. Internally, the product backend works with a small set of subscription lifecycle events: provisioned, activated, plan-changed, suspended, cancelled. The marketplace integration service is responsible for receiving the hyperscaler webhook or Pub/Sub message, authenticating it, and emitting the appropriate internal event. The product backend never directly handles marketplace-specific payloads.

This architecture has several practical benefits. Adding a fourth marketplace — or updating the integration when a hyperscaler changes its API — is scoped to the adapter layer rather than requiring changes across the product. Testing is simpler because internal events can be emitted directly in test environments without needing to mock the full hyperscaler authentication and webhook flow. Monitoring and alerting can be built around the internal event stream rather than requiring separate instrumentation for each marketplace.

The operational concerns that cut across all three integrations are similar: idempotency keys, dead letter queues for unacknowledged messages, retry logic with exponential backoff, and structured logging that captures the hyperscaler, the event type, and the customer identifier on every received event. Getting these right at the start is substantially cheaper than retrofitting them after the first billing discrepancy reaches a customer.

Build vs. Partner Decision

The build-or-buy question is real. Several middleware platforms offer pre-built connectors for AWS, Azure, and GCP marketplace APIs, abstracting some of the integration complexity. For ISVs with simple, single-hyperscaler, flat-rate subscription models, these tools can compress the time to listing significantly. For ISVs with complex pricing — consumption-based dimensions, multiple tiers, co-sell requirements across more than one cloud — the abstraction often breaks at the edges, and the ISV ends up building custom logic anyway, but on top of a layer they do not fully control.

The integration is not a one-time project. Marketplaces change their APIs, add new event types, deprecate authentication flows, and introduce new commercial constructs. As the ISV marketplace listing strategy and the hyperscaler marketplace partner playbook both note, marketplace presence requires ongoing investment, not just an initial integration sprint. The engineering commitment needs to be factored into the listing decision.

Teams without the bandwidth or hyperscaler-specific experience to build this integration from scratch often engage a custom software development partner to compress the timeline and avoid the common failure modes described above. The core product team retains ownership of the integration architecture; the development partner handles the initial implementation and documentation. For ISVs trying to reach marketplace-listed status within a quarter, this division of labour is frequently the practical path.

Whatever the approach, the integration deserves the same rigour as any other production system: code review, test coverage, runbooks for the failure scenarios that will eventually materialise, and a named owner who understands the hyperscaler contract well enough to respond when something breaks at 2 a.m. Marketplace revenue is real revenue; the system that handles its activation and billing should be treated accordingly. An overview of how pricing strategy interacts with marketplace mechanics is a useful companion read once the integration architecture is decided.

← Back to the blog