Skip to content
&Dolphin
Live

Loyalty Point System

A point engine that treats earning, spending, granting and refunds as one ledger

Period
2025.11 Ongoing
Progress
75%

Overview

A point system an online store calls at checkout. Earning, spending, granting and refunds all land in one ledger, and admins see points, sales, members and branches together in a dashboard.

Every transaction is kept as a row in one of seven kinds — spend, earn, refund, cancel, no-earn, cash and distribution. A single purchase does not stop at the buyer: it cascades to the referrer, the influencer and the system, at rates set per branch. Received points mature before they can be spent, deductions follow a fixed order, and shipping fees are consumed first. Granting points takes a request and then an email approval from the person responsible; unapproved requests expire. Admins work through history overall and per branch, manage members, admins and influencers, adjust point settings, and export to Excel.

Live. Improvements land as they are requested.

Stack

AreaTechnologyWhy we chose it
BackendJava 17 · Spring Boot 3.4 · JPAFor a ledger, transaction boundaries are everything — the cascade had to close in one.
FrontendReact 18 — separate admin and member appsAdmins and members look at entirely different things, so the apps are separate.
DataMySQL 8 · RedisIt handles money and balances, so a relational store is the premise.
IntegrationApache POI · email approvalAdmins reconcile in Excel and approve grants by email — that is how the work already ran.

Roadmap

  1. Ledger design

    Done2025.11.01 – 2025.12.15

    Transaction kinds, deduction order, maturation rules

  2. Storefront integration

    Done2025.12.16 – 2026.02.10

    Checkout-time earn/spend API with audit records

  3. Admin dashboard

    Done2026.02.11 – 2026.03.31

    Per-branch history, settings, Excel export

  4. Operation

    In progress2026.04.01 – Ongoing

    Live. Improvements land as they are requested

Loyalty Point System | &Dolphin