Multi-Stakeholder Portals

RippleCore serves five distinct user groups through a unified platform with role-based portals.

User Ecosystem

Portal Architecture

Each stakeholder portal provides dedicated functionality:
PortalPurposeKey Features
CharityPartner managementOpportunity creation, hour verification, donations
CouncilSupplier oversightEvidence review, compliance scoring, supplier management
ConsultantClient servicesPortfolio management, reporting, theme customization

Role-Based Access

RippleCore implements five core roles:
type Role = "admin" | "owner" | "member" | "viewer" | "guest";
RoleDashboardEvidencePortalsAdmin
Admin✅ Full✅ All✅ All✅ Yes
Owner✅ Full✅ All✅ All❌ No
Member✅ Own✅ Own❌ Limited❌ No
Viewer✅ Read✅ Read❌ No❌ No
Guest❌ No❌ No❌ No❌ No

Authentication

All portals use Better Auth with organization plugin:
  • Session-based authentication with 8-hour expiry
  • Multi-tenant isolation via organizationId
  • OAuth support for Google and GitHub
  • SSO ready for enterprise deployments
import { auth } from "@/lib/auth";

// Get current session
const session = await auth.api.getSession({ headers: await headers() });

// Check organization access
const organizationId = session?.session?.activeOrganizationId;
if (!organizationId) {
  throw new UnauthorizedError("No active organization");
}

Portal Routes

Each portal has its own route namespace:
PortalRoute PrefixDashboard
Charity/charity/*/charity
Council/council/*/council
Consultant/consultant/*/consultant

API Endpoints by Portal

PortalEndpointsRate Limit
Charity11 routesAUTHENTICATED + HEAVY
Council5 routesAUTHENTICATED + HEAVY
Consultant7 routesAUTHENTICATED + HEAVY

Common Features

All portals share:
Upload logos, configure colors, and apply custom themes. Council and Charity portals can fully white-label the experience.
Real-time metrics, trend charts, and comparative insights relevant to each stakeholder type.
Configurable notifications for invitations, verifications, milestones, and activity summaries.
Process multiple items at once - up to 50 verifications, invitations, or exports per batch.

Integration Patterns

Charity Integration

Charities connect with companies to:
  • Receive volunteer hour submissions
  • Verify and approve recorded hours
  • Track donation flows
  • Create volunteer opportunities

Council Integration

Councils connect with suppliers to:
  • Review social value evidence
  • Score compliance against frameworks
  • Request additional documentation
  • Generate compliance reports

Consultant Integration

Consultants connect with clients to:
  • Aggregate impact data across organizations
  • Generate branded reports
  • Provide benchmarking insights
  • Manage multiple client portals

Next Steps