POS loyalty redemptions saved without reward_id / catalog discount when Open Tickets is off

Hi,

We run 9 locations on one Square account, all on Square Register with Square Point of Sale 7.30. At some locations, loyalty rewards redeemed in POS are saved on the order as plain discounts with no link to the reward. Square’s reports then count them as “manually entered discounts.” Turning on the Open Tickets add-on in the device mode appears to fix it. We’d like to know whether this is expected behavior.

What we see on affected orders (Orders API + Loyalty Events API):

  • The discount has the reward tier’s name and percentage, but no catalog_object_id, pricing_rule_id or reward_ids.
  • order.rewards is empty, but customer_id is set.
  • A CREATE_REWARD event (source SQUARE, with location_id, no reward_id, no order_id) is created about 5-6 seconds BEFORE the order’s created_at.
  • A REDEEM_REWARD event with order_id but no reward_id is created 1-5 seconds AFTER the order closes.
  • The correct points are deducted, so the customer is not affected. Only the order data and reports are.

On normal orders the discount has catalog_object_id, pricing_rule_id and reward_ids, and order.rewards is filled. CREATE_REWARD has reward_id and order_id, and REDEEM_REWARD has reward_id.

Why we think Open Tickets is involved:

  • Device modes with Open Tickets turned on record rewards normally.
  • On one location, we turned on Open Tickets in the device mode (Dashboard > Device management > Modes > Add-ons > Open Tickets) on Oct 14 at 10:42 AM PT. The last unlinked reward was at 9:59 AM. From then on, every reward was linked, including cash sales with a customer attached. Nothing else changed: same register, same app installation, same device code, and no catalog edits.
  • We turned it on for two more locations on Oct 26. One of them has recorded every reward normally since. The other hasn’t had enough reward sales yet to tell.

Things we ruled out:

  • App version: all registers are on 7.30.
  • Catalog: the reward tiers, pricing rules and discounts are available at all locations.
  • Re-saving a mode without turning on Open Tickets did not change anything.

One exception: one location has Open Tickets off in its mode, but its rewards are linked. Looking at the history, every location used the unlinked pattern at first and switched to linked on a specific date. Four of them switched on the same day (Jan 8, 2026).

This looks similar to an earlier thread: SearchLoyaltyRewards returns abnormal response for a single merchant

1 Like

Could you share two recent Order IDs here?

  • Open Tickets enabled: a redemption where the reward linkage is present.
  • Open Tickets disabled: a redemption where the discount is present but the reward linkage is missing.

If possible, examples from the same Register and location would make the comparison more controlled.

I am going to look into this