FundSocial Admin Console

Sign in to load admin operations and reporting tools.

Back to public site

Admin access is enforced by Firestore rules using your admin claim or config/admins entry.

Access denied

This account is signed in but is not authorized for admin data.

Back to public site
Web Admin Console

Operations Hub

Checking session...

Triage and Decisions
People and Funding
Operations and Settings
Runs (24h)
0
Attempts (24h)
0
Failures (24h)
0
Success Rate
0%

Latest alerts

Top 10
WhenSeverityStateTitle
No alerts yet.

Latest retries queued

From attempts
WhenUserSourceStatus
No retry queue activity yet.

Support Guidance i Clients are listed by default. Use Search or press Enter to filter by name, email, phone, or location. Click the client name to open a full client profile page.

Client Directory

0 users
UserContactLocationUpdated
No users match your search.

Funding directory with events and social clubs. Type filter is optional. Click any column header to sort, and click a title to drill into details.

Funding Directory

0 items
TitleTypeStatusVisibilityOwnerMembersBalance/PoolCreatedDueClosedUpdated
No rows match your filters.
Resolve note (used when resolving alerts)
WhenSeverityStateAlert detailsRunAction
No alerts found.
StartedFunctionSourceStatusAttemptsFailDurationAction
No runs found.
Retry reason (required for Queue retry)

How to read this i Attempts are execution records. Processed = when this run wrote the result. Scheduled = next planned execution time (captured for newer recurring skips/retries). Older rows may show "legacy/not captured".

ProcessedScheduledSourceUserStatusActionabilityReasonReason DetailExternal RefAction
No attempts found in current filters.

What this tab is for i Audit trail records admin/operator decisions and control actions. It is not a payment mismatch detector.

WhenAdminActionTargetReason
No audit actions found.
Case summary default (used by Open case)

What this tab is for i Reconciliation is an exception queue. Items appear here for review and may self-resolve after retries. A case is only created when you click Open case.

Potential Mismatches
0
Ledger Mismatch Flags
0
Webhook Timeout Flags
0
Missing Stripe Ref
0
ProcessedUserSourceStatusReasonCategoryReferenceAction
No reconciliation exceptions found.

Withdrawal Requests (All Statuses)

Loading withdrawal request diagnostics...

Decision Workspace

Select an actionable request from the table to prepare a decision using the unified backend policy path.
Why this is in manual review
Select an actionable request to view manual review triggers.
Impact preview
Select an actionable request to preview decision impact.
RequestedUserAmountStatusPayoutAction
No withdrawal requests found.
Requested Refund ID Status Destination User Event Amount Case Provider refs Requested by Approved by Action
No refunds found in current filters.
When Transaction Direction Amount Source Event Record
No transactions found in current filters.

Transaction record


        

Platform Metrics

Users total (Firestore)
-
Users active 30d (Auth)
-
Events total
-
Clubs total
-
Wallet balance
-
Event pool
-
Club wallet
-
Stripe total balance
-
Platform liabilities
-
Stripe differential
-

Overview metrics are loaded from backend admin overview endpoint.

Operations Command View

Withdrawal Queue Depth
-
Withdrawal Oldest Age
-
Withdrawal Failed Actions (24h)
-
Governance Queue Depth
-
Governance Oldest Age
-
Governance Failed Actions (24h)
-
Support Queue Depth
-
Support Oldest Age
-
Support SLA Breaches
-
Support Failed Actions (24h)
-
Open Ops Alerts
-
Attempt Failed Rate (24h)
-
Cross-Domain Backlog
-

Queue depth, aging, SLA breaches, and failed-action rates are read-only operational indicators.

Platform Config

Purpose: set base and supported currencies for platform-wide money display and validation.

Only 3-letter ISO currency codes are accepted. Base currency must be included in supported list.

Withdrawal and Refund Policy Controls

v
Advanced policy controls

Purpose: configure two-outcome decision thresholds used by backend policy evaluation.

Read-only schema version used by backend policy evaluation.

Withdrawals at or below this amount may auto-approve unless velocity threshold routes to manual_review.

How far back to count recent withdrawals when evaluating activity velocity.

If recent withdrawal count meets or exceeds this value, outcome is manual_review.

