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

# Troubleshooting Leat

> Fix the common Leat problems: connection, points not earned, rewards missing or unavailable, discounts applied wrongly, product rewards that stopped matching after a POS change, and gift cards.

Work down the section that matches what you see. Most problems come down to one of four things: **Enable Leat** or **Show rewards** off on the store, a reward missing its storekit attributes, a **storekit PLU** that no longer matches the menu, or a customer who is not signed in.

## Connecting

<AccordionGroup>
  <Accordion title="Leat is not in the integrations list">
    Leat is a storekit+ feature. Contact [storekit Support](/docs/getting-started/contact-support) to have it enabled on your account.
  </Accordion>

  <Accordion title="Shops is empty after connecting">
    The credentials connected, but the Leat account has no shops yet or the storekit app in Leat cannot see them. Create the shop in Leat, then reload the store's Leat page and check **Rewards at checkout** → **Edit** → **Shops**. If it stays empty, check the app's permissions in Leat.
  </Accordion>

  <Accordion title="I connected on one store but another store shows nothing">
    The credentials are shared by the whole account, but each store has its own shop and **Enable Leat** toggle, both off by default. Open that store's Leat page, choose a shop under **Rewards at checkout** → **Edit** → **Shops**, turn on **Enable Leat** in the page header and click **Save** in the top bar. See [Connecting Leat](/docs/guides/integrations/loyalty/leat/connect#set-up-each-additional-store).
  </Accordion>

  <Accordion title="The storekit attributes are missing in Leat">
    The **storekit enabled**, **storekit discount type**, **storekit discount value** and **storekit PLU** attributes are created for your Leat account by storekit; there is no button for it in the dashboard. Contact Support and they will add them.
  </Accordion>
</AccordionGroup>

## Points

