Tiered Membership Design
GadgetSphere wants its best customers — corporate buyers through GSD and repeat smartphone buyers — to get better prices and more points than a walk-in. The product gives you member classes and everything that can read them; it does not give you a tier engine. Design accordingly.
What a class is
A member class is a code, a name, a status, optional images and aliases, and the members and labels
linked to it (Membership Admin → Member Class; bl_crm_membership_class_hdr). A member has exactly
one class, set on the member form, changed on the member form, imported from the CSV’s
MEMBER CLASS column, or given to counter-created members by the POS default class. Nothing in
MembershipClassService or the membership job processors reads spend, visits or points to change
it.
What reads a class
| Consumer | Effect |
|---|---|
| Pricebook price-set header rule Member Class | The set applies only to members of the picked classes — this is where “GOLD pays RM 2,999, STANDARD pays RM 3,200” and “GOLD earns 2 points per ringgit” live, as a discount / sales-price treatment and a POINT treatment |
| Commission Scheme header rule Member Class | The scheduled membership-points run and the sales-commission run apply the scheme only to those classes |
| Voucher Management doc-header rule Member Class | A voucher redeemable only by GOLD members |
Birthday gift schedule (MEMBER_BIRTHDAY_GIFT_PROCESSOR, member_class_guids) | Points or vouchers on the birthday for the named classes only |
| CP Commerce Admin | Default membership class for portal sign-ups; a spending limit per member class |
POS General POS_DEFAULT_MEMBERSHIP_CLASS | The class given to members created at the counter |
The Member Label rule is different: on the price book the counter calculator ignores it, and on a commission scheme it passes for any member with any label. Put tier logic on the class.
The GadgetSphere design
- Two classes,
STANDARDandGOLD. - One price book, selected as the POS default at every branch, with two price sets: Retail points (Member Class = STANDARD, POINT treatment 1 per ringgit) and Gold (Member Class = GOLD, a discount treatment on the laptop and smartphone categories and a POINT treatment 2 per ringgit).
- A monthly review: the
member-reward-redemptionroute in Sales Report or the APIlines/querygives points earned per card for the period; the accounts clerk changes the class of members over the agreed threshold on the member form. This step is a person, not a job. - A birthday gift schedule for
GOLDonly — 500 points valid for 6 months.
What does not happen
- No rolling-12-month qualification, no automatic upgrade or downgrade, no grace period, no “lifetime status after five years”, no anniversary reward — the old page’s YAML for these described no screen and no processor.
- No “tier multiplier” as a member attribute; the multiplier is a POINT treatment on a price set that has a Member Class rule.
- No per-class booking priority, complimentary-service counters or communication sequences.
- No physical card or e-mail is produced when a class changes; the change is a field on the row, recorded in the Audit Trail.