Business Requirement Document (BRD)

This Business Requirement Document defines the commercial and product vision for Tutor, a production-ready, self-hosted tutoring & education booking marketplace sold on CodeCanyon. It is written for buyers, project sponsors, and stakeholders who need to understand why the product exists, who it serves, and what it must deliver to be successful as a brandable platform for listing and booking lessons.

Vision

Tutor exists to let tutoring agencies, schools, and independent tutors launch a credible, full-featured booking marketplace in hours instead of months — without building one from scratch.

The product is delivered as a single self-hosted Next.js 16 application the buyer fully owns and controls. It serves several experiences from one codebase: a public storefront (/), a customer portal (/customer), a host portal (/host), an influencer portal (/influencer), and an admin/CMS panel (/admin). The core ships lean and English-first, with advanced capabilities unlocked through CreativeCape license keys so a marketplace can grow exactly as far as its audience demands.

Vision statement: Give anyone the power to run their own tutoring marketplace — owned, branded, and monetized on their terms.

Goals

# Goal Description
G1 Time-to-launch A buyer can install via the wizard and go live quickly on standard serverless hosting.
G2 Ownership The buyer owns the code, data, and infrastructure — no per-seat SaaS fees.
G3 Book lessons Catalogue, lesson-time availability, checkout, and booking work end to end out of the box.
G4 Manage operations Availability, lesson times, extras, cancellations and tiered refunds, and host↔customer messaging.
G5 Extensibility Premium add-ons unlock via purchase codes / license entitlements without code surgery.
G6 Quality Production-grade security (encrypted secrets, JWT, RBAC) and a clean, conventional codebase.

Business Objectives

  • Sell a complete product, not a starter kit. A working storefront, role portals, and an admin CMS ship ready to use.
  • Tiered revenue model. A free core (lesson listing and booking) drives adoption; 93 built-in add-ons (53 channel integration providers + 40 premium feature add-ons) drive upsell.
  • Protect intellectual property. Premium add-ons are gated by CreativeCape licensing — entered as a purchase code in admin and verified offline by RS256 signature.
  • Reduce support load. A self-service install wizard, in-product documentation, and consistent conventions minimize buyer questions.
  • Enable resale & white-label. The product is fully brandable (theme, logo, copy) so buyers can deliver client marketplaces.

Scope

In Scope

  • Public storefront: lesson catalogue, lesson detail with lesson times, "what's included", reviews and nearby places, tutor profiles, blog, and how-it-works / become-a-host pages.
  • Booking & checkout with coupons and gift cards, paid extras, and pluggable payment gateways (PayPal built in as the online gateway) — pick a lesson, choose a lesson time, book a session, and pay a deposit or the full amount.
  • Bookings & lesson times: tutor-published weekly availability expanded into bookable lesson times, atomic slot claiming, booking extras, deposit-or-full payments, tiered cancellation refunds with an admin approval queue, and host↔customer messaging.
  • Customer portal (/customer): dashboard, bookings, messages, notifications, payments, wishlist, reviews, support, and settings.
  • Host portal (/host): listings (lessons), calendar/availability, bookings, inbox, insights, earnings, payouts, billing (host subscription), reviews, and settings.
  • Influencer portal (/influencer): referral links, clicks/visits, commissions, bookings, payouts, and marketing materials.
  • Admin/CMS (/admin): listings, bookings, hosts, customers, extras, coupons, refunds, reviews, CMS pages and homepage sections, settings, integrations, and license/add-on activation.
  • Install wizard (/install), R2/S3-compatible media storage, and admin configuration of integrations.

Out of Scope (Optional via Add-ons or Buyer-Supplied)

  • Hosting, domain registration, and SSL provisioning (buyer responsibility).
  • Third-party service accounts — SMTP/email provider, SMS, WhatsApp, payment gateway credentials — supplied by the buyer.
  • Premium capabilities delivered only as licensed add-ons (e.g. advanced analytics, AI-assisted translation, additional messaging channels).
  • Premium channel providers beyond the free defaults (e.g. Stripe, Razorpay, SendGrid, additional storage/analytics/chat providers).

Stakeholders & Personas

Persona Description Primary Needs
Store Owner / Admin Operates the marketplace day to day. Listing control, booking oversight, revenue reporting, refunds, settings, licensing.
Host (tutor) Lists and runs lessons. Lesson authoring, availability & lesson times, bookings, earnings & payouts, customer messaging.
Customer (student) Books and attends lessons. Easy booking, an organized portal, clear lesson-time details, payments and reviews.
Buyer / Developer Purchases and deploys Tutor. Easy install, clean code, license control, extensibility.

Persona Notes

  • The Store Owner/Admin works in /admin, behind the admin session (admin_token) with a fine-grained resource:action permission matrix.
  • Hosts and Customers each sign in to their own portal via a member session (JWT); an account-type field routes them to /host or /customer (influencers to /influencer).
  • The Buyer/Developer is served by the /install wizard, deployment guides, and the conventional Next.js App Router architecture.

Business Rules

  • BR-1 — Booking on paid checkout. A lesson-time reservation is confirmed only when its payment reaches the paid status; for online payments the booking is confirmed automatically at that moment.
  • BR-2 — Offline payments need admin "mark paid". Bookings placed with an offline method are created as pending. The admin must open the booking and Mark as Paid to confirm it.
  • BR-3 — Lesson times are claimed atomically. A lesson time confirms a booking only when capacity allows it; slots are claimed atomically so a lesson time never oversells.
  • BR-4 — Deposit or full. At checkout the customer may pay a deposit or the full amount; the balance is recomputed server-side from the lesson price and session count — the client never supplies the amount.
  • BR-5 — Tiered cancellation refunds. Cancellations follow the lesson's policy (flexible/moderate/firm/strict/non-refundable); the refund amount is computed from policy + lead time, routed through an admin approval queue (booking_refunds), and the lesson time is released on cancellation.
  • BR-6 — Premium add-ons require a license. A premium channel provider or feature serves only when unlocked by a valid CreativeCape entitlement or per-add-on purchase code; localhost/dev hosts are unlocked for development.
  • BR-7 — Secrets are encrypted at rest. Integration credentials (gateway keys, SMTP passwords) are stored AES-256-GCM encrypted and never returned in plaintext to clients.
  • BR-8 — Admin actions are permission-gated. Admin operations are checked per route against the role's resource:action permissions; system/super roles bypass the matrix.
  • BR-9 — Host earnings on paid bookings. When a booking is paid against a host's lesson, a host-earnings record is created for later payout.

Success Metrics

  • A buyer installs through the wizard and reaches a working storefront and admin without manual database setup.
  • A student can browse the catalogue, pick a lesson time, book a session, and pay a deposit or full amount (or be confirmed after admin "mark paid" for offline payments).
  • Coupons, gift cards, and paid extras apply correctly at checkout and adjust the total as documented.
  • Lesson-time claiming is atomic, cancellations release the slot, and tiered refunds compute correctly through the admin approval queue.
  • Premium add-ons activate cleanly via purchase code and remain valid offline, surviving brief license-server outages through the grace window.
  • The product earns and sustains a strong CodeCanyon rating, with support handled through creative-cape.com.

© CreativeCape Solutions · creative-cape.com · support@creative-cape.com