Lightspeed Restaurant K Series API
1.0.0

Lightspeed Restaurant offers a REST API in order to communicate with the data in the system. These APIs are built using the RESTful standards and adhere to the basic verb interactions as defined by the REST standard.

These services are in continuous development and subject to change. Find our versioning policy here.

This is the documentation for version 1.0.0 of the API. Last update on May 1, 2024.

Base URL
https://api.trial.lsk.lightspeed.app

Get Sample Order Update

GET /reservation/api/1/platform/{platform-code}/order-webhook-sample

Returns an example of an order update notification sent to the orderWebhookUrl field.

Path parameters

  • platform-code string Required

    The unique code assigned to the reservation platform.

    Maximum length is 11. Format should match the following pattern: [a-zA-Z0-9_-]+.

Responses

  • 200 application/json

    OK

    Hide response attributes Show response attributes object
    • Values are OPEN, UPDATE, CLOSE, or CANCEL.

    • account object
      Hide account attributes Show account attributes
      • id string

        Legacy account id created by the POS (supplied because older API provides it to 3rd parties)

      • Id of a location (restaurant)

      • name string

        Name of the transaction or the entered tab name

      • A unique identifier of an account, used as an id for sales transactions

      • An ISO-4217 3 letter currency code

      • staffId string

        Id of staff member that created/started and owns the transaction

      • Name of staff member that created/started and owns the transaction

      • openDate integer(int64)

        Timestamp in ms of the moment when transaction was started

      • closeDate integer(int64) | null

        Timestamp in ms of the moment when transaction was completed

      • Paid amount in base currency

      • The total amount of the receipt

      • coverCount integer(int64)

        Number of covers associated with the transaction

      • Amount of tip given by the customer using the payment method

      • Receipt ID of the final transaction, it's printed on the receipt

      • ID of the table

      • Reference IDs to this transaction provided by 3rd parties or our backend

        Hide latestExternalReferences attributes Show latestExternalReferences attributes object
      • Tax calculated for the taxable amount

      • Taxable amount not including any taxes

      • Sum of all surcharges applied to the transaction for 'service', 'cleaning', 'rent'

      • Name of the table

      • Code of a sales profile defining fundamental sales parameter (tag)

      • Name given to the sales profile (tag) during configuration

      • Unique ID of the sales profile (tag) created during configuration

      • originAccountId integer(int64) | null

        Legacy reference id of origin account created by the POS (supplied because older API provides it to 3rd parties)

      • originAccountNumber string | null

        A unique identifier of an account, used as an id for sales transactions

      • type string

        Sale line type within a sales transaction

      • updateDate integer(int64)

        Timestamp in ms of the moment when the complete update was finalized at the POS

      • offset integer(int32)

        UTC Offset of the location (in minutes)

      • The applied discount rate (percentage)

      • transactionLines array[object]
        Hide transactionLines attributes Show transactionLines attributes object
        • id string

          Legacy line id created by the POS (supplied because older API provides it to 3rd parties)

        • Legacy account id created by the POS (supplied because older API provides it to 3rd parties)

        • amount number

          The actual (final) amount the customer will be charged, so regularAmount with modifiers applied

        • Actual amount for one unit of the line item including all markup, markdowns & surcharges

        • quantity number

          Quantity

        • Manually entered item name

        • Name of the item sold

        • Id of the product group that's assigned to the item

        • Name of the product group that's assigned to the item

        • itemId string

          ID of the item at the business location

        • itemSku string

          SKU (stock keeping unit) of the item

        • date integer(int64)

          Timestamp in ms of the moment when the line was registered by the user

        • tags string

          Array of tags associated with the sales line

        • phase integer(int32)

          Course number assigned to the line

        • categories array[object]

          A list of the reporting categories in which the sale is to be aggregated

          Hide categories attributes Show categories attributes object
          • category string

            The reporting category key

          • value string

            The reporting category value

        • Final amount including taxes

        • Taxable amount not including any taxes

        • The line discount amount applied to the line

        • Regular price for one unit of the line item

        • Hide activeTax attributes Show activeTax attributes
          • code string

            Code of the tax as defined in the configuration context

          • Name of the tax as defined in the configuration context

          • rate number(double)

            Tax percentage (e.g. 19% => '1.19')

          • Indicates whether the tax is VAT or Sales Tax

        • modifiers array[object]

          A production instruction entered for a line

          Hide modifiers attributes Show modifiers attributes object
      • paymentLines array[object]
        Hide paymentLines attributes Show paymentLines attributes object
        • id integer(int64)

          Legacy line id created by the POS (supplied because older API provides it to 3rd parties)

        • Legacy account id created by the POS (supplied because older API provides it to 3rd parties)

        • An ISO-4217 3 letter currency code

        • Amount of tip given by the customer using the payment method

        • amount number

          Amount given by the customer to settle the transaction

        • date integer(int64)

          Timestamp in ms of the moment when the line was registered by the user

        • Short code of the payment method the customer used to settle the transaction

        • Name of the payment method used

      • discounts array[object]
        Hide discounts attributes Show discounts attributes object
        • id string

          Discount ID

        • code string

          Discount Code

        • Name of the discount

        • rate number

          The applied rate of the modifier

        • taxFree boolean

          Indicates if the modifier is considered tax free

      • externalReferences array[object]

        Reference IDs to this transaction provided by 3rd parties or our backend

        Hide externalReferences attributes Show externalReferences attributes object
      • consumerRecord object | null
        Hide consumerRecord attributes Show consumerRecord attributes
      • Active course, starts with 0

    • businessLocationId integer(int64)

      The K-Series business location ID.

    • The external platform ID for the restaurant.

      Format should match the following pattern: [a-zA-Z0-9_-]+.

