Correct about money
you want to know why a member price can never leak to a guest or survive a lapsed membership - the enforcement model, the caches and the audit trail.
The price is recomputed on the server
On every cart calculation, every line’s price is derived again from the product and the buyer standing behind the request. Whatever the product page submitted is irrelevant – a tampered request cannot buy at a price the buyer is not entitled to.
This also makes mid-session changes just work:
- A membership that lapses while a cart sits open simply reprices on the next calculation, with WooCommerce’s standard “cart updated” notice. Orders already placed are never touched.
- A guest who logs in mid-session gets their member price without emptying the cart.
Caches cannot leak member prices
WooCommerce caches the price range of variable products. Member Pricing makes the buyer’s audiences part of that cache key, so the first member to open a product page can never warm the cache with member prices that guests would then be served. Buyers with identical audiences share one cache entry – which is the point.
Every order explains itself
When a member price is applied, the order line records three things: which audience won, its label frozen at purchase time, and what the public price was at that moment. Memberships expire, plans get renamed, levels get deleted – six months later, “why did this person pay 15?” is still answered by the order itself.
When the licence expires
Member Pricing stands down entirely: no member prices anywhere, every buyer sees the public price, and existing orders keep their recorded history. Reactivate the licence and the stored prices come straight back – nothing is lost.