Skip to main content

Discounts Overview

Discounts reward shoppers with dollar or percentage savings that can be redeemed with loyalty points or gifted through campaigns. They can be targeted by audience and location, and redemption data may sync back into AIQ depending on your integration.

Prerequisites

Before managing discounts, ensure you have:

Required Permissions

Discounts can be accessed by staff members with:

  • Marketing

  • Marketing + Analyst

  • Operator

  • Owner

Other Requirements

  • A connected POS and/or Ecommerce integration (recommended)

  • Defined audiences and locations (for targeting)

  • Loyalty points enabled (for point-based discounts)

⚠️ Regulated industries: Always confirm discounts are legal in the state(s) where they will be used before making them available to shoppers.


Discounts Page Overview

Navigate to Marketing > Discounts to manage all active and archived discounts.

Discount Stats

  • Total Discounts: Total number of discounts currently available for redemption (does not include archived discounts)

  • Active Discounts: Total number of active, non-expired, discounts

  • Link Opens: Total number of times discount links have been opened (based on filters)

  • Redemptions: Total number of times discounts that have been redeemed

Discount List Fields

  • ID (Discount ID): Used to tie the discount to AIQ for loyalty tracking. Add this ID to your POS or Ecommerce platform to sync redemption activity.

  • Name: Internal discount name for staff reference only. Not shown to shoppers.

  • Starts On / Ends On: Date and time the discount becomes available - or is no longer available - for redemption.

  • Expiration: Relative expiration window (days or hours), if enabled.

  • Points: Loyalty points required for a shopper to redeem the discount.

  • Total Opens: Number of times the discount link has been opened.

  • Total Redemptions: Total number of times the discount has been redeemed.

  • Order: Priority ranking that determines where the discount appears in the shopper wallet. The table is sorted by order; ties sort by points required to redeem, then by creation date.

  • Last Updated: Most recent date and time the discount was updated by staff.


Discount Actions

Available actions from the Discounts page more (...) menu:

  • Download key stats

  • Download all redemptions (CSV): Downloads all redemption data for external analysis

⚠️ Known limitation: The "Download all redemptions" CSV export currently ignores any date filter applied to the on-screen table. The exported file will return all redemptions across all discounts for the account, regardless of which discount is being viewed or what date range is selected. Workaround: After downloading, manually filter the CSV by the Date column to isolate the date range you need.

  • View archived discounts: Brings you to a table listing any archived / deactivated discounts.


Discount Tags

Discount Tags allow you to:

  • Organize discounts

  • Perform bulk actions

  • Filter discounts more easily from the Discounts overview


Creating Discounts

To create a new discount, see the Discount Builder documentation for step-by-step guidance.


FAQs

How can I make a discount expire X days after it's added to a wallet?

Set a Relative Expiration (days or hours) when building the discount. See the Discount Builder documentation for details.


When does the relative expiration clock start for birthday or audience-based discounts?

The clock starts at the moment the discount first qualifies for the shopper — not when they exit the birthday or audience window. The anchor timestamp is saved at first qualification and is never reset or extended, even if the shopper's audience membership lapses (for example, after their birthday month ends). A shopper who re-enters the audience later will have their expiration measured from the original first-qualification date, not from when they re-qualified.


Can a discount be used more than once?

Yes. Enable this option in: Discount Builder → Redemption → "Can this discount be used more than one time?"

This is especially useful for Tiered Discounts, where shoppers may have enough points to redeem the same discount multiple times.


If a reusable discount expires unused, can it re-issue if the shopper re-qualifies?

No. Once a discount expires for a persona (relative or fixed expiration), it will not re-issue under the same Discount ID, even if the persona re-enters the qualifying audience.


How do I make a discount reset on the 1st of each month (rather than a rolling window)?

The built-in "Reusable after N days" setting uses a rolling window, not a calendar-month reset. A 30-day reusable discount resets 30 days from each individual redemption date — it does not automatically reset on the 1st of every month for all shoppers simultaneously.

