SalingAwas

White-label pengawasan pemilu dengan microsite, laporan, dan billing terpusat.

SalingAwas adalah platform multi-tenant white-label untuk instansi pengawas pemilu seperti Bawaslu dan Panwascam agar dapat memiliki microsite, dashboard operasional, dan alur pelaporan LHP dalam satu sistem terpusat. Produk ini menggabungkan pengelolaan tenant, submission LHP, PDF bertanda tangan digital, livenote pleno, dan wallet-based billing untuk memudahkan operasional sekaligus monetisasi.

Business Goals

  • Mencapai 50 tenant aktif berbayar dalam 6 bulan pertama setelah peluncuran.
  • Mencapai conversion rate trial-to-paid minimal 25% dalam 90 hari pertama.
  • Menjaga churn bulanan di bawah 5% setelah tenant aktif lebih dari 60 hari.
  • Mendorong 70% tenant aktif menggunakan lebih dari 3 modul dalam 6 bulan.
  • Mencapai gross margin operasional di atas 75% dengan model top-up dan add-on modul.

User Goals

  • Memungkinkan tenant admin membuat microsite white-label dalam waktu kurang dari 15 menit.
  • Memudahkan petugas lapangan mengirim LHP dari ponsel tanpa pelatihan panjang.
  • Memberikan superadmin kontrol penuh atas tenant, modul, dan support.
  • Menyediakan laporan PDF yang rapi, dapat ditandatangani digital, dan siap dibagikan.
  • Memastikan data tiap instansi terpisah dan aman.

Non-Goals

  • Tidak membangun sistem penghitungan suara resmi atau rekapitulasi hasil pemilu nasional.
  • Tidak menggantikan sistem identitas pemerintah atau e-KTP.
  • Tidak membangun fitur campaign politik, iklan, atau aktivitas partisan.
  • Tidak menangani hardware khusus di lapangan seperti perangkat pemindai atau printer mobile pada fase awal.

Rina, 38, Tenant Admin Bawaslu Kabupaten - Rina mengelola operasional pengawasan di kabupaten dan perlu sistem yang bisa dipakai timnya tanpa setup teknis rumit. Ia butuh microsite resmi, user management, dan pelaporan yang cepat.

Rina, 38, Tenant Admin Bawaslu Kabupaten

  • As a Tenant Admin, I want to create a branded microsite for my office, so that my team has a public-facing and official digital presence.
  • As a Tenant Admin, I want to manage users and roles, so that each officer only sees the data and tools they need.
  • As a Tenant Admin, I want to monitor wallet balance and module usage, so that I can control spending and renewals.

Dedi, 29, Field Officer Panwascam - Dedi bekerja di lapangan dan sering membutuhkan cara cepat untuk membuat LHP dari ponsel saat situasi dinamis. Ia ingin alur input yang singkat, jelas, dan tidak rawan salah.

Dedi, 29, Field Officer Panwascam

  • As a Field Officer, I want to submit an LHP from my phone, so that I can report findings immediately after supervision.
  • As a Field Officer, I want auto-numbered reports, so that I do not duplicate report IDs.
  • As a Field Officer, I want to generate a PDF summary, so that I can share the report with my supervisor.

Ayu, 41, Superadmin Operasional - Ayu bertanggung jawab atas kesehatan platform secara keseluruhan, termasuk tenant provisioning, billing, support, and system monitoring. Ia membutuhkan dashboard yang memberi kontrol cepat dan audit trail yang jelas.

Ayu, 41, Superadmin Operasional

  • As a Superadmin, I want to create and deactivate tenants, so that I can manage platform access centrally.
  • As a Superadmin, I want to see module availability and pricing, so that I can adjust monetization without deployments.
  • As a Superadmin, I want to review support tickets and system health, so that I can keep operations stable.

Tenant Provisioning and White-Label Microsites · High priority

  • Allow new institutions to be provisioned as isolated tenants with their own branded microsites under salingawas.my.id subdomains.
  • Create tenant onboarding flow that captures institution name, region, logo, colors, and admin contact.
  • Automatically provision tenant subdomain such as kabupatenx.salingawas.my.id with TLS and routing.
  • Support configurable landing page sections, legal pages, and module visibility per tenant.
  • Allow superadmin to suspend, restore, or delete tenants with audit logging.
  • Generate a default microsite theme in under 15 minutes from tenant creation.

