Finance Overview
Platform revenue, gross ticket volume, and wallet float — kept separate on purpose
Platform Revenue
—
commission + subscriptions + PingSafari + PingKid alerts + POS
Gross Ticket Volume (GMV)
—
organizer revenue — not ours
Total Float Held
—
wallets + balances owed to others
Commission Earned
—
from organizer withdrawals
Platform Revenue — money CirclePing actually earns
Gross Ticket Volume (GMV) — organizer money flowing through us, not counted as revenue
This is ticket sales revenue that belongs to organizers. Our cut of it is already counted in Commission Earned above — see full breakdown under Ticket Revenue.
Wallet Float & Outstanding Balances — money CirclePing holds on behalf of users, organizers & vendors
| Float Type | Top-ups In (period) | Outstanding Balance |
|---|---|---|
| Loading… | ||
Total Payouts (period)
—
organizer + vendor withdrawals, completed
Pending Payouts
—
organizer + vendor, awaiting completion
Transactions
M-Pesa payments & wallet top-ups
Total
—
all time
Completed
—
KSH —
Pending
—
awaiting
Failed
—
not completed
All
Completed
Pending
Failed
All types
Tickets
Subscriptions
PingKid Wallet
Event Wallet
Safari Lodge
Unclassified
Page 1
| Transaction ID | M-Pesa ID | Amount | Status | Type | Phone | Message | Date | |
|---|---|---|---|---|---|---|---|---|
| Loading… | ||||||||
Users
All registered CirclePing accounts
Total Users
—
registered
Premium
active subscriptions
PingKid Active
—
with wallet balance
PingWork
—
managers
Referred
—
signed up with an invite code
| Display Name | Provider | Invite Code | Premium | PingKid Balance | Last Login | Actions | |
|---|---|---|---|---|---|---|---|
| Loading… | |||||||
PingKid Billing
Wallet balances · notification charges · KSH 5 per alert
Users w/ Wallet
—
active wallets
Total Wallet Balance
—
KSH across all wallets
PingKid Premium
active subscribers
| Wallet Balance | Alerts Remaining | PK Premium | PK Expires | Actions | |
|---|---|---|---|---|---|
| Loading… | |||||
Emergency Zones
Police stations · Hospitals · Unsafe areas across Kenya
Total Zones
—
all cities
Police Stations
—
active
Hospitals
—
active
Unsafe Areas
—
flagged
| Name | Type | City | Risk | Coordinates | Radius | Status | Actions |
|---|---|---|---|---|---|---|---|
| Loading… | |||||||
Organizations
PingWork-enabled companies & workplaces
Total Organizations
—
registered
Active
—
with activity
| Name | Type | Location | Contact | Members | Created | Actions |
|---|---|---|---|---|---|---|
| Loading… | ||||||
Schools
PingKid-enabled schools & institutions
Total Schools
—
registered
Active
—
operational
| School Name | Code | City | Type | Staff Count | Bands Linked | Created | Actions |
|---|---|---|---|---|---|---|---|
| Loading… | |||||||
Advertising Leads
Businesses applying to advertise with CirclePing
New
—
awaiting a call
Contacted
—
in conversation
Qualified
—
worth closing
Won
—
signed
| Business | Contact | Budget | Markets | Status | Received | |
|---|---|---|---|---|---|---|
| Select Advertising Leads from the nav to load. | ||||||
Events
Manage events, approvals, and ticket revenue
Pending Review
—
awaiting approval
Upcoming
—
approved events
Live
—
happening now
Total Tickets Sold
—
across all events
All Events
| Name | Category | Date | Venue | Tickets | Revenue | Featured | Status | Actions |
|---|---|---|---|---|---|---|---|---|
| Loading… | ||||||||
Ticket Revenue
Gross ticket sales across all events — this is GMV, not platform revenue (see Finance Overview)
Total Tickets Sold
—
across all events
Total Ticket Revenue (GMV)
—
organizer revenue, not CirclePing's
Total Wristband Orders
—
across all events
Revenue by Event
Organizers
Wallet balances and withdrawal management
Total Organizers
—
Total Wallet Balance
—
KSH held across organizers
Pending Withdrawals
—
| Name | Wallet Balance | Events | Actions | |
|---|---|---|---|---|
| Loading… | ||||
Live Events
Check in attendees, resolve ticket issues, and fix finance problems for any ongoing event
Live Now
—
Tickets Sold (live events)
—
| Event | Organizer | Venue | Date | Tickets Sold | |
|---|---|---|---|---|---|
| Loading… | |||||
Organizer Payouts
Organizer wallet withdrawals via M-Pesa B2C
| Organizer | Gross (KSH) | Fee | Net (KSH) | Phone | Status | Date |
|---|---|---|---|---|---|---|
| Select Organizer Payouts from the nav to load. | ||||||
PingKid Watch
Watch orders to deliver, subscriptions, and what the watch earns
To deliver
—
paid orders not yet shipped
Watches sold
—
—
Subscription revenue
—
lifetime, M-Pesa and wallet renewals
Subscriptions
—
—
Watches are sold at cost (KSH 4,000), so sales show as revenue with no margin. Courier fees are paid to the courier and never pass through CirclePing.
Orders
| Date | Order | Customer | Deliver to | Watches | Paid | Payment | Delivery |
|---|---|---|---|---|---|---|---|
| Loading… | |||||||
Subscriptions
| Watch | Child | Status | Auto-renew | Parents |
|---|---|---|---|---|
| Loading… | ||||
Subscription payments
| Date | Watch | Months | Amount (KSH) | How | Status |
|---|---|---|---|---|---|
| Loading… | |||||
CirclePing Wallet
Everything CirclePing earns — events commission, subscriptions, PingSafari, PingKid alert fees — and payouts of it
Lifetime Earned
—
all sources — see breakdown below
Withdrawable Balance
—
commission + alert fees + POS — paid via M-Pesa
Lifetime Withdrawn
—
Commission Pending Collection
—
on organizer balances not yet withdrawn — not counted as earned
Subscriptions and PingSafari settle straight into CirclePing's M-Pesa operating account, so they count toward Lifetime Earned but not the withdrawable balance — see the breakdown below.
Revenue by Source — lifetime
Withdrawal Destination
M-Pesa number CirclePing withdrawals are paid out to
POS Commission Rates
Global default CirclePing takes on every canteen/event POS sale — added on top of the sale, not deducted from it. Override per school, organizer, or vendor from their own section.
| Type | Source | Amount (KSH) | Status | Date | dcash Ref |
|---|---|---|---|---|---|
| Loading… | |||||
Vendor Payouts
Event vendor (stand) balances and M-Pesa B2C withdrawals
Total Vendors
—
Total Vendor Balance
—
KSH held across vendors, awaiting withdrawal
Pending Withdrawals
—
Vendors
| Name | Event | Balance | Status | POS % | |
|---|---|---|---|---|---|
| Loading… | |||||
Payout Ledger
| Vendor | Amount (KSH) | Phone | Status | Date |
|---|---|---|---|---|
| Loading… | ||||
Promo Codes
Create and manage discount codes for subscription plans
Total Codes
—
All time
Active
—
Currently usable
Total Uses
—
Redemptions
Est. Discount
—
KSH discounted
| Code | Discount | Applies To | Uses | Expires | Status | Actions |
|---|---|---|---|---|---|---|
| Loading… | ||||||
Influencer Codes
Track signups by invite code
Total Codes
—
all time
Active
—
currently usable
Total Signups
—
across all codes
| Code | Influencer | Signups | Status | Created | Actions |
|---|---|---|---|---|---|
| Loading… | |||||
Guardian Command Center
Real-time safety operations · Live Firestore streams
Active Alerts
0
Pending Requests
0
Eyes On Me
0
Resolved Today
0
Active Alerts
Eyes On Me timeouts · Emergency pings · Zone events
Connecting to live stream…
Guardian On Demand
User requests needing staff response · accept → escalate → resolve
Requests appear here once the Flutter app writes to root
guardian_requests. See the note below if requests aren't showing.
Connecting to live stream…
Eyes On Me — Active Sessions
Currently monitored users · auto-alert on timeout
Connecting to live stream…
Flutter fix needed:
GuardianOnDemandScreen currently writes to users/{uid}/guardian_requests (subcollection) but this dashboard reads from root guardian_requests. Add a write to the root collection on request creation so staff can see it here.