To achieve a true calendar-month reset, use this pattern:

  1. Create a Reusable discount with no automatic rolling reuse window (or a short window to handle edge cases).

  2. Drive delivery via a monthly recurring campaign or Flow that launches on the 1st of each month. This controls when shoppers receive the discount — not the discount's internal reuse logic.

  3. Gate delivery with an audience of shoppers who have not redeemed this discount in the current calendar month. This prevents re-delivery to shoppers who already used it.

📌 A monthly campaign alone does not enforce a per-shopper redemption cap. The audience gate in step 3 is what prevents a shopper from receiving the discount a second time in the same month if they already redeemed it.


What's the difference between Tiered Discounts and Custom Discounts?

Tiered Discounts

  • Always visible in the shopper's wallet

  • Typically require points to redeem

  • Show how many more points are needed if the shopper is short

  • Create clear redemption goals for shoppers

Custom Discounts

  • Only appear when a shopper meets specific criteria

  • Based on audience rules

  • Example: A Birthday Discount only appears on the shopper's birthday if the Is their birthday audience is used


How do I push discounts to my POS or Ecommerce platform?

This depends on your provider. See POS/Ecommerce integration documentation for setup instructions.


Does a shopper need to open my campaign to receive a discount?

No. As soon as a persona qualifies for a discount audience, the discount is added to their wallet — regardless of whether they open a campaign.


What happens if I send a discount macro to someone outside the discount audience?

If a persona receives a campaign with a discount macro, they become eligible for that discount — even if they did not meet the original discount audience criteria. The discount will appear in their wallet.


How do I make a discount redeemable only by staff in-store?

To prevent online redemption, hide the redeem button:

  1. Navigate to Settings → Mobile App → App Features

  2. Open the Features tab

  3. Scroll to Points & Discounts

  4. Toggle OFF: "Show 'Redeem' buttons on the discount card"


Where did my discount groups go?

Discount groups have been deprecated and any existing groups have been migrated to Tags.


Why can't I see the Discounts page even though my role has Discounts enabled?

Access to the Discounts page is controlled by two independent gates — both must be satisfied:

  1. Role permission: The staff member's role must have Discounts = Yes (configured in Settings → Members → Roles).

  2. Loyalty package tier: The merchant account must include a Loyalty package at Starter tier or higher. Role permissions alone are not sufficient — if the account's package does not include Discounts access, the page will not appear regardless of role settings.

📌 Also check for a "(Modified)" label next to the staff member's role in Settings → Members. A modified Role View can independently suppress certain pages. If present, reset the role view on that account and re-check access.


If a shopper leaves the audience for a discount, does it disappear from their wallet?

It depends on how the discount reached the shopper's wallet:

  • Audience-based (no direct send): The wallet is computed live. If the shopper exits the qualifying audience, the discount is removed from their wallet on the next wallet load.

  • Directly sent or awarded: If the discount was pushed via a campaign, a Flow, or won through a Prize Wheel, it is "sticky" — it stays in the wallet even after the shopper exits the audience. The only ways to remove it are to archive the discount or let it reach its expiration date.

📌 A sticky discount will still expire on its configured expiration date or relative window — audience exit alone doesn't remove it, but archiving the discount removes it immediately from all wallets.

💡 How these two behaviors connect: If a discount was sent via a campaign macro, it is "sticky" — audience exit won't remove it. Additionally, if the discount uses the "first views" expiration method, the countdown doesn't start until the shopper actually opens their wallet. This means a shopper could hold a macro-sent discount indefinitely if they never open their wallet and no hard end date is set. If you need the discount removed for specific shoppers, the only options are to archive the discount (removes it from all wallets) or let it reach a configured expiration date. To stop future macros from pushing the same discount, duplicate it so it has a new ID.


Need Help?

If you need help setting up or syncing discounts, reach out to AIQ Support anytime via the chat widget in your AIQ Dashboard.

Did this answer your question?