Playbook · Shopify loyalty points expiring / about to expire email
Shopify loyalty points expiring / points about to expire email not sending — after a customer’s points hit an expiry window in Smile / LoyaltyLion / Rivo (or Klaviyo / Flow) and they never got the reminder.
Written for a Shopify owner whose loyalty or email stack should send a points-expiring / points-about-to-expire reminder when a customer’s points burn date approaches in Smile.io, LoyaltyLion, Rivo, a Klaviyo Points Expiring / Points About to Expire / Loyalty Expiry flow, or Shopify Flow after a points-expiry field — and the customer never gets the email — so points expire silently, customers ask “where did my points go?,” and “points expired” tickets that never started with an expiry send. This is a loyalty-app / Klaviyo / Flow points-expiry path playbook — not birthday reward, not VIP tier, not referral invite, not review request, not winback, and not gift card. DIY tools first. Honest limits. No ticket-cut number, no points-expiry-lift claim, no invented case studies.
Nico at Latch AI Ops · Sep 7, 2026 · ~9 minute read
Buy the 72-hour install — $997Birthday reward not sendingVIP tier not sendingReferral invite not sendingReview request not sendingWinback not sendingGift card not sendingMerchant FAQ
01
Points expiring / about to expire mail, not birthday reward, VIP tier, referral invite, review request, winback, or gift card.
A loyalty points expiring / points about to expire email is not a birthday reward and not a VIP / loyalty tier upgrade. Birthday reward / birthday discount is birthday reward email not sending. VIP / Gold / tier upgrade is VIP tier email not sending. Referral / friend invite is referral invite email not sending. Review request / product review is review request email not sending. Winback / We Miss You is winback email not sending. Gift card issue is gift card email not sending. This page is the customer-facing path when a shopper’s points hit an expiry / burn window in Smile / LoyaltyLion / Rivo — or a Klaviyo Points Expiring / Points About to Expire / Loyalty Expiry flow, or Shopify Flow after a points-expiry field — and the reminder email should have fired.
Six ordinary reasons points-expiry mail never lands: no points with an expiry date (or the reminder window is closed), loyalty app or Klaviyo / Flow Draft or paused, two owners fighting over the same event, sender/spam hid a send that did fire, you tested a different email product, or you never built a points-expiry path. Walk them in that order. You already pay for Smile / LoyaltyLion / Rivo and/or Klaviyo / Shopify Flow. You do not need a second SaaS to read their send history.
02
No points with an expiry date, or expiry reminder window not open.
Open Smile / LoyaltyLion / Rivo → Points / Expiry / Customer profile (or the loyalty app’s send log) and/or Klaviyo → Profiles. You need real points that carry an expiry / burn date on the loyalty profile — and a reminder window that has opened (X days before expiry in the store timezone). A birthday date alone, a VIP tier unlock, a referral share, a review ask, a lapsed segment match, or a gift-card issue is not a points-expiry event. Month/day DOB is birthday-reward mail. Points threshold / VIP tag is VIP-tier mail. A share / friend email is referral-invite mail. Days since last order with no purchase is winback.
Common traps: points set to never expire so no expiry event exists; expiry enabled only on some reward pools while the customer’s balance sits in a never-expire pool; reminder window so “14 days before” has not elapsed in store time; exclude discounted / wholesale / staff so every test balance is skipped; profile suppressed / unsubscribed / bounced so they never enter; and testing points-expiry copy without an expiry date live on the balance. Wrong date, wrong silence.
Prove it on a test you own: set a points balance with an expiry date inside the reminder window on a profile you control, then read Smile / LoyaltyLion / Rivo points-expiry logs and Klaviyo flow analytics / Shopify Flow run history. No expiry date / closed window means fix the points expiry settings and window first — not the coupon copy.
03
Smile / LoyaltyLion / Rivo points-expiry paused, or Klaviyo / Flow Points Expiring path Draft.
Open Smile / LoyaltyLion / Rivo → Settings → Points expiry / Expiring points / Points expiration emails. The points-expiry program must be On / Enabled, not paused, and expiry reminder emails must be enabled for the balances that should warn. Open Klaviyo → Flows. Find Points Expiring, Points About to Expire, Loyalty Expiry, Points Expiration, or any flow triggered by a points-expiry date / points-expiring property. Status must be Live, not Draft or Manual. Filters that skip anyone without an expiry date, exclude recent purchasers with a too-short window, or require a tag you never set, silently skip every profile. Open Shopify admin → Flow. Find any “points expiring,” “points about to expire,” or post-points-expiry-date Send email workflow. Status must be Active, not Draft.
One-off Shopify Email or Klaviyo campaigns titled “your points are expiring” are not the automated points-expiry path. Building a campaign does not fire when someone’s burn date approaches. Mixing campaign email with loyalty-app / Klaviyo / Flow automation is how you pay for three products and still send none when points should be warned. If Klaviyo flows never send on any trigger, that is the broader Klaviyo flow not sending playbook. If Shopify Flow never runs, see Shopify Flow not running. This page assumes points with expiry dates exist and asks why the points-expiry path stays quiet.
04
Two owners for the same points-expiry email — loyalty app + Klaviyo + Flow fighting.
Pick one owner for loyalty points expiring / points about to expire emails. If Smile / LoyaltyLion / Rivo owns it, turn duplicate Klaviyo Points Expiring flows and Shopify Flow Send email that hit the same expiry date off. If Klaviyo owns a multi-step points-expiry series and the loyalty app only tracks points / rewards, document that split so nobody “cleans up” the wrong toggle. Running both is how the customer gets two points-expiry emails, contradictory balances, or silence after someone disabled the live owner.
The birthday reward playbook at /birthday-reward-email-not-sending is about DOB / birthday-window mail. The VIP tier playbook at /vip-tier-email-not-sending is about points-threshold / Gold / VIP upgrade mail. This page assumes a points burn / expiry date should have emailed a reminder and asks why that mail is quiet. Fix ownership first, then templates.
05
Sender / spam / promotions hid a send that did fire.
Smile / LoyaltyLion / Rivo send logs or Klaviyo / Flow history can show points-expiring / points-about-to-expire sent while the customer swears silence. Check the From domain / SPF / DKIM the loyalty app or Klaviyo / Shopify uses, Gmail Promotions vs Primary, and whether the subject looks like pure marketing so filters bury a points-expiry warning. Force one test points-expiry email to an inbox you control. Search spam for the exact subject the path uses.
If the log says sent and the inbox is empty after spam checks, fix deliverability — do not buy another loyalty app to paper over a domain that already fails DMARC on order confirmation.
06
You tested birthday reward, VIP tier, referral invite, review request, winback, or gift card.
A birthday reward / birthday discount is birthday reward. A VIP / Gold / tier upgrade is VIP tier. A share / friend invite is referral invite. A post-purchase review ask is review request. A lapsed-customer / We Miss You ping is winback. Issuing a gift card is gift card.
The only honest test for this page: set a real or test profile’s points balance with an expiry date inside the reminder window to an inbox you own, one owner’s points-expiry path Live (Smile / LoyaltyLion / Rivo and/or Klaviyo / Flow), then send log / flow activity + inbox. Anything else is a different product.
07
When to stay DIY vs pay $997.
Stay DIY if you can spend one afternoon on the list above: points with an expiry date exist and the reminder window is open, one owner’s points-expiry path Live, sender/spam checked. Force one live test email to an inbox you own. Read the send log. That is the whole playbook. No agency required. Short answers also live on the merchant FAQ. Related troubleshooting: birthday reward not sending, VIP tier not sending, referral invite not sending, review request not sending, winback not sending, gift card not sending, Klaviyo flow not sending.
Pay for help when the work is not the loyalty-app toggle — it is connecting the stack you already have so every loyalty points expiring / points about to expire reminder that should email is emailed, lead capture is not dying in DMs, and checkout-ready ops paths are one live workflow instead of a paused Smile points-expiry schedule plus a Draft Klaviyo Points Expiring flow you forgot. That is the Latch AI Ops install.
What $997 USD one-time buys: lead capture on the live store, ops alerts in a channel you already check, and a checkout-ready workflow. 72 hours after collaborator access, not after payment. One live Shopify store. Access plus a delivery thread. Store URL collected at checkout. Not a SaaS seat, not a Klaviyo rebuild, not a Gorgias implementation, not a support VA, not a brand or theme job.
Other shops’ public ranges, not testimonials: a Shopify Flow / Klaviyo / points-expiry path install typically runs $500–$2,500. A full ops / post-purchase email consulting block typically runs $2,000–$5,000. $997 is the cheap end of that work, sold as a 72-hour install of three systems — not as a ticket-cut number or points-expiry-volume lift.
What it does not buy: more points redemptions, a lift in points-expiry-email open rate, fewer “where did my points go?” tickets, or a case study. Latch AI Ops has not published customer proof because there are no customers yet. You are buying the install.
Checkout is on Whop. Operator is Nico. United States offer. You can revoke collaborator access after handoff. We do not take owner passwords.