LHP Workflow and Reporting · High priority

  • Provide field officers and admins with a structured workflow for submitting, reviewing, and exporting LHP records.
  • Support LHP form templates with required fields, validation, and auto-numbering per tenant and per period.
  • Allow draft, submitted, reviewed, and archived statuses with role-based permissions.
  • Generate PDF reports with tenant branding and optional digital signature metadata.
  • Provide livenote pleno entries with timestamped updates and attachments.
  • Handle offline or weak-network scenarios by saving drafts locally before sync.

Wallet, Billing, and Module Monetization · High priority

  • Enable trial, top-up, module purchase, and renewal billing using a wallet-based model for each tenant.
  • Provide 15-day trial activation for newly created tenants with clear expiry alerts.
  • Integrate payment gateways for top-up using Midtrans and Xendit.
  • Deduct wallet balance for module purchases, renewal, and optional add-on usage.
  • Show transaction history, invoice references, and balance notifications.
  • Prevent negative balance spending except for explicitly approved superadmin overrides.

Central Admin and Support Operations · Medium priority

  • Equip superadmins and support teams with tools to manage tenants, modules, tickets, and platform health.
  • Offer dashboard views for tenant count, activation status, revenue, and trial expirations.
  • Manage module catalog with pricing, availability, and tenant eligibility rules.
  • Track support tickets by priority, tenant, category, and resolution status.
  • Provide system health panels for uptime, latency, queue depth, and error rate.
  • Maintain full audit logs for admin actions on tenants, users, and billing.

Security, Isolation, and Compliance · High priority

  • Protect sensitive operational data with tenant isolation, secure authentication, and compliance-oriented controls.
  • Enforce tenant scoping on all operational tables using tenantId and server-side authorization.
  • Use row-level security policies in the database to prevent cross-tenant access.
  • Require HTTPS, secure cookies, MFA for admins, and password policy enforcement.
  • Encrypt sensitive data at rest and in transit, with key rotation procedures.
  • Support data export and deletion workflows for privacy requests where legally required.

Fast Tenant Onboarding

  • Superadmin creates a tenant and assigns region, institution name, and admin contact.
  • System provisions subdomain, default theme, and trial access automatically.
  • Tenant admin logs in and sees a guided setup checklist for branding, modules, and users.
  • Admin uploads logo, sets colors, and enables the first module pack.
  • First LHP form is ready within 15 minutes, giving immediate time to value.
  • System shows trial countdown, wallet balance, and next recommended action.

1. Discover and Activate

  • A prospective institution visits the main landing page, reviews modules and pricing, then starts a trial or requests tenant creation.
  • Landing page highlights use cases, pricing tiers, and legal pages.
  • Forms validate institution data and reject duplicate tenant names or subdomains.
  • Success screen confirms trial period, next steps, and admin login access.

2. Brand and Configure Microsite

  • Tenant admin sets the white-label identity and publishes the microsite.
  • Upload logo, pick primary and accent colors, and preview responsive theme.
  • Choose which modules are visible to staff and public visitors.
  • Invalid image sizes, unsupported formats, and low-contrast colors trigger clear validation.

3. Manage Users and Roles

  • Admin invites staff and assigns permissions for field officers, reviewers, and finance operators.
  • Invite via email or phone, with role templates and optional MFA enforcement.
  • Prevent duplicate users across the same tenant unless explicitly merged.
  • Role changes are logged and reflected immediately across dashboard and microsite.

4. Capture and Review LHP

  • Field officers create LHP drafts, submit them, and supervisors review before publishing exports.
  • Auto-numbering prevents duplicate report IDs within the tenant and period.
  • Required fields are validated before submission, with draft saving on connection loss.
  • If a PDF export fails, the system retries and records an error status for support.

5. Bill, Renew, and Scale

  • Admins top up wallet balance, buy modules, and renew services without leaving the platform.
  • Wallet balance updates in near real time after gateway callbacks are confirmed.
  • Low balance warnings appear before renewal or module purchase is blocked.
  • Expired trials restrict premium modules while preserving read-only access to historical data.

Power User and Edge-Case Capabilities

  • Bulk import users, templates, and legacy LHP data via CSV or JSON.
  • Custom approval chains for districts with multiple supervisory levels.
  • Public read-only microsite pages and private operational workspace separation.
  • Support for multiple subdomains per organization if regional branches are needed.
  • Manual superadmin credit adjustments with strict audit trails.
  • Localization ready for Indonesian language first, with future multilingual support.

