Partner Integration Guide

User Provisioning from
Sumo Purchases

Learn how to create user accounts and provision access when customers purchase your product through Sumo Marketplace's Stripe Connect integration.

What is Sumo?

Sumo is a curated marketplace where customers discover and purchase lifetime discounts on premium SaaS tools. When a customer buys your product through Sumo, the purchase flows through your connected Stripe account via Stripe Connect.

Discovery

Customers find your product on our marketplace

Payment

Sumo creates a checkout session on your Stripe

Provisioning

You create the user and grant access

The Challenge

Many SaaS applications tightly couple user account creation to their own checkout flow. When a customer purchases through Sumo:

  • 1 The checkout happens on your Stripe account (via Stripe Connect)
  • 2 Your Stripe sends webhooks to your endpoint as normal
  • 3 But: Sumo created the customer/subscription, not your app
  • ! Gap: No user account exists to attach the subscription

The Solution

Sumo includes special metadata in every checkout session. Your webhook handler can detect Sumo-originated purchases and create user accounts on-the-fly:

Detect Sumo Purchases

Check for sumo_campaign_id in webhook metadata

Create User Account

Use customer email from the checkout session data

Link Subscription

Associate the Stripe subscription with the new user

Provision Access

Grant features and send welcome email to customer

Sumo Metadata Fields

Every checkout session created by Sumo includes these metadata fields:

Field Description
sumo_campaign_id Active discount campaign (use this to detect Sumo purchases)
sumo_product_id Sumo product identifier
sumo_product_tier_id Which pricing tier was purchased
sumo_user_id Sumo buyer's user ID
sumo_quantity Number of licenses purchased
sumo_addons JSON array of add-on details (if any)

Pro tip: The presence of sumo_campaign_id is the most reliable way to detect Sumo-originated purchases.

Next Steps