Treating top-ups as income is the classic mistake, and it flatters a month badly: you book the cash now, then book the goods going out later with no matching revenue, and two months in a row look wrong. Recording the top-up as a liability and recognising the sale on redemption is the only version that reconciles.
Alongside stored value, membership cards support discounts and points. The practical warning: pick one mechanism and apply it consistently. Stacking a member discount, a points redemption and a manual round-down on the same transaction produces margins nobody can explain a month later.
Before launching a top-up scheme, decide what happens to balances that are never spent, and whether cards are refundable for cash. Those two questions are commercial and sometimes legal in your country, and the software will follow whichever rule you set.