GET /reservation/api/1/platform/{platform-code}/order-webhook-sample
curl \
 -X GET https://api.trial.lsk.lightspeed.app/reservation/api/1/platform/EasyTable/order-webhook-sample \
 -H "Authorization: Bearer $ACCESS_TOKEN"
Response examples (200)
{
  "notificationType": "CLOSE",
  "account": {
    "id": "612329192423425",
    "businessLocationId": "22187801052649",
    "name": "Bar, Table 1",
    "accountNumber": "A35642.1",
    "currencyCode": "USD",
    "staffId": "2823",
    "staffName": "John.Cena",
    "openDate": 1711550514875,
    "closeDate": 1711550589647,
    "paidAmount": 9.1,
    "totalAmount": 9.1,
    "coverCount": 1,
    "gratuityAmount": 0,
    "receiptNumber": "R35642.1",
    "accountObjectId": "22187801053871",
    "taxAmount": 0.6,
    "preTaxAmount": 8.5,
    "serviceCharge": 0,
    "tableName": "Table 1",
    "accountProfileCode": "Reservation",
    "accountProfileName": "Reservation",
    "accountProfileId": "22187801053876",
    "originAccountId": null,
    "originAccountNumber": null,
    "type": "SALE",
    "updateDate": 1711550514914,
    "offset": 240,
    "totalDiscount": 0,
    "transactionLines": [
      {
        "id": "612329192423428",
        "accountId": "612329192423425",
        "amount": 4,
        "unitAmount": 4,
        "quantity": 1,
        "nameOverride": "",
        "itemDescription": "French Fries",
        "accountingGroupId": "22187801051201",
        "accountingGroupName": "Food",
        "itemId": "22187801052783",
        "itemSku": "69",
        "date": 1711550534347,
        "tags": "",
        "phase": 0,
        "categories": [
          {
            "category": "default",
            "value": "Food"
          }
        ],
        "amountWithTax": 4.28,
        "amountLessTax": 4,
        "discountedAmount": 0,
        "grossUnitAmount": 4,
        "activeTax": {
          "code": "STAX",
          "description": "7% State Tax",
          "rate": 1.07,
          "taxIncluded": false
        },
        "subLines": [],
        "modifiers": []
      },
      {
        "id": "612329192423429",
        "accountId": "612329192423425",
        "amount": 4.5,
        "unitAmount": 4.5,
        "quantity": 1,
        "nameOverride": "",
        "itemDescription": "Heinenken",
        "accountingGroupId": "22187801051191",
        "accountingGroupName": "Alcoholic beverages",
        "itemId": "22187801053839",
        "itemSku": "676",
        "date": 1711550553193,
        "tags": "",
        "phase": 0,
        "categories": [
          {
            "category": "something else",
            "value": "Alcoholic beverages"
          }
        ],
        "amountWithTax": 4.82,
        "amountLessTax": 4.5,
        "discountedAmount": 0,
        "grossUnitAmount": 4.5,
        "activeTax": {
          "code": "STAX",
          "description": "7% State Tax",
          "rate": 1.07,
          "taxIncluded": false
        },
        "subLines": [],
        "modifiers": []
      }
    ],
    "paymentLines": [
      {
        "id": 612329192423431,
        "accountId": "612329192423425",
        "currencyCode": "USD",
        "gratuityAmount": 0,
        "amount": 9.1,
        "date": 1711550589607,
        "paymentMethod": "CASH",
        "paymentMethodDescription": "Cash"
      }
    ],
    "discounts": [],
    "externalReferences": [
      {
        "prefix": "TASK",
        "reference": "RN-22187801052649-test4#2ed4c054-53cf-4b03-90f8-58be424ee31"
      }
    ],
    "consumerRecord": {
      "id": "44136",
      "consumerRecordUUID": "8210bb3b-0916-4cd4-8fb5-859fdb5f863b",
      "consumer": null,
      "contactInformation": {
        "firstName": "Evgeny",
        "lastName": "Onegin",
        "companyName": "",
        "city": "",
        "taxIdentifier": "",
        "emailReceipts": false,
        "fullName": "Evgeny Onegin"
      },
      "externalReferences": [
        {
          "key": "test4",
          "reference": "OO.1291.1"
        }
      ]
    },
    "currentProductionPhase": 0
  },
  "businessLocationId": 22187801052649,
  "platformRestaurantId": "123451234",
  "sequenceId": "B35642.15",
  "platformReservationId": "2ed4c054-53cf-4b03-90f8-58be424ee31"
}