Reseller Support
This guide covers distributing licenses through resellers, configuring license claiming, and choosing the activation flow for your customers. For implementation details, use the public @gorilla-engine-sdk/ge-product-hub package documentation.
Overview
Section titled “Overview”The reseller flow looks like this:
Manufacturer creates a license batch ↓Reseller receives the list of serial numbers (CSV export) ↓End user purchases from reseller, receives a serial ↓User enters serial in the plugin's activation UI ↓Plugin claims the license and activates it through Product HubA serial number identifies a license. Claiming assigns an unclaimed reseller license to a customer; activation enables that license on a machine. These can happen together through the client library. Subsequent activations remain subject to the license’s activation limit, expiry, and enabled status.
1. Setting Up Resellers
Section titled “1. Setting Up Resellers”Before creating a batch you need a Reseller record for the shop or distributor the batch is destined for.
Select an existing reseller when creating a license batch. If the reseller you need does not appear in the list, contact UJAM and ask us to add it. Please provide:
- The official legal name of the reseller
- The official website URL
Once the reseller has been added, you can select it when creating a license batch.
2. Creating License Batches
Section titled “2. Creating License Batches”Navigate to License Batches in the sidebar and click New Batch. The form has the following fields:
| Field | Notes |
|---|---|
| Product | Dropdown — select which product these serials are for |
| Reseller | Dropdown — select the reseller this batch is destined for |
| Description | Optional free-text label, e.g. “Black Friday 2026 batch for Beatport” |
| License Type | Standard, NFR, or Free — Subscription licenses cannot be batched |
| Number of Licenses | How many serial numbers to generate (1–5000) |
| Max Activations per License | Leave empty for unlimited; enter a number to cap activations per serial |
| Expiry Date | Optional — all serials in the batch will share this expiry date |
Click Create Batch. Product Hub generates the serial numbers immediately.
Exporting serials to hand off to the reseller
Section titled “Exporting serials to hand off to the reseller”Open the batch from the License Batches list and click Download CSV. The CSV contains one serial per row along with its type, activation limit and expiry.
Monitoring a batch
Section titled “Monitoring a batch”The batch detail view shows every serial in the batch as a paginated table with columns for serial, type, max activations, expiry, assigned user (or “Unassigned”), and disabled status. This lets you quickly see which serials have been claimed and by whom.
3. Manufacturer Configuration
Section titled “3. Manufacturer Configuration”The claiming flow available to end users is controlled by the Auth Scheme settings for your manufacturer account.
Navigate to your manufacturer’s detail page and open Auth Scheme. Click Edit to change settings. The relevant section is Reseller Support at the bottom of the form:
| Toggle | What it does |
|---|---|
| Enable email + serial license claiming and activation without login | When on, users can activate by entering only their email and serial — no account or password required. Only available when Authentication Type is set to None. |
| Enable hosted claim page | Activates a Product Hub-hosted web page where users can enter their serial. Comes with branding options (background colour, font colour, button colour, logo). |
Authentication Type and how it affects claiming
Section titled “Authentication Type and how it affects claiming”The Authentication Type dropdown (at the top of the Auth Scheme form) determines how users prove their identity:
| Type | What it means |
|---|---|
| Auth0 | User log in requests are forwarded to your Auth0 tenant |
| WorkOS | Login requests are validated against your WorkOS identity provider |
| Custom URL | Login requests are forwarded to your own endpoint |
| None (Email-Serial Claim & Activation only) | No login system — users identify themselves by email + serial only |
How the two settings combine:
| Auth Type | Email+Serial toggle | User experience |
|---|---|---|
| Auth0 / WorkOS / Custom URL | Off | User signs in through your configured authentication provider, then claims and activates the reseller license |
| None | On | User must use email + serial (the only available path) |
| None | Off | Neither login-based activation nor email + serial activation is available |
Choose the right combination for your distribution model:
- Customers with identity-provider accounts — WorkOS, Auth0, or Custom URL + email+serial toggle off. Customers sign in and claim their reseller license while activating it.
- Reseller distribution without an identity provider — None + email+serial toggle on. Customers enter email + serial; Product Hub creates a user record on first use. This does not create an identity-provider account or password.
4. Plugin Integration
Section titled “4. Plugin Integration”Use the publicly available @gorilla-engine-sdk/ge-product-hub client library rather than implementing the activation protocol yourself. It handles hardware fingerprinting, activation verification, and local persistence.
With an identity provider
Section titled “With an identity provider”For WorkOS, Auth0, or Custom URL authentication, customers sign in with their account credentials and supply their reseller serial. The library claims the license for that customer and activates it. A previously stored login session can also be used, avoiding another password prompt.
With email and serial only
Section titled “With email and serial only”For Authentication Type = None with Email+Serial Claiming enabled, customers provide their email address and serial without a password. Use the same email and serial for additional machine activations. A license already claimed by another customer cannot be claimed again by a different customer.
This flow does not provide an identity-provider account, password recovery, or automatic email-change synchronization. We recommend WorkOS when you want a full account experience; see User Authentication for the available options.
Developer reference
Section titled “Developer reference”The package README on npm contains installation instructions and current examples for credential-based claiming, stored-session claiming, and email + serial activation. Use the TypeScript declarations and API documentation shipped with your installed package version for method signatures and error handling.
Keep request formats, session handling, and activation verification in the client library rather than duplicating them in product code.

