Participant — overview
The participant is the only profile without a password: phone + SMS code (OTP) login. There's no separate sign-up — the same flow handles both the first visit and a returning one.
What the participant can do today
- Log in/out/refresh by phone (OTP).
- View and edit their own global profile.
- Find an event by a short code and activate their own wallet in it.
- Check their own wallet's balance for an event.
- List every wallet they already have, across every event.
- Pay at a PDV via QR or NFC — read the payload the PDV generated, see the amount, and confirm the payment from their own app, no PIN (login is already the factor).
What doesn't exist yet: topping up their own wallet directly — top-up today only happens cashier-assisted (see Cashier), the participant can't top up on their own —, transaction history.
Where everything lives
- Authentication — OTP, refresh, logout, cookies.
- Profile — name, locale.
- Find an event and activate a wallet — the "type a code and activate my wallet in this event" flow.
- My wallets — see every wallet already activated, in any event.
- Pay via QR or NFC — resolve and approve a payment declared by a PDV.
One wallet per event, never shared
A participant can have several wallets — one per event they took part in — but never two wallets in the same event. Each wallet has completely isolated balance, currency, and history from the others; there's no "global balance" adding everything up across events.