Store Builder

Loyalty Points app

Shoppers earn points on their orders and redeem them for single-use discount codes — you set the rates, everything else runs itself.

Manage → Apps has a Loyalty points card on the Built-in shelf. Install it, enable the program, and your store has a complete points system: shoppers earn points on their orders, see their balance on the account page, and redeem points for discount codes themselves — no per-redemption work on your side.

How points move

  • Earning happens when an order reaches the moment you pick. The default is Delivered: move an order there in Manage → Orders and that order's customer is credited at your earn rate (default: 1 point per 1.000₫); the Order confirmed moment lives in the settings below. Guests earn too: the points wait on the customer record keyed by the EMAIL they typed at checkout, and whoever registers an account with that email finds them waiting — one more reason to invite the signup. Cancelling an order that earned takes back exactly the points it granted, even if you changed the rate in between; cancel by mistake and reinstate, and the points come back by themselves. Edit an order that already earned (remove a line, change a quantity) and its points re-settle to the new total — a partial refund never needs you in the points ledger.
  • Redeeming mints a discount code. On the account page the shopper picks how many points to convert and immediately gets a DIEM-XXXXXXXX code — a single-use discount worth your redeem rate (default: 1 point = 100₫), with no expiry. They type it at checkout like any other code; it also shows up in Manage → Discounts like any other code, so you can always audit it.
  • The points book is a ledger. Every change — earn, cancellation reversal, redemption, your manual adjustment — is a row with a reason and a date. Shoppers see their own history on the account page; you see the full version (with order ids) through the manage API.

Configuration — from simple to full

The app's screen starts with four basics:

  • Enable the points program — turning it off stops earning and redeeming immediately; existing balances stay.
  • Spend per point — a shopper earns 1 point per this much spent, floored (a 45.900₫ order at 1.000₫ per point → 45 points).
  • Value per point — each point takes this much off the minted code.
  • Minimum points per redemption — keeps micro-redemptions away.

The two rates being independent is deliberate: "1 point per 1.000₫, each point worth 100₫" (a 10% effective rebate) is the ordinary shape of a points program.

Deeper stores get five more dials:

  • Earn points when — pick the moment: Order delivered (the safe default) or Order confirmed (shoppers see points immediately — the shape smaller stores prefer). Cancelling refunds exactly what the order earned, in either mode — even if you changed the rate in between.
  • Signup bonus — welcome new members with a grant, exactly once per account (a double submit never grants twice). Zero grants nothing.
  • Member tiers — build a ladder over lifetime earned points (spending never demotes anyone): each tier has a name, a threshold and an earn multiplier. Example: Silver from 0 (×1), Gold from 500 (×1.5), Diamond from 2000 (×2) — a Gold shopper's 100-point order credits 150. Shoppers see their tier on the Points card. Leave it empty until you need it; everyone earns at ×1.
  • Points expire after (months) — points held too long lapse, which gives shoppers a reason to come back. The accounting is fair: every spend always consumes the OLDEST points first, so only what was truly forgotten expires; each lapse is its own ledger row, and the Points card warns 30 days ahead ("70 points expire within the next 30 days"). With the points email on, a daily sweep also MAILS the warning — even to shoppers who have not visited in months — once per customer per lapse window, never a drumbeat. Zero means points live forever — the default, and right for most programs starting out.
  • Email shoppers about their points — sends on earning from an order, on a redeemed code (the code rides in the mail, so a closed tab loses nothing), on the signup bonus, and on points about to expire (the daily sweep's warning above). Needs a mail channel — the store's Mail app or the platform default; cancellations and expiries send nothing, keeping the inbox good-news-only.

The Points element

With the app installed, the builder's element panel gains a Loyalty points row under Add-on, holding Points — drop it on the account page (or anywhere).

  • Signed-in shoppers see the balance with their tier badge, a progress bar ("N more points to reach…"), the earn line ("Spend 1.000₫ = 1 point · Gold ×1.5"), a redeem box with quick-pick chips and a live money preview that follows every number typed, a Copy code button on the minted code, and their history.
  • Signed-out visitors are not dead-ended at a prompt: under your sign-in line (the wording is yours), the card pitches the program — "Sign up and get 50 points" plus the earn rate — exactly what convinces someone to create the account.
  • If you later disable the program, the element hides itself entirely rather than advertising a feature that no longer answers.

That row holds a second element: the Points prompt — one small line you drop beside the checkout button in the cart drawer (or on the checkout page). It reads the live cart: members see "This order will earn ~45 points" (their tier multiplier included), visitors see the same number as a reason to sign in, and it follows every quantity step. An empty cart gets the earn rate; a disabled program hides it, like the Points card.

Reading and adjusting one customer's points

Open Manage → Customers → one person: with the app installed, their page carries a Loyalty points card — the balance, the full history (each earn row keeps its order id), and an Adjust points box: a ± amount with a note ("broken-order compensation"…), and every adjustment lands in the shopper's own history as its own row.

Uninstalling

Uninstalling deletes nothing — the ledger and the settings stay, and reinstalling brings everything back. But the uninstall is refused while the program is still enabled: turn it off first, so shoppers are never earning points behind a store whose Apps screen says the app is gone.

Updated 02/09/2026