Internal — Partnerships

Custom API Access

How K-Series custom integrations work, how they scale, and why the current pricing model leaves revenue on the table.

Lightspeed Commerce — K-Series Partnerships Team

Business — U.K. (businessId) John (Admin) Manchester businessLocationId London businessLocationId Liverpool businessLocationId One business · Three locations · One admin user
Slide 1

Business Configuration

Meet John — an admin user managing a multi-location hospitality business in the U.K. He oversees three K-Series locations: Manchester, London, and Liverpool.

John wants to connect third-party apps to his POS. Because these apps aren't Lightspeed Approved Integrations, he'll need custom API access — the pathway for merchant-initiated or developer-built integrations.

Key Concept

In K-Series, a businessId represents the merchant account. Each physical location is a businessLocationId. API access maps to both.

Acco Co. B.I. Solution API Client 1 (Access Token) John Manchester businessLocationId
Slide 2

Single API Connection

John wants to connect Acco Co., a business intelligence solution, to his K-Series POS. Since Acco Co. isn't an Approved Integration, he requests custom API access.

API Client

Lightspeed issues an API Client — a set of OAuth2 credentials unique to this integration. Once John authenticates, an access token is generated for secure data exchange.

Token inheritance rule: In K-Series, the access token follows the user, not the location. If John has access to multiple locations, the token automatically covers all of them.

Acco Co. B.I. Solution API Client (Access Token) John Manchester ✓ Covered London ✓ Covered Liverpool ✗ No Access Token scope = user's location access John lacks Liverpool access → token excludes it
Slide 3

One Integration, Multiple Locations

John has user-level access to Manchester and London — so Acco Co.'s access token automatically covers both. No additional configuration needed.

However, John hasn't been granted access to Liverpool. The token reflects his permissions: Liverpool is excluded.

How to Resolve

Grant John access to Liverpool in K-Series, or re-authenticate the integration with a user who already has that location assigned. The token will then cover all three.

Why This Matters

Access tokens don't need per-location provisioning. They expand organically with the user's permission set — a design choice that simplifies onboarding but has pricing implications we'll address later.

Acco Co. B.I. Solution One Inc. Online Ordering API Client 1 (Access Token) API Client 2 (Access Token) John Manchester businessLocationId
Slide 4

Multiple Integrations, One Location

John's Manchester location is already connected to Acco Co. Now he wants to add One Inc., an online ordering platform.

Separate Credentials

Each integration receives its own API Client with independent credentials and access tokens. They never share secrets — just like QuickBooks and Uber Eats wouldn't share API keys if both connected to the same POS.

Isolation by Design

Revoking one integration's access has zero impact on the other. Each client operates in its own security boundary.

Acco Co. B.I. Solution One Inc. Online Ordering API Client 1 API Client 2 John Manchester London Liverpool 2 integrations × 3 locations
Slide 5

Many-to-Many

Both integrations inherit John's full location access. Since he authenticated both Acco Co. and One Inc., each token automatically covers Manchester, London, and Liverpool.

Scaling Pattern

Access tokens are user-scoped. As John gains access to new locations, every integration he's authenticated scales with him — no re-provisioning needed.

The Two Components

Custom API access has two distinct billable dimensions: the API Client (one per integration, tied to the businessId) and Location Access (one per businessLocationId the token covers).

Part II — Strategy

Summary & Pricing Model

From the technical architecture above, two billable components emerge. What follows is how the current pricing model handles them — and where it falls short.

Slide 7

Current State: The Flat-Fee Model

The API architecture has two identifiable components that map to merchant scale. Today, neither is priced to reflect that.

How It Works Today

SKU Scope Billing Level
K-Series Custom Integration 1× API Client per integration businessId
K-Series API Access 1× per location connected businessLocationId
The Problem

API access is sold as a flat, bundled fee. The only trigger for an additional charge is a new custom API connection request. Additional locations, expanded user access, or new integrations authenticated under existing clients are effectively absorbed — zero incremental revenue.

Structural Blind Spots

  • Pricing is applied at the businessId (account) level — a merchant with five locations pays the same as one with a single location
  • Without a Salesforce integration, there's no automated mechanism to trigger charges when new locations or integrations are added
  • Merchants frequently authenticate once and gain access to all locations with no additional fee applied
  • The flat model creates an expectation of "paid once, get everything" — making future pricing corrections harder

Net effect: As merchants grow — more locations, more integrations — the value they extract from API access increases linearly. Revenue stays flat.

Slide 8

The Gap & The Opportunity

The current model doesn't track with how merchants scale. As they add locations and integrations, API usage and value increase — revenue doesn't.

Higher Support Load, No Revenue

Every custom API connection introduces support overhead — OAuth troubleshooting, scope requests, credential recovery. None of it generates incremental revenue beyond the initial flat fee.

Partner Channel Erosion

When custom API access is priced below its true cost, merchants bypass Approved Partners. Each custom connection potentially displaces an integration that would have driven partner revenue.

Two Monetizable Components

The architecture already isolates two growth vectors: the API Client (per integration) and Location Access (per site). Both map directly to how merchants scale — no new infrastructure needed.

Access-Level Pricing Dimension

Read-only scopes (financial-api, items) carry lower risk and support cost. Read-write scopes (orders-api, staff-api) carry higher operational impact. This creates a natural pricing tier.

The Added Benefit: Pricing as a Filter

When custom API access reflects its true cost, less committed or less technical merchants naturally default to Approved Partners. Support load stays aligned with higher-value use cases, and the partner channel remains protected.

● Read-Only — Lower risk, lower cost ● Read & Write — Higher impact, higher support
Slide 9

Proposed Pricing Structure

A scenario-based view of how the two-component model would apply to a merchant as they scale.

1

Initial Custom API Request

Merchant requests access for their first custom integration.

K-Series Custom IntegrationbusinessId
K-Series API AccessbusinessLocationId
2

New Location Opens

Merchant adds a location that connects to their existing custom app.

K-Series API AccessbusinessLocationId
3

Second Integration Added

Merchant connects a new third-party developer's custom app.

K-Series Custom IntegrationbusinessId

Final Picture

A merchant with 2 custom integrations and 3 business locations:

K-Series Custom Integration 2× → businessId
K-Series API Access 3× → businessLocationId
Billing Breakdown INTEGRATIONS Acco Co. One Inc. LOCATIONS Manchester London Liverpool Total SKUs: 2× Integration + 3× Access