Accessible, Fast, and Trustworthy UI

  • Mobile-first forms optimized for field use with large touch targets.
  • Strong contrast themes and keyboard navigability for admin dashboards.
  • Skeleton loading, optimistic saves for drafts, and immediate validation feedback.
  • Clear tenant branding on every screen to reinforce official identity.
  • Accessible status indicators for trial expiry, wallet balance, and submission state.
  • Performance budget keeps key pages interactive within 2 seconds on average connections.

Rina, a Tenant Admin at a district election office, currently relies on scattered spreadsheets, chat screenshots, and manual PDF formatting to track supervisory reports. When reports come in late, she spends hours checking whether each LHP belongs to the right district, whether the numbering is unique, and whether the document is ready to share.

With SalingAwas, Rina provisions a branded microsite for her office, invites field officers, and enables the LHP module in one afternoon. Her team submits reports from mobile devices, the system auto-numbers them, and supervisors can review clean PDFs with tenant branding and signature metadata without extra formatting work.

The result is faster reporting, fewer errors, and better accountability. Rina can see wallet usage, resolve issues through support tickets, and keep her office’s operations running with a single platform instead of five disconnected tools.

User-Centric Metrics

  • 80% of tenant admins complete microsite setup within 15 minutes.
  • 90% of LHP submissions are completed without support intervention.
  • Field officer report submission time averages under 3 minutes per LHP.
  • Average tenant admin satisfaction score reaches 4.5 out of 5 within 90 days.
  • Less than 2% of submitted LHPs require correction for validation errors.

Business Metrics

  • 50 active tenants within 6 months.
  • 25% trial-to-paid conversion within 90 days.
  • Monthly recurring revenue grows by at least 15% month over month in the first 6 months.
  • Tenant churn remains below 5% monthly after the first billing cycle.
  • At least 60% of tenants purchase one or more add-on modules within 120 days.

Technical Metrics

  • 99.9% monthly uptime.
  • Subdomain routing p95 latency under 100ms.
  • Dashboard and microsite p95 first contentful paint under 2 seconds on standard broadband.
  • Zero confirmed cross-tenant data leakage incidents.
  • MFA adoption above 90% for superadmins and tenant admins.

Tracking Plan

  • Track tenant_created when a new tenant is provisioned.
  • Track microsite_published when branding and subdomain go live.
  • Track user_invited and role_assigned when admins onboard staff.
  • Track lhp_draft_saved, lhp_submitted, and lhp_pdf_exported for workflow completion.
  • Track wallet_topup_initiated, wallet_topup_confirmed, and module_purchased for monetization.
  • Track support_ticket_opened and support_ticket_resolved for operational health.
  • Track trial_expired and subscription_renewed for retention analysis.

Technical Needs

  • Next.js for the customer-facing landing page, dashboard, and microsite UI.
  • NestJS or Fastify API layer for multi-tenant business logic and authorization.
  • PostgreSQL with Row Level Security and tenant-aware schemas or shared tables.
  • Redis for session caching, rate limiting, job coordination, and short-lived routing cache.
  • Object storage such as S3-compatible storage for logos, attachments, and generated PDFs.
  • Background job processing with BullMQ or similar for PDF generation, notifications, and webhook handling.
  • Infrastructure on Docker and Kubernetes or managed container services for scaling and isolation.

Integration Points

  • Midtrans payment gateway for top-up and invoice callbacks.
  • Xendit payment gateway as an alternative or fallback processor.
  • Email service such as SendGrid or Amazon SES for invitations and alerts.
  • WhatsApp or SMS provider such as Twilio or local Indonesian messaging gateways for OTP and notifications.
  • Authentication provider support for email/password plus optional social or enterprise SSO in later phases.

Data Storage & Privacy

  • Store tenant-specific operational data with tenantId scoping on every query and mutation.
  • Apply PostgreSQL Row Level Security to block unauthorized reads even if application logic fails.
  • Encrypt sensitive personal data at rest and use TLS 1.2+ for all transport.
  • Keep audit logs immutable for admin actions, billing changes, and permission updates.
  • Provide retention policies and export/delete flows aligned with local regulations and GDPR principles where applicable.

