Activity shown in the product preview: Workflow triggered, Task complete, 12 reactions, Credits redeemed.
One member. One wallet. Every surface
A single member identity across web, app, store, kiosk, call centre, and WhatsApp. Earn here, see it there, burn anywhere through native POS, OMS, and CDP connectors.

The same wallet, the right context
Every surface connects to the same ledger. Adding a channel means adding one more read/write path to the wallet members already use.
Web and App
Web SDK in under 10 min with server-side burn for guest carts. App includes native wallet screen with balance, tier, and history in a single view. Push notifications on earn, burn, tier change, and expiry.
Store POS and Kiosk
Phone-lookup or QR scan identifies member in under 300ms at POS. Cashier sees available balance before total. Kiosk enables self-checkout earn and burn without staff. Printed receipt includes balance.
Call centre and WhatsApp
Agent console shows full member history across all surfaces with agent-assisted burn and override audit trail. WhatsApp delivers templated balance check, earn notification, and burn initiation flows.
Sync model
One write, every surface reads
The ledger is the single source of truth. No surface holds a local balance, and earns propagate to opted-in channels within seconds.
01 · event
Member earns at any surface
Purchase at store POS. Cashier confirms the transaction, and phone lookup or QR scan identifies the member in <300ms.
02 · idempotent
POS event hits the ledger
Idempotency key prevents double-write on retry. Sub-120ms server-side acknowledgement.
03 · fanout
Ledger written, every surface reads
Atomic write prevents partial state. Push fans out to opted-in surfaces within 1.5 seconds of the original event.