Transactions
M-Pesa payments & wallet top-ups
Total
—
all time
Completed
—
KSH —
Pending
—
awaiting
Failed
—
not completed
All
Completed
Pending
Failed
Page 1
| Transaction ID | M-Pesa ID | Amount | Status | Phone | Message | Date | |
|---|---|---|---|---|---|---|---|
| Loading… | |||||||
Users
All registered CirclePing accounts
Total Users
—
registered
Premium
active subscriptions
PingKid Active
—
with wallet balance
PingWork
—
managers
| Display Name | Provider | 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 | City | Type | Staff Count | Bands Linked | Created | Actions |
|---|---|---|---|---|---|---|
| Loading… | ||||||
Sponsored Ads
Manage in-app advertising campaigns
Total Ads
—
campaigns
Active
—
live now
Total Impressions
—
all time
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… | ||||||||
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… | ||||
Withdrawals
Organizer wallet payouts via M-Pesa B2C
| Organizer | Gross (KSH) | Fee | Net (KSH) | Phone | Status | Date |
|---|---|---|---|---|---|---|
| Select Withdrawals from the nav to load. | ||||||
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… | ||||||
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.