<AccordionGroup>
  <Accordion title="A customer earned nothing on their order">
    In order:

    1. On the store's Leat page, check **Enable Leat** is on in the page header.
    2. Check the order had a customer email — points need a Leat contact. Guest orders with no email earn nothing.
    3. If **Enable loyalty opt-in** in **Sign-up & opt-in** → **Edit** is on and the customer was not signed in, they must have ticked the opt-in box at checkout. Orders where it was left unticked earn nothing.
    4. Check the order was accepted. Points are sent when the order is accepted, not when it is placed; rejected orders never earn.
    5. In Leat, open the contact by email and look at their transactions. Points can take a minute to show.
  </Accordion>

  <Accordion title="The points earned are wrong">
    Leat works the points out from your earning rules and the order total after discounts. Check the rules for the shop in Leat first. If **Credit unit name** in **Rewards at checkout** → **Edit** does not match a unit in your Leat account, Leat calculates against your default unit — check the spelling on the store's Leat page.
  </Accordion>

  <Accordion title="The earn message shows the wrong word (credits instead of points)">
    Set **Credit unit name** in **Rewards at checkout** → **Edit** to the unit name used in Leat and click **Save** in the top bar. To change or remove the message itself, see [Earn message](/docs/guides/integrations/loyalty/leat/loyalty-points#earn-message).
  </Accordion>

  <Accordion title="I refunded an order but the customer kept the points">
    The refund dialog has a **Loyalty** tick box that was probably unticked. Open the order, find **Earned** on the customer card and click **Reverse** to take the points back now. See [Reversing points](/docs/guides/integrations/loyalty/leat/loyalty-points#reversing-points).
  </Accordion>

  <Accordion title="Points were not earned on a Pay at Table bill">
    Expected — storekit does not record Leat points for bill payments, even though the bill page can show the opt-in box and an earn estimate. Rewards, vouchers and gift cards can still be used on a bill.
  </Accordion>
</AccordionGroup>

## Rewards and Vouchers

<AccordionGroup>
  <Accordion title="Customers cannot see any rewards">
    1. On the store's Leat page, check **Show rewards** in **Rewards at checkout** → **Edit** is on and click **Save** in the top bar.
    2. If **Enable rewards on Pay at Table** in **Gift cards & orders** → **Edit** → **Show advanced** is on, rewards move to the bill — they are not in the basket on purpose.
    3. The customer must be signed in. Guests see **Sign up to claim** rather than rewards.
    4. Each reward must have **storekit enabled** ticked in Leat and be active. Rewards without it are hidden on purpose.
    5. Reload the ordering page — rewards are cached briefly.
  </Accordion>

  <Accordion title="A reward shows but says Not enough">
    The contact's Leat balance is below the reward's cost. Check the balance in Leat.
  </Accordion>

  <Accordion title="A product reward is listed but cannot be redeemed">
    The customer has enough points but no item in the basket matches the reward's **storekit PLU** codes. Usual causes:

    * The codes are wrong or empty. Open the product in the menu editor and compare its **PLU** (or **SKU / PLU**) with the codes on the reward — see [Linking rewards to products](/docs/guides/integrations/loyalty/leat/rewards-and-vouchers#linking-rewards-to-products).
    * You switched POS or replaced the menu, so every product's **PLU** changed. Update the codes on each affected reward in Leat, or send Support the list.
    * The reward has a minimum spend in Leat that the basket does not reach (*Spend £x more to unlock this reward*).
    * The product is out of stock or hidden on the menu.
  </Accordion>

  <Accordion title="The discount is the wrong amount or on the wrong item">
    Check **storekit discount type** and **storekit discount value** against the [Discount Type Reference](/docs/guides/integrations/loyalty/leat/discount-type-reference):

    * `_base` types leave paid modifiers at full price; `_modifiers` types include them.
    * `_single` types discount one item — the cheapest match — even if several are in the basket; use `_multi` to discount them all.
    * Fixed amounts are capped at the item price; the value is a plain number (`3` for £3.00, not `300`).
    * `basket_*` types discount the subtotal, not delivery or service charge.
  </Accordion>

  <Accordion title="A voucher is not accepted">
    Vouchers are shown under **View rewards** for the signed-in contact they were issued to; there is no code box for Leat vouchers. Check in Leat that the voucher belongs to that contact, is unused and not expired, and that its promotion has **storekit enabled** and a discount type.
  </Accordion>

  <Accordion title="Rewards do not appear when paying a bill">
    Turn on **Enable rewards on Pay at Table** in **Gift cards & orders** → **Edit** → **Show advanced** and click **Save** in the top bar. The customer must sign in on the bill page; product rewards only apply if the POS bill lines carry the same PLU codes as the reward.
  </Accordion>
</AccordionGroup>

## Gift Cards

<AccordionGroup>
  <Accordion title="There is no gift card box at checkout">
    Turn on **Enable gift cards** in **Gift cards & orders** → **Edit** (with **Enable Leat** also on in the page header) and click **Save** in the top bar. The same two settings control the box on bills.
  </Accordion>

  <Accordion title="Sorry, that's not a valid gift card">
    Leat did not recognise the code for the connected shop. Check the code for typos, that the card is active in Leat, and that it belongs to a gift card programme the store's shop can access.
  </Accordion>

  <Accordion title="Insufficient gift card balance at payment">
    The balance dropped between the lookup and the payment — usually the same card being used elsewhere at the same time. Nothing was deducted; the customer can apply the card again for the new balance.
  </Accordion>

  <Accordion title="The order failed but the card balance is lower">
    storekit reverses the redemption automatically when an order fails after the card was charged. Allow a few minutes and check the card in Leat. If the balance has not come back, contact Support with the order code and the card code.
  </Accordion>
</AccordionGroup>

## Still Stuck

Contact [storekit Support](/docs/getting-started/contact-support) with the store name, the customer's email, the order code, and for reward problems a screenshot of the reward's attributes in Leat.


## Related topics

- [Leat Overview](/docs/guides/integrations/loyalty/leat/overview.md)
- [Leat Gift Cards](/docs/guides/integrations/loyalty/leat/gift-cards.md)
- [Leat Loyalty Points](/docs/guides/integrations/loyalty/leat/loyalty-points.md)
- [Leat Rewards and Vouchers](/docs/guides/integrations/loyalty/leat/rewards-and-vouchers.md)
- [Connecting Leat](/docs/guides/integrations/loyalty/leat/connect.md)


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