The festival cashless system, end-to-end on real NFC hardware — register a band, load cash, let a vendor charge it, hand unspent cash back at the desk, and watch the organizer's report add up. Running against dev (staging); production is untouched.
dev-api.carrottickets.com.Five separate roles, each with its own screen. They are deliberately distinct — a reseller is an outside outlet, a cashier is the organizer's own money desk.
Organizer — owns the event. Sees every cashless transaction, vendor and cashier from the dashboard.
Reseller — an outside outlet (think Shoprite) that sells tickets and helps top up before the event.
Cashier — the organizer's in-venue money desk: tops up bands and cashes them out.
Vendor — a stall inside the event (the bar, food) that charges bands for what people buy.
Gate — binds a band to a ticket and checks people in.
Admin — Carrot. Sees everything, across every event.
Everything you need to sign in — the POS app (on the phone) and the organizer dashboard (on the web).
| Role | Login code | PIN | What they do |
|---|---|---|---|
| Reseller ticket outlet | 597081 | 482913 | Register a band, sell tickets, top up (pre-event) |
| Cashier money desk | 502413 | 618240 | Top up and cash out a band at the venue |
| Vendor "Test Bar" | 640220 | 551282 | Charge bands (tap-to-pay), see takings |
| Gate entry | 380443 | 739154 | Bind band, tap-to-check-in, balance |
| Field | Value |
|---|---|
| URL | dev-manage.carrottickets.com sign in through the Cloudflare Access screen first |
| cashless-test-1786118543146@example.com | |
| Password | CarrotDemo2026! |
One physical band is a funded ticket. The balance lives on the server — the tag only carries its UID, and every tap is an atomic move that keeps the books balanced (float = wallets + vendors + fees). After every top-up, purchase or cash-out the app shows the new balance, so the attendee can see exactly what's left.
Register a band — a blank tag becomes a ticket + wallet.
Top up — load cash onto the band (reseller or cashier).
Vendor tap-to-pay — charge debits the attendee, credits the vendor.
Cash out — the cashier hands back unspent cash; the balance is debited.
Left balance — every action ends on a screen showing what's left.
Organizer report — circulated, spent, withdrawn, and left behind.
502413 / 618240) and tap. The organizer's report + staff setup (Act 4) are live on the dashboard.dev-api.carrottickets.com.