email us610-331-0013
Back to Manual

Rewards Program Reset

Some shops run their rewards program like an open tab that never closes — points just keep piling up year after year. Others prefer to clear the slate on an annual basis, the same way a credit card company expires unused miles. If you're in the second camp, the Rewards Program Reset module is built for you.

It's a paid add-on. You've got two ways to pay for it:

  • One-time fee — pay once, own it outright, no recurring charges ever.
  • Annual fee for five years — a smaller yearly payment spread across five years, billed each January.

Same module either way; the only difference is how the bill shows up. Pick whichever fits your cash flow.

If you don't see it in your TORO, you don't have it yet — reach out to support and they'll get you a quote and switch it on. Once it's active, you'll find a new Rewards Program Reset button at the bottom-left of the Manage Rewards Program screen.

What It Actually Does

The reset zeroes out every customer's rewards-points balance in a single pass. After it runs, every account starts fresh at zero points. It does not touch punchcards, membership tiers, coupons, or any other customer data — just the points balance.

The important part: no customer history is destroyed. Under the hood, every account that had points gets a compensating ledger entry that brings the balance to zero. That means the run is fully reversible from inside the POS — more on that below.

The Settings Dialog

When you open Rewards Program Reset, you land on a hub with two choices: New Reset and Reset History. Click New Reset to set up the schedule, preview the impact, and run a reset; click Reset History to review past runs and roll one back. A ← Back button returns you to the hub from either screen. The four things you can do are:

Annual Schedule (optional)

Pick a month and day if you want the reset to fire itself automatically once a year — for example, January 1 if you want a clean calendar-year start, or July 1 to match your fiscal year. Hit Save Schedule and you're done. The dialog will show you the next four upcoming run dates so you can sanity-check what you just signed up for.

The schedule is genuinely optional. If you skip it, the reset only runs when you press the manual button. A lot of shops prefer it that way — they want eyes on the moment it happens.

If you set a schedule and later change your mind, the Clear Schedule button stops the auto-fire without affecting anything else.

One quirk worth knowing: you can't pick February 29. Pick February 28 or March 1 instead.

If you ran the reset now

This is the dry-run preview. It shows you two numbers in real time:

  • Customers affected — how many accounts currently have a non-zero points balance
  • Points zeroed — the total points that would disappear from those accounts

It's a sanity check. If the numbers look wildly off — way more or way fewer than you expected — that's worth investigating before you pull the trigger. Hit Refresh Preview if you've made changes since opening the dialog. Want the names behind the numbers? Click See impacted customers → to drill into the exact list of accounts that would be zeroed.

Manual run

The big red Run Zero-Out Now button runs the reset immediately. Before anything happens, you get a confirmation that tells you exactly how many accounts and how many points are about to be zeroed. Read it. Make sure those numbers match what you intended.

The run itself uses an animated progress dialog and works through customer accounts in chunks. Larger stores might see it take a minute or two; it's safe to leave it alone while it works.

If something goes wrong partway through — power blip, network hiccup — the next POS restart will pick up exactly where it left off. You don't end up with half the customers reset and the other half not.

Reset History

Every reset that's ever run on your store is listed here, with the date, the trigger (manual vs. scheduled), and the number of accounts affected.

This is also where the "fully reversible" part lives. Select any past run and hit Delete Selected Run. That removes the compensating ledger rows for that run, which restores every affected customer to the balance they had right before that reset.

There's a catch worth understanding. If customers earned or spent points between the reset and the rollback, those transactions stay on the books. So after a rollback, an affected customer's new balance is:

(balance before the reset) + (points earned since the reset) − (points spent since the reset)

In practice, that means rollbacks are most useful when caught quickly — same day, ideally. The longer you wait, the more transactions accumulate that you'll be reconciling against.

How the Annual Schedule Actually Fires

Worth knowing for any owner running multi-station shops: the scheduled auto-fire happens on the main station during startup, and only on or after the scheduled date. So if your main station was off on January 1, the reset runs the next morning when you boot up. It doesn't fire twice, and it doesn't fire from a register station.

Once it finishes successfully, the system automatically advances the schedule one year forward, so you don't have to think about it. (If a run fails partway through, the schedule does not advance — the next startup picks up the unfinished work and only moves the date forward once the run completes clean.)

When to Run It

There's no universal right answer. Common patterns:

  • Annual calendar reset — every January 1, fresh start with the year. Easy to remember, easy to communicate to customers.
  • Fiscal year reset — match it to your own accounting year. Cleaner books.
  • Promotional event — reset right before launching a new loyalty structure or membership tier system, so everyone starts the new program from zero.
  • Never — plenty of shops never reset and that's perfectly fine. The module is there if you want it, not because you have to use it.

What to Tell Your Customers

If you do run an annual reset, give your regulars a heads-up. A simple "points reset every January 1, so use 'em or lose 'em" line in your loyalty program description is enough. Surprise resets generate complaint phone calls; announced resets generate redemption traffic in the weeks leading up to them — which is good for business either way.

What This Module Is Not

A few clarifications that come up:

  • It's not a way to delete customer accounts or transaction history. Those are untouched.
  • It's not the same as expiring individual coupons. Coupons have their own expiration handling.
  • It's not punchcard reset. Punchcards keep their progress through a points reset.
  • It's not membership tier reset. Tiers are assigned manually and stay that way.

If you want any of those behaviors, that's a separate conversation with support.