Skip to content

Lightspeed — Adapter Guide

Provider Info

Field Value
Slug lightspeed
Auth Type oauth
Base URL https://api.lightspeedapp.com (varies by region)
API Docs https://developers.lightspeedhq.com

Authentication

Lightspeed uses OAuth 2.0:

Authorization: Bearer {accessToken}

Input fields used

input.baseUrl                  // API base URL
input.config.accessToken       // OAuth access token
input.config.refreshToken      // OAuth refresh token (for token renewal)
input.config.companyId         // Lightspeed company/account ID

Key Concepts

  • OAuth tokens expire — scripts may need token refresh logic
  • Multi-location accounts use locationId to identify outlets
  • Lightspeed has both Restaurant (L-Series) and Retail (R-Series) — different APIs

Quirks & Constraints

Pricing: Same PLU can only have different pricing via Order Profiles — cannot customize pricing externally. When integrated through Deliverect, pricing changes must be made in Lightspeed directly, not through Deliverect.

No Modifiers: Lightspeed has no concept of Modifiers — all items are treated as Items. To create an item with modifiers, you must create it as a Combo in Lightspeed.

Fees: Fees are treated as Items with open price (positive or negative). The adapter must create fee items instead of using a separate fee structure.

Bundle items: Items that exist only inside a bundle should NOT be required as standalone products in a menu section.


Topic: test_connection

TODO — Verify OAuth token by calling GET /api/account.

Topic: list_remote_outlets

TODO — Fetch GET /api/locations and return location list.

Topic: sync_outlet

TODO

Topic: sync_products

TODO

Topic: order_dispatch

TODO

Topic: order_status_update

TODO