Scalability & Performance

  • Use CDN caching for public landing pages and static microsite assets.
  • Cache subdomain-to-tenant resolution at the edge and in Redis to keep routing under 100ms.
  • Offload PDF rendering, signatures, and webhook retries to background workers.
  • Design read-heavy dashboards with pagination, indexed queries, and tenant-partition-friendly access patterns.

Potential Challenges

  • Tenant data leakage risk from mis-scoped queries; mitigate with RLS, automated tests, and query review gates.
  • Payment reconciliation errors from gateway callbacks; mitigate with idempotent webhook handlers and transaction states.
  • PDF generation delays under load; mitigate with queued workers, retries, and pre-render templates.
  • Complex white-label customization can slow onboarding; mitigate with opinionated defaults and guided setup.
  • Subdomain provisioning and TLS issues can create downtime; mitigate with automated certificate management and health checks.

Team & resourcing - Small cross-functional team: 2 backend engineers, 1 frontend engineer, 1 designer, part-time QA/DevOps, and part-time PM.

Phase 1: MVP Foundation · Weeks 1-4

  • Landing page and tenant onboarding flow
  • Tenant subdomain routing and default white-label microsite
  • Authentication, roles, and tenant-scoped data model
  • Basic LHP draft submission and admin review
  • Audit logging and initial dashboard

Phase 2: Reporting and Billing · Weeks 5-8

  • PDF export with branding and signature metadata
  • Wallet balance system and top-up ledger
  • Midtrans and Xendit payment integration
  • Module catalog with purchase flow
  • Support ticket creation and management

Phase 3: Operational Hardening · Weeks 9-12

  • Row Level Security enforcement and security audit
  • Performance optimization for routing and dashboards
  • MFA for privileged users and secure session handling
  • Notification system for trial expiry and low balance
  • Monitoring dashboards and error alerts

Phase 4: Scale and Refinement · Weeks 13-16

  • Bulk import tools and advanced approval flows
  • Livenote pleno improvements and attachment handling
  • Analytics dashboard for tenant adoption and revenue
  • Accessibility and mobile usability refinements
  • Production readiness review and launch checklist

Paste this into Cursor, Bolt, Lovable, or v0 to start building.

Build a multi-tenant white-label SaaS called SalingAwas for election supervision organizations in Indonesia.

Core product:
Create a platform under salingawas.my.id that provisions tenant-specific microsites and dashboards for Bawaslu/Panwascam-style offices. Each tenant must have isolated data, branded public-facing microsite, admin dashboard, field officer workflows for LHP submissions, PDF export, livenote pleno, support tickets, and wallet-based billing with trial periods and add-on modules.

Primary screens and flows:
1. Public landing page with modules, pricing, FAQs, legal pages, and CTA to start a trial.
2. Superadmin dashboard to create/manage tenants, module catalog, pricing, support tickets, and system health.
3. Tenant admin dashboard to customize brand, manage users and roles, view wallet balance, buy modules, and review LHPs.
4. Field officer microsite/PWA for login, draft LHP creation, submission, PDF export, and livenote updates.
5. Billing screens for wallet top-up, invoice history, payment status, and renewal alerts.
6. Support ticket screen with status, priority, comments, and file attachments.

Data model:
Tenant, User, Role, Permission, Module, TenantModule, Wallet, WalletTransaction, TrialPeriod, MicrositeTheme, LHPReport, LHPAttachment, LivenoteEntry, SupportTicket, TicketComment, AuditLog, PaymentIntent, PaymentWebhookEvent.
Every operational record must include tenantId and enforce authorization at the API and database levels.

Technical stack:
Use Next.js 14 with TypeScript and Tailwind for frontend, NestJS or Fastify for API, PostgreSQL with Row Level Security, Redis for caching and jobs, S3-compatible storage for files and PDFs, and a background worker queue for exports and webhook processing. Implement subdomain routing for tenant resolution, HTTPS, secure cookies, MFA for admins, and observability with logs, metrics, and tracing.

Build the app with responsive mobile-first UI, Indonesian language defaults, accessible forms, clear loading states, and clean tenant branding. Include seed data, validation, role-based access control, and production-ready folder structure suitable for scaling to many tenants.

Business Idea

