Vendion
    Loyalty & Gift Cards

    Loyalty – Point Expiry

    3 min read#7

    Point expiry protects your balance sheet from ever-growing "liabilities" of un-redeemed points. Vendion lets you configure expiry per restaurant and handles the teardown automatically.

    Setting

    Marketing → Loyalty → Settings → "Expiry (months)"

    • Default: 24 months
    • Minimum: 1 month
    • Practically recommended: 12–24 months (depending on visit frequency)

    How expiry is computed

    Expiry is based on inactivity, not when individual points were earned.

    The rule:

    • Find all earn entries older than the expiry period
    • If the guest has not earned or redeemed after that → points expire
    • Amount capped to the member's current balance (you can never lose more than you have)

    So: a returning guest earning new points "resets the clock" for future expiry.

    Nightly expire check

    Every night an expiry check runs for all active restaurants:

    1. Find all earn entries older than the expiry limit
    2. Sum points not yet redeemed or expired
    3. Cap to member's current balance
    4. Write an expire entry in the member history
    5. Update balance
    6. Log the reason "Expired after N months"

    The job is safe to rerun if a previous run failed – the next run handles anything missed.

    Examples

    Scenario 1 – Active guest

    • Earns 100 pts in January
    • Earns 150 pts in June
    • Earns 200 pts next January (12 months later)
    • Nothing expires – regular activity

    Scenario 2 – Inactive guest

    • Earns 500 pts in January 2024
    • Never returns
    • January 2026 (24 months later): 500 pts expire on the next cron

    Scenario 3 – Partial redemption then inactivity

    • Earns 1,000 pts in January 2024
    • Redeems 300 pts in February 2024 (balance: 700)
    • Never returns
    • January 2026: 700 pts expire (capped to balance)

    Communicating expiry to guests

    Vendion surfaces expiry dates in:

    • Loyalty sidebar (POS): "Your points expire in N days" if under 30 days
    • Public loyalty view: Full history with earn dates and computed expiry

    Automations to warm up guests before expiry:

    Create an automation (Marketing → Automations) that triggers when a guest has more than N points AND last visit is X days ago:

    • 60 days before expiry → SMS: "You have 850 points worth about 85 SEK – use them before [date]!"
    • 14 days before expiry → SMS: "Last reminder – 850 pts expire soon"

    This dramatically increases repeat visits. Treat it as a free sales push.

    Adjusting expiry after launch

    Increasing expiry (e.g. 12 → 24 months):

    • Applies immediately to all future expiry calculations
    • Points already expired are not restored

    Decreasing expiry (e.g. 24 → 12 months):

    • Next expiry check may suddenly expire many points
    • Communicate 60+ days in advance via SMS/email
    • Or: run a manual adjustment first to reset the "clock" for active guests

    Disable expiry entirely?

    Set the expiry period to a very high value (e.g. 999 months). Technically expiry still computes but practically nothing happens.

    Recommendation: Don't disable. Expiry is important to:

    1. Protect balance sheet
    2. Create urgency ("use it or lose it")
    3. Clean dead members from the system

    Troubleshooting

    "Guest complains points disappeared"

    1. Open member profile
    2. Check the history – look for expire entries
    3. Reason shows: "Expired after 24 months"
    4. If the guest has a valid complaint: adjust manually (+N with reason "Goodwill")

    "Expiry job didn't run last night"

    • Contact Vendion support – we'll check the logs and run the job manually if needed.

    This feature is part of Vendion Loyalty.

    Curious how it looks in practice? Read more about the product or book a short demo.

    Was this article helpful?