Refunds at or below this amount may auto-approve unless refund path rules force manual_review.

When enabled, card-path refunds always require manual review regardless of amount.

When enabled, manual_review approvals/rejections require a linked case ID.

Minimum explanation length required for decision rationale and override actions.

Blocks high-impact actions if the immutable audit write cannot be recorded.

Policy config source: config/adminPolicy.

Tip: amounts are stored in cents. 100000 = $1,000.00 AUD.

Platform Fee Settings

Model: fee = min(max, max(min, amount * pct)), then round up to step.

Rule Enabled Percent (%) Min (cents) Max (cents) Round-up step (cents)
Deposit: Platform
Applied on desired top-up amount.
Deposit: Stripe
Applied on desired + platform deposit fee.
Withdraw to Wallet: Platform
Applied on wallet withdrawal amount.
Withdraw to Wallet: Stripe
Optional rail fee on wallet withdrawal amount.
Withdraw to Bank: Platform
Applied on requested payout amount.
Withdraw to Bank: Stripe
Applied on requested payout amount.

This panel now only maps to the new fee-rule schema used by backend calculations.

Quick Text Templates

v
Advanced support templates

Purpose: manage reusable response templates for case actions and admin-generated user messages.

Edit templates directly in the list below. These templates appear in case reply dropdowns and are reused by automated/manual case generation.

Tips: keep keys lowercase with underscores, keep labels short, and use full sentence messages.

Editor validation: waiting for input.

KeyLabelMessageActions
No templates yet. Add a template to begin.

Template source: config/quickTextTemplates.

Admin Maintenance: Platform Role Normalization

v
Rare-use maintenance task

Purpose: run controlled role normalization when registry and claims need explicit alignment.

Super Admin only. Registry is treated as source of truth and role claims are synced to match. Users in the Super Admin list are set to super_admin; all others are set to member.

Awaiting run.

Notification Controls

Purpose: control notification enablement, quiet hours, and optional message template overrides.

Control push send on/off by notification type, configure quiet hours, and optionally override message title/body templates.

Template Overrides By Notification Type

v
TypeEnabledTitle TemplateBody Template
admin_alert i
wallet_transaction i
wallet_topup_succeeded i
oneoff_contribution_succeeded i
recurring_contribution_succeeded i
event_participant_joined_admin i
recurring_setup_nudge i
recurring_contribution_failed i
recurring_topup_failed i
recurring_low_balance_risk i
event_funding_due_reminder i

If a field is left blank, backend default copy is used. Template variables supported in backend: {{eventTitle}}, {{participantName}}, {{shortfall}}, {{dueText}}, {{outstanding}}, {{amountLabel}}, {{txType}}, {{contributionSource}}, {{alertType}}, {{severity}}.

Governance Trigger Controls

Controls for automated event creation review and new-user wallet withdrawal watch.

Governance Reviews

0 reviews
Dismiss reason (optional, used by Dismiss)
WhenTypeStatusRiskSourceUserCaseSignals/FindingsAction
No governance reviews found.

Triage workflow i This tab shows only the case queue. Click a case number to open a dedicated case workspace page.

Case queue

Select a case number to open focused workspace
Case #OpenedStatePriorityUserCategorySummaryAssignedUpdatedClosed
No cases found.

Case workspace

Select a case row from the queue to begin review.

User-facing messages

No case selected.

Internal notes

No case selected.
Execution routing (governance and refunds)
Governance and refund execution has moved to the domain pages with richer context. Use the routing actions below, and keep Cases for triage, communication, and audit timeline.
Legacy controls (temporary)

Use these controls for moderation and refund enforcement only.

Use one row per wallet credit. Amount is in cents.
User UID Event ID Amount cents Currency Action
Use one row per card refund. Provide payment intent ID or charge ID.
User UID PaymentIntent ID Charge ID Amount cents Currency Action
Preflight not run.

Unified timeline

No case selected.
Case logs (audit + notes)
No case selected.
Case / Domain
-
Related items
SLA timer
-
Owner
Unassigned
User
-
Priority / Severity
-
Risk
-
Escalation
normal
Linked evidence context
No case selected.
Findings review
No case selected.
Impact preview
No case selected.