# Product Requirements Document: Saling Awas (SaaS Multi-Tenant Pengawasan Pemilu) ## Problem Statement Pengawas pemilu membutuhkan alat digitalisasi Laporan Hasil Pengawasan (LHP) yang terstruktur dan efisien. Solusi konvensional berbasis SaaS kurang relevan karena setiap instansi pengawas (Bawaslu/Panwascam) membutuhkan identitas dan microsite tersendiri. Saling Awas bertujuan untuk mengatasi masalah ini dengan menyediakan platform PaaS white-label yang mendukung multi-tenant architecture, manajemen operasional terpusat, dan sistem monetisasi berbasis dompet digital. ## Goals & Success Metrics ### Goals 1. **Build a Unified Platform**: Create a single, unified SaaS platform under the domain salingawas.my.id that supports multi-tenant architecture. 2. **White-Label Microsites**: Automatically generate and manage white-label microsites for each tenant. 3. **Centralized Management**: Provide a robust dashboard for superadmins and tenant admins to manage users, modules, and operations. 4. **Monetization and Billing**: Implement a top-up engine and billing system to facilitate monetization. 5. **Data Security and Isolation**: Ensure data isolation and security to prevent data breaches between tenants. ### Success Metrics 1. **User Adoption**: Achieve a minimum of 50 active tenants within the first 6 months. 2. **System Uptime**: Maintain 99.9% uptime. 3. **Performance**: Ensure subdomain routing is completed within 100ms. 4. **User Satisfaction**: Collect user feedback to achieve an average satisfaction score of 4.5 out of 5. ## User Stories 1. **As a Superadmin**, I want to manage tenants, modules, and support tickets to ensure smooth operation of the platform. 2. **As a Tenant Admin**, I want to create and manage my microsite, users, and LHPs to monitor and report on election activities. 3. **As a Field Officer**, I want to submit LHPs and view reports to ensure accurate and timely reporting. 4. **As a Support Team Member**, I want to manage and resolve support tickets to ensure user issues are addressed promptly. ## Functional Requirements 1. **Landing Page** - Display interactive module showcases, pricing information, FAQs, and legal pages. - Provide a seamless user experience for visitors. 2. **Unified Dashboard** - **Superadmin Dashboard**: - Manage tenants, including creating, editing, and deleting. - Manage module catalog, including pricing and availability. - View and manage support tickets. - Monitor server performance. - **Tenant Admin Dashboard**: - Build and customize microsite (PWA) for the tenant. - Manage users, including creating, editing, and deleting. - Manage wallet and top-up transactions. - Purchase and manage additional modules. - View and manage LHPs and support tickets. 3. **Tenant Microsite/PWA** - **LHP Form**: Allow field officers to submit LHPs with auto-numbering. - **PDF Export**: Generate PDF reports with digital signatures. - **Livenote Pleno**: Provide real-time updates and notes. - **Support Ticketing**: Allow users to create and manage support tickets. 4. **Monetization & Top-Up Engine** - Implement a 15-day trial period for new tenants. - Integrate payment gateways (Midtrans/Xendit) for top-up transactions. - Deduct wallet balance for module purchases and renewals. 5. **Subdomain Routing** - Route requests to the appropriate tenant microsite based on subdomain. - Ensure low latency (under 100ms) for subdomain routing. 6. **Data Isolation and Security** - Use logical separation with foreign key `tenantId` in operational tables. - Implement Row-Level Security (RLS) to prevent data leaks between tenants. ## Non-Functional Requirements 1. **Performance** - Subdomain routing latency: < 100ms. - Dashboard and microsite load time: < 2 seconds. 2. **Security** - Implement HTTPS and secure cookies. - Use strong password policies and multi-factor authentication. - Ensure data encryption at rest and in transit. 3. **Scalability** - Design the system to handle a growing number of tenants and users. - Ensure the database can scale horizontally. 4. **Compliance** - Adhere to GDPR and local data protection regulations. - Provide clear and accessible legal documents (ToS, Privacy Policy, Refund Policy). ## Open Questions 1. **Legal and Compliance**: What specific legal and compliance requirements must be met for election monitoring? 2. **User Training and Support**: What training and support resources will be provided to users? 3. **Integration with External Systems**: Are there any external systems (e.g., government databases) that need to be integrated? 4. **Performance Testing**: What are the specific performance benchmarks and load testing plans?

Make My PRD

Design by The Resonance | Powered by GPC – The AI Transformation Company

    PRD: # Product Requirements Document: Saling Awas (SaaS...