> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stackone.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Lightspeed Retail X-Series Webhook Setup Guide

> Configure Lightspeed Retail X-Series to deliver events to StackOne.

## Prerequisites

The connector should already be set up, with a Connector Profile and a Linked Account. See [Getting Started](https://docs.stackone.com/connectors/lightspeed.md#getting-started) on the Lightspeed Retail X-Series connector page.

## How Lightspeed webhooks are set up

StackOne creates and manages the Lightspeed webhook subscriptions automatically. When you enable an event in StackOne, StackOne registers one webhook for that event type in the connected store, and deletes it again when the event is turned off or the account is disconnected. There is nothing to configure in Lightspeed and no URL to paste.

**1. Select the webhooks scope**

StackOne creates and deletes the subscriptions through the Lightspeed API, which needs the `webhooks` scope. Make sure `webhooks` is among the scopes selected in the StackOne Connector profile before the account is connected, or creating the subscription fails.

**2. Enable the events you need**

Enable the Lightspeed events you want in StackOne. Each enabled event gets its own subscription, and events arriving from the store are matched to the linked account by its store subdomain.

## Available webhook events

The following Lightspeed events can be enabled. Only events enabled in StackOne are subscribed, so Lightspeed does not deliver the others.

**1. Product and inventory events**

Events related to the product catalog and stock levels.

<ul>
  <li>**Product Updated** (`product.update`) — Fired when product details change, such as name, description, SKU, price book, brand, supplier or tax</li>
  <li>**Inventory Updated** (`inventory.update`) — Fired when inventory quantities change through sales, adjustments or consignments. Only inventory-tracked products trigger it</li>
</ul>

**2. Sale events**

Events related to sales.

<ul>
  <li>**Sale Updated** (`sale.update`) — Fired when a sale is created or modified. Layby and account sales can fire it more than once</li>
</ul>

**3. Customer events**

Events related to customer records.

<ul>
  <li>**Customer Updated** (`customer.update`) — Fired when a customer is created, modified or deleted, including account balance changes</li>
</ul>

**4. Consignment events**

Events related to stock orders, transfers and stocktakes.

<ul>
  <li>**Consignment Sent** (`consignment.send`) — Fired when consigned products are dispatched to their destination (stock transfers only)</li>
  <li>**Consignment Received** (`consignment.receive`) — Fired when consigned items are received into stock through a supplier order, stock transfer or stocktake</li>
</ul>

**5. Register events**

Events related to register sessions.

<ul>
  <li>**Register Closure Created** (`register_closure.create`) — Fired each time a register session is closed and reconciled</li>
</ul>

## Delivery format

Details of how Lightspeed delivers events to StackOne.

**1. One event per request**

Each request carries a single event. The body names the event in `type` and the store in `domain_prefix`, and carries the changed record in `payload` as a JSON-encoded string. StackOne routes each delivery to the matching event and returns HTTP 200 so Lightspeed does not retry.

## Verify

Your Connector should now be able to receive and process events. Try triggering an event and you should see an Event appear in the Connector logs.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.