Get Price Rules for Retail API

quotedquoted Member Posts: 20
My client has activated a Price Rule in Lightspeed Retail (10% discount).
How can I get the discount price for products linked to this Price Rule in the Retail API?

When I get a product with this Price Rule (+ all relations loaded), the default price is still shown, without any discount.



  • Adrian SamuelAdrian Samuel Moderator, Lightspeed Staff Posts: 654 moderator
    Hey @quoted!

    A Discount Rule only mutates the item price at the point of sale and never actually changes the default price of the item.

    If you add an item with a price rule to a sale and do a GET request (doesn’t have to be a completed sale), you’ll note that you’ll see the default price on the item as the same but there is a key in the json called displayableUnitPrice found at Sale.SaleLines.SaleLine.displayableUnitPrice.

    This will contain the new line price for the affected item

    Adrian Samuel

    Software Developer

    Lightspeed HQ

  • quotedquoted Member Posts: 20
    Hi Adrian,

    OK, that already clarifies something.

    Is there another option to add a discount to one or more products that can be used in the API without needing to create a sale?

    The intention is to show a sale price on the webshop, next to the original price.

  • quotedquoted Member Posts: 20
    Could anyone look at this please? Thanks.
  • jamesratcliffejamesratcliffe Administrator, Lightspeed Staff Posts: 160 moderator
    edited August 2018
    @quoted You could try a price level.

    First, you would create a price level for your webshop using the PriceLevel endpoint.

    Then you can set that price level for each item (as needed). Assuming the price level is called "Webshop", this is how you would set it on an item:
    PUT /API/Account/{accountID}/Item/{itemID}.json
        "Prices": {
            "ItemPrice": [{
                "amount": 9.00,
                "useType": "Webshop"

    James Ratcliffe
    Lightspeed HQ
  • quotedquoted Member Posts: 20
    Hi James,

    Thanks for your answer.

    I'm actually looking for a solution in the other direction (Lightspeed > Webshop). I'll try to explain more in detail.

    My client (the shop owner) should be able to discount one or more products in Lightspeed. For now, this was done in Settings > Price Rules. But this way the webshop cannot get the discounted prices through the API (see above).

    My client could create a PriceLevel "Discount", as you suggest.
    Is it easy to change a certain price level for one or more products (batch) in Lightspeed? For example "10%" off of the Default price?


  • jamesratcliffejamesratcliffe Administrator, Lightspeed Staff Posts: 160 moderator
    There's no direct way to set a custom pricing level through the frontend, but there is a workaround they could use.

    1. Create a "Discount" pricing level.
    2. Export their items with the current MSRP.
    3. Import the "Discount" prices as the MSRP (because they can't import the custom price directly).
    4. Go to Settings > Pricing Levels > Discount.
    5. Click Reset Pricing Level and select MSRP. The prices they just imported will be copied to the "Discount" pricing level.
    6. Re-import the old MSRP prices that they exported in step 2.

    Another options would be to set the Discount pricing level prices through the API.
    James Ratcliffe
    Lightspeed HQ
Sign In or Register to comment.