All docs
Customer Experience
Safe Play & Spend Limits
Let customers cap their own spend per day / week / month. Required for UKGC compliance; recommended for free-entry-route operators too.
Safe Play lets customers set their own spending cap — a self-imposed limit per day, week, or month. Required for UKGC-licensed operators and increasingly expected for free-entry-route operators too. Good for the customer, good for your retention metrics, good for your regulatory standing.
How it works
- Customer visits
/account/safe-play(link in their account dropdown). - They set a £ cap per day, week, and/or month. Independent — they can set any subset.
- At checkout, the platform sums their paid order total for that rolling window and compares to the cap. If the new order would exceed it, checkout is blocked with a clear message.
- Caps can be increased immediately. Decreases take 24h to apply — prevents customers from removing the safeguard mid- impulse. (UKGC standard rule.)
Setting a tenant-wide default
Raffle admin → Settings → Default monthly safe-play cap. Apply on signup so brand-new customers automatically have a protective ceiling — they can raise or remove it from their account page.
Most operators set the default at £100/month. High enough not to interfere with normal play; low enough to flag runaway spend before it becomes a problem.
Compliance angle
- UKGC-licensed operators MUST offer this. The rule is in Social Responsibility Code Provision 3.4.1.
- Free-entry-route operators are not legally required to offer it — but the ASA and Gambling Commission both encourage it, and offering it strengthens your defence if a customer ever claims you let them gamble irresponsibly.
What the UI looks like for customers
The /account/safe-playpage renders three input rows (daily / weekly / monthly £ caps) plus three headroom panels showing live spend vs cap with a traffic-light progress bar (“£68 left of £100 this month — 32% used”). After a decrease, an amber banner shows the embargo countdown until the new cap takes effect.
Where checkout enforces it
The payment Worker reads the customer’s caps before creating the payment job. If the new order total would push spend over any of the three rolling windows (24h / 7d / 30d), checkout is refused with HTTP 409 and a clear message: “This order would exceed your self-imposed weekly cap (£50). You have £12.50 left in this window. Adjust at /account/safe-play.”
Free entries don’t count toward the cap. Wallet-credit spend does count (it’s still play). The cap applies to orders.status = paid; failed/refunded orders fall off.
Background: Responsible Play & Self-Exclusion (long-form guide).
