TheBuzihub
Product Map

Meditation, Breathwork & Courses Platform

A bilingual (English / Arabic) e-commerce website where users buy pre-recorded meditations and breathwork sessions, and pre-recorded or live courses — with prices in Omani Rial (OMR), PayPal checkout, a personal library to return to their content, live sessions on Zoom, and a full admin backend that runs the whole cycle automatically.

English + Arabic (RTL)
PayPal checkout
Zoom live sessions
Prices in OMR
Full admin backend
Automated emails
01

Overview

What the platform sells, how the content is delivered, and the main rules.

Meditation

Pre-recorded only. Each item is a package of video(s), audio(s) and PDF(s), grouped by type (stress, affirmation, sleep…). Bought once, available forever in the user's library.

Breathwork

Pre-recorded only. Same structure as meditation, with its own types (energy, calm, focus…). Bought once, available forever in the user's library.

Courses

Pre-recorded: full course in segments (video, audio, PDF per segment), available instantly after purchase.
Live: held on Zoom on a set date, with a WhatsApp group; limited seats; recordings added to the buyer's library after the session.

Core rules at a glance

  • Users must sign up / log in before checkout, so every purchase lands in their account history and library.
  • Cart can hold several items (meditations, breathwork, courses); one PayPal payment for the whole cart.
  • Each item can be bought once per user (no quantity selector) — if already owned, the button changes to "Open in my library".
  • Prices are shown in Omani Rial (OMR); PayPal charges the USD equivalent (OMR is pegged to USD, so the amount stays stable). The rate can be edited in settings.
  • All sales are final — no refunds. Stated in the terms and accepted with a tick box at checkout. If a live course is cancelled, buyers are moved to the new date or another course of equal value.
  • Phone number with country code is required at sign-up.
  • Live course registration closes automatically 1 hour before start (configurable per course) or when seats run out.
  • Live course access details (Zoom, WhatsApp, add-to-calendar) are sent by email and also shown in the user's account, so nothing is lost if an email is missed.
  • During checkout the seat is held for 15 minutes; seats and closing time are checked again before PayPal takes the payment, so nobody is charged for a seat that's gone.
  • Course times are set in Oman time (Muscat) and shown to each user in their own local time.
  • Receipts by default; VAT can be switched on in settings (rate + VAT number) to issue tax invoices.
  • Everything is managed from the admin backend — files are uploaded there, not pasted as links.
02

Users & Roles

Who uses the platform. Full permission matrix in section 10.

Visitor

Browses catalogue, course pages, prices and dates in EN/AR. Can add to cart; asked to sign up / log in at checkout.

Registered user

Signed up but hasn't bought yet. Has profile, wishlist, cart saved across devices.

Customer

Has at least one paid order. Gets library access, purchase history, invoices, live course details and recording notifications.

Admin team

Super Admin, Content Manager, Sales / Orders Manager, Instructor (optional) — each with their own permissions.

03

Site Map

All pages exist in English and Arabic (/en and /ar), with a language switch that keeps the user on the same page.

Public website

  • Home
    • Slider — upcoming live courses open for registration
    • Featured meditations & breathwork
    • Pre-recorded courses
    • Categories / types
    • Testimonials, about teaser, newsletter
  • Meditations — listing + filters (type, price, format)
  • Meditation detail
  • Breathwork — listing + filters
  • Breathwork detail
  • Courses — listing (tabs: Upcoming live / Pre-recorded / Past)
  • Course detail (dates, seats left, curriculum, countdown)
  • Search
  • About · FAQ
  • Contact us (form, email, WhatsApp, location, working hours, quick answers)
  • Legal: Terms (incl. no-refund policy), Privacy

Checkout & user account

  • Sign up / Log in / Forgot password
    • Email + password, Google sign-in (optional)
    • Email verification
  • Cart
  • Checkout → PayPal
  • Order confirmation / thank-you page
  • My Account
    • Dashboard (upcoming live sessions, continue watching)
    • My Library — everything owned
    • Course player / content viewer
    • Purchase history & receipts
    • Notifications
    • Wishlist
    • Profile, password, language

Admin backend

  • Dashboard (sales, sign-ups, upcoming courses)
  • Meditations · Breathwork
  • Courses (pre-recorded / live)
  • Categories & types
  • Home slider & site content
  • E-commerce: Orders, Payments, Coupons
  • Contacts (customers / sign-ups)
  • Course registrants & attendance
  • Contact messages
  • Email templates & notifications
  • Media library
  • SEO settings
  • Users & roles
  • Settings (PayPal, email, currency, VAT, timezone)
  • Activity log
04

Content Types & Admin Fields

Every field the admin fills in. All text fields have an English and an Arabic version. Required Optional Live only Pre-recorded only Automatic

4.1 Meditation & Breathwork (same form, separate sections)

FieldRuleNotes
Title (EN / AR)RequiredShown on card and detail page; also used as default SEO title.
URL slugAutomaticGenerated from title, editable.
Short description (EN / AR)RequiredShown on the card (1–2 lines).
Full description (EN / AR)RequiredRich text editor: what's included, benefits, who it's for.
TypeRequiredPick from a list managed by admin (e.g. Stress, Affirmation, Sleep, Anxiety, Energy, Focus). Multi-select allowed.
Cover photoRequiredUploaded in backend; auto-resized for card, detail page and social sharing. Alt text EN/AR.
PriceRequiredEntered in OMR (3 decimals, e.g. OMR 12.000). Optional sale price with start/end date. 0 = free (still requires sign-up to access).
DurationOptionalTotal minutes, shown on the card.
Level / language of contentOptionalBeginner / All levels; content spoken in English / Arabic.
FilesRequiredMultiple uploads, each with title (EN/AR) and order: videos, audios, PDFs. Drag to reorder.
Free previewOptionalShort audio/video sample visible before buying.
Zoom linkOptionalShown to buyers only if filled (e.g. a bonus live Q&A); hidden when empty.
WhatsApp linkOptionalShown to buyers only if filled (e.g. a community group); hidden when empty.
StatusRequiredDraft / Published / Hidden / Archived (hidden or archived = not sold anymore; buyers keep access unless "Archive & delete recordings" is chosen — see 14.3).
Featured on homeOptionalToggle + display order.
SEOOptionalMeta title, meta description (EN/AR), social image — auto-filled if left empty.

4.2 Courses

FieldRuleNotes
Delivery formatRequiredPre-recorded or Live — selected first; the form shows / hides fields accordingly. Pre-recorded courses have no date or seat limit and are available anytime.
Title (EN / AR)Required
Short + full description (EN / AR)RequiredFull description in rich text: outcomes, who it's for, what's included.
Course typeRequiredFor both live and pre-recorded courses, picked from an admin-managed list (Education, Spiritual, Wellness, Coaching…). Shown on the course card and used as a filter on the Courses page, the same way meditation and breathwork types work.
Cover photoRequiredUsed on card, detail page and home slider (a wide slider image can be added separately).
InstructorOptionalName, photo, short bio (EN/AR).
PriceRequiredEntered in OMR. Optional early-bird price with end date.
Start date & timeLive onlySaved in Oman time (Muscat, GMT+4); shown to each user in their own local time too.
DurationRequiredLive: length of the session (or number of sessions × length). Pre-recorded: total length, auto-calculated from segments.
Multiple sessionsLive onlyOption to add more than one date (e.g. 4 weekly sessions) — each gets its own reminder. Registration closes before the first session.
Seats (attendees allowed)Live onlyMax buyers. "X seats left" shown on the page; course turns Sold Out when reached. See decision #3.
Registration closesLive onlyDefault: 60 min before start. Admin can change per course.
Zoom link (+ passcode)Live onlyPasted by admin from the client's own Zoom account. Required before the course can be published, as it goes into the enrolment and reminder emails.
WhatsApp group linkLive onlyPasted by admin (WhatsApp has no API to create groups).
SegmentsPre-recordedUnlimited segments, drag to reorder. Each segment: title (EN/AR), description, video, audio (optional), PDF file(s) (optional), free preview toggle.
Course-level filesOptionalWorkbook / general PDFs for the whole course.
Recordings (after live)Live onlySame segment structure as pre-recorded; filled after the session. "Publish & notify participants" button. (Recordings are downloaded from Zoom by the admin and uploaded here.)
StatusAutomaticMoves by itself through the lifecycle (section 06). Admin can also set Draft or Cancel.
Show in home sliderOptionalLive courses that are open are added automatically; admin can pin or exclude.
SEOOptionalMeta title, description, social image; Course + Event schema generated automatically.
05

User Journeys

Step by step, from discovery to access.

A. Buying pre-recorded content
Meditation, breathwork or pre-recorded course

Browse by section, type or search; open detail page (description, what's included, preview, price).

Add to cart — can continue shopping and add more items.

Checkout — log in or sign up (name, email, phone with country code, password, language).

Pay with PayPal (PayPal account, or card through PayPal where available). Prices are shown in OMR; PayPal charges the equivalent in USD. Coupon field and "I agree to the terms (no refunds)" tick box before payment.

Confirmation page + email with order number, receipt and "Go to my library" button.

Access instantly in My Library: stream videos/audios, open/download PDFs, progress saved.

B. Buying a live course
Seats, Zoom, WhatsApp, recordings

Discover from home slider or Courses → Upcoming; page shows date, time (local), countdown, seats left.

Add to cart & checkout — seat is held for 15 min during payment so it can't be oversold.

Pay with PayPal — the system re-checks that registration is still open and a seat is available before the payment is taken; if not, PayPal is not charged.

Enrolment email: Zoom link + passcode, WhatsApp group link, "Add to calendar" (Google / Apple / Outlook).

Reminders: 24 h before (optional) and 1 h before with Zoom link. Same details always visible in My Account.

After the course: when admin publishes the recordings, user gets an email + site notification and watches them in My Library.

06

Live Course Lifecycle & Statuses

Example: course starts today at 11:00 pm (Oman time).

Created
Admin adds Zoom & WhatsApp links and publishes
Open
Users buy; enrolment email per purchase
Day before
24 h reminder (optional)
10:00 pm
Registration closes · 1 h reminder to all · registrant list to admin
11:00 pm
Session on Zoom
+1 day
Admin reminded to upload recordings (repeats daily)
Published
Participants notified recordings are available

Course statuses

Draft

Being prepared, not visible on the site.

Upcoming · Open

Published, purchase allowed. Shown in home slider.

Sold Out

All seats taken. Optional waitlist button.

Registration Closed

Within the closing window (e.g. last hour). Visible, no purchase.

Live Now

Session in progress.

Completed

Session done; waiting for recordings. Moves to "Past" tab.

Recordings Available

Recordings published to participants.

Cancelled

Set by admin; buyers are moved to the new date or another course (no refunds).

Pre-recorded items only need Draft / Published / Hidden. Status changes for live courses happen automatically based on date, time and seats — the admin doesn't need to update them by hand.
07

Automations & Notifications

All emails are branded, sent in the user's chosen language (EN/AR), and editable from Admin → Email templates. Each also appears in the user's on-site notifications.

#TriggerSent toWhat happens / content
1Sign upUserVerify email + welcome email.
2Order paid (any item)UserOrder confirmation with items, amount paid, receipt PDF (tax invoice when VAT is switched on), link to My Library.
3Order paidAdminNew order alert (name, item, amount). Can be switched off.
4Live course purchasedUserEnrolment email: course date/time (local + Oman time), Zoom link & passcode, WhatsApp group link, add-to-calendar buttons + .ics file.
524 h before startParticipantsReminder with Zoom link (optional per course).
6Registration closes (1 h before)Participants"Your course starts in 1 hour" + Zoom link + WhatsApp link.
7Registration closesAdmin"Registration for [course] is closed" + full registrant list (name, email, phone) in the email, plus a CSV attachment.
8Seats sold outAdminSold-out alert; course status → Sold Out.
91 day after course ended, no recordingsAdmin"Upload the recordings for [course]" with a direct link to the upload screen. Repeats daily until published.
10Admin clicks "Publish & notify"Participants"Recordings for [course] are now available" + button to open them in My Library.
11Course cancelled / rescheduledParticipantsNew date/time + updated calendar invite, or cancellation notice explaining the move to another course.
12Course updated (Zoom/WhatsApp link changed)ParticipantsUpdated access details email.
13Waitlist seat opens (optional)Waitlisted users"A seat is available" — first come, first served.
14Cart left without paying (optional)UserAbandoned cart reminder after a few hours.
15Contact form sentAdmin + userMessage emailed to the admin and saved under Admin → Contact messages; the user gets an automatic "we received your message" email.
08

User Account

The user's personal space to find everything they paid for.

My Library

  • All owned meditations, breathwork and courses with filter by type (Meditation / Breathwork / Course).
  • Live courses show: date & time, status, Zoom link, WhatsApp link, add-to-calendar — then recordings once published.
  • Player: video & audio streaming, PDFs to view/download, segment list, resume where they left off, progress %.
  • Access to everything purchased with no time limit (depends on the storage option chosen in section 14.3).

Purchase History

ColumnExample
Order #ORD-10245
Date9 Nov 2026
ItemCalm Mind 21-Day Course
TypeCourse · Live
Course date20 Nov 2026, 8:00 pm
Amount paidOMR 18.000
StatusPaid
ActionsOpen · Receipt PDF

Notifications

Bell icon with the same messages as emails: enrolment, reminders, recordings available, changes.

Profile & settings

Name, email, phone, country, timezone, preferred language (EN/AR) for site + emails, password, email preferences, delete account.

09

Admin Backend

Everything on the website is editable from here — text, images, files, prices, slider, emails and settings.

Dashboard

  • Sales today / month, by type
  • New sign-ups vs. customers
  • Upcoming live courses with seats sold / total
  • Recordings pending upload
  • Best-selling items

Content management

  • Add / edit / duplicate meditations, breathwork, courses
  • Segment builder with drag & drop
  • Manage types & categories (EN/AR)
  • Media library for all uploads
  • Preview as user before publishing
  • Archive, or archive & delete recordings (with buyer notice)

Home & site content

  • Home slider (auto upcoming courses + pin/exclude/reorder)
  • Homepage sections, banners
  • About, FAQ, legal pages
  • Header / footer menus

E-commerce

  • Orders list: order #, user name, email, item, type, amount, coupon, PayPal transaction ID, date, status
  • Filters: date range, item, type, status; search by name/email
  • Order detail (amount in OMR + USD charged by PayPal)
  • Coupons (%, fixed, expiry, usage limit, per item)
  • Export CSV / Excel

Contacts

  • Everyone who signed up
  • Filter: Customers (bought) / Sign-ups only (never bought)
  • Also filter by item bought, type, language, country, sign-up date, total spent
  • Contact profile: details, orders, library, notes
  • Export CSV; manually grant access to an item

Course registrants

  • Per course: list of buyers (name, email, phone, order date, amount)
  • Seats sold / remaining
  • Mark attendance (optional)
  • Email all registrants
  • Export list

Emails & notifications

  • Edit every automated email in EN/AR
  • Dynamic fields (name, course, date, Zoom link…)
  • Turn each automation on/off, change timings
  • Admin notification recipients
  • Email log (sent / failed)

Users & roles

  • Add admin team members
  • Assign role; custom permissions
  • Two-factor login for admins
  • Activity log (who changed what)

Settings & SEO

  • PayPal and email (Mailgun) keys
  • OMR→USD rate for PayPal; VAT on/off + VAT number
  • Default timezone & closing window
  • SEO per page, sitemap, redirects
  • Analytics / pixel IDs
10

Roles & Permissions

Default roles — Super Admin can adjust permissions or create new roles.

PermissionSuper AdminContent ManagerSales / OrdersInstructorCustomer
Add / edit content & courses✓✓—Own courses—
Upload recordings & segments✓✓—Own courses—
Publish / cancel courses✓✓———
Edit home slider & pages✓✓———
View orders & revenue✓—✓Own courses (no totals)Own only
Coupons✓—✓——
View contacts & export✓—✓Own registrants—
Edit email templates✓✓———
Users, roles, settings, integrations✓————
Access purchased content✓ (all)✓ (all)—Own coursesPurchased only
11

Integrations & Technical Setup

PayPal

PayPal Checkout (Smart Buttons) with server-side order capture and webhooks, so access is granted only after PayPal confirms payment. Prices shown in OMR, charged in USD (PayPal doesn't support OMR). The client needs a PayPal Business account able to receive payments.

Zoom

No API connection: the admin creates the meeting in the client's Zoom account and pastes the link + passcode into the course. The website sends it automatically to buyers. Tip: turn on passcode and waiting room in Zoom so only buyers get in.

Video & audio hosting

Admin uploads files in the backend; they're stored on a secure streaming service (Bunny Stream) with signed, expiring links — content can't be shared or downloaded by non-buyers. Fast playback across GCC.

Email

Mailgun on the client's domain with SPF/DKIM so emails land in inbox. Branded bilingual templates.

Calendar & WhatsApp

Add-to-calendar links (Google, Outlook, Apple) + .ics file. WhatsApp group link stored per course and shown only to buyers. Optional later: WhatsApp reminders via WhatsApp Business API.

Scheduler

Background jobs run every minute to close registration, send reminders, send admin registrant lists and recording reminders exactly on time.

Build standard

  • Next.js website + custom admin backend, hosted on Vercel; PostgreSQL database on Neon.
  • Fully mobile-optimised; player works on phones, tablets and desktop.
  • English / Arabic with full right-to-left layout for Arabic, Arabic-friendly font, separate URLs per language.
  • Secure login (hashed passwords, email verification, rate limiting), admin 2FA, HTTPS, daily backups.
  • Full SEO: meta titles & descriptions, H1/H2 structure, image alt text, hreflang EN/AR, XML sitemap, Course / Event / Product schema.
  • Google Analytics 4, Google Tag Manager, Meta pixel — with purchase events for ads tracking.
  • Cookie consent and privacy policy aligned with Oman's Personal Data Protection Law.
  • Footer legal bar credit: "© TheBuzihub Solutions" linking to web.thebuzihub.com.
12

Website Preview

A clickable demo of how the website could work — try the slider, filters, cart, PayPal checkout, your library, the course player, Arabic, mobile view and the admin panel. The logo and brand name are placeholders; content, prices and dates are dummy examples. The final design follows the client's own branding.

Tip: add a course to the cart, check out, then open "My Library".
brandname.com/en
13

Additional Features — Could Be Added Later

Not included in the current scope or price.

Bundles

Several meditations / breathworks sold together at a lower price.

Memberships

Monthly subscription unlocking the full meditation & breathwork library.

Certificates

Auto-generated PDF certificate when a course is completed.

Reviews & ratings

Buyers rate items; shown on detail pages.

Waitlist

Join list when sold out; notified if a seat opens.

Gift a course

Buy for someone else; they receive an email to claim it.

WhatsApp reminders

Reminders by WhatsApp Business API in addition to email.

14

Investment & Payment

Prices in UAE Dirham (AED) with Omani Rial (OMR) equivalent. Conversion at the fixed rates 1 OMR = 9.551 AED = 2.6008 USD.

14.1 Website design & development — one-time

ItemAEDOMR
Design & development of the full platform
Bilingual EN/AR website (Next.js, mobile-optimised, full SEO), user accounts & library, cart and PayPal checkout, meditation / breathwork / course management (pre-recorded & live), automated emails, home slider, e-commerce & contacts sections, users & roles, admin backend to edit everything — as described in this product map.
AED 6,500≈ OMR 680.530

14.2 Running costs — on the client's own accounts

These services are opened in the client's name, owned by the client and paid by the client directly to each provider. Hosting, database and video are pay-as-you-go, so the monthly amount moves up or down with usage.

ServiceWhat it's forUSD / monthOMR / month
Mailgun (Basic)All automated emails and notifications — up to 10,000 emails/monthUSD 15≈ OMR 5.768
Vercel + NeonWebsite hosting and database — pay as you go≈ USD 50 (estimate, varies with usage)≈ OMR 19.225
Bunny StreamSecure video & audio streaming and file storage — pay as you go, based on storage and how much is watched≈ USD 8–30 (see 14.3)≈ OMR 3–11.5
PayPal BusinessOnline payments — PayPal deducts its transaction fees from each salePer transactionPer transaction
ZoomLive sessions — paid Zoom plan needed for sessions longer than 40 minutesClient's own planClient's own plan
Domain nameWebsite address — renewed yearlyClient's ownClient's own

14.3 Video hosting — monthly forecast & storage options

Videos and audios are stored and streamed on Bunny Stream, not on Vercel, so this is the cost that grows over time. It has two parts: storage (paying to keep the files) and delivery (paying each time someone watches). Delivery is by far the bigger part.

Assumptions

  • Maximum new content: 2 courses + 3 meditations / breathworks per month, about 1 hour of media each, so about 5 hours of new video per month (60 hours a year).
  • About 3 GB stored per hour of video (Bunny keeps several qualities for smooth playback on any connection).
  • About 1 GB delivered per hour watched (average across mobile and desktop).
  • Bunny rates: storage USD 0.01 per GB per month; delivery to the Middle East USD 0.06 per GB.
  • Audio-only content costs much less, about 60 MB per hour, so it's almost free to store and stream.

Storage cost — keeping everything

AfterVideo storedStorage / month
6 months30 h · ~90 GB≈ USD 0.90
1 year60 h · ~180 GB≈ USD 1.80
2 years120 h · ~360 GB≈ USD 3.60
3 years180 h · ~540 GB≈ USD 5.40

Keeping all recordings for 3 years adds only about USD 5 a month.

Viewing level (hours watched by all users per month)DeliveryBunny total — year 1Bunny total — year 3All hosting* — year 1
Low — 100 h (e.g. 50 active buyers × 2 h)≈ USD 6≈ USD 8 (≈ OMR 3.0)≈ USD 11 (≈ OMR 4.4)≈ USD 73 (≈ OMR 28.1)
Medium — 400 h (e.g. 100 active buyers × 4 h)≈ USD 24≈ USD 26 (≈ OMR 9.9)≈ USD 29 (≈ OMR 11.3)≈ USD 91 (≈ OMR 34.9)
High — 1,000 h (e.g. 200 active buyers × 5 h)≈ USD 60≈ USD 62 (≈ OMR 23.8)≈ USD 65 (≈ OMR 25.2)≈ USD 127 (≈ OMR 48.8)

* All hosting = Vercel + Neon (≈ USD 50) + Mailgun (USD 15) + Bunny Stream. These are estimates. Actual cost depends mainly on how much users watch, which also means more sales.

Storage options

Recommended

Option 1 — Keep all recordings

Buyers keep access to everything they paid for, with no time limit. The extra cost is only storage — about USD 2 a month after year 1 and about USD 5 after year 3. This gives the best user experience and fits the no-refund policy, because buyers always keep what they paid for.

Not recommended

Option 2 — Delete recordings after 90 days

Bad for user experience: buyers lose access to recordings and pre-recorded content they paid for. Their purchase history shows items they can no longer open, which leads to complaints, PayPal disputes and fewer repeat purchases. It also saves very little — about USD 1–5 a month — because the cost comes from people watching, not from keeping the files.

Middle option

Option 3 — Admin chooses when archiving

When an item is archived, the admin picks:
• Archive only — removed from sale, buyers keep full access, files kept.
• Archive & delete recordings — removed from sale and files deleted after a set period (e.g. 1 year after purchase or course end).
Buyers are emailed 30 days before any deletion so they can watch in time. The terms must state how long access lasts.

14.4 Maintenance

PlanHours includedAEDOMR
First yearIncluded after launchFree of charge
From year 2 — BasicUp to 2 hours / monthAED 375 / quarter
AED 1,500 / year
≈ OMR 39.261 / quarter
≈ OMR 157.046 / year
From year 2 — StandardUp to 4 hours / monthAED 625 / quarter
AED 2,500 / year
≈ OMR 65.436 / quarter
≈ OMR 261.743 / year
Extra hoursBeyond the plan's hoursAED 80 / hour≈ OMR 8.376 / hour

Covered

  • Technical fixes and bug fixing
  • Framework, library and platform updates
  • Security updates and monitoring
  • Keeping PayPal, Mailgun and video streaming working

Not covered

  • Content updates — adding or editing meditations, courses, texts, images, prices or recordings (done by the client in the admin backend)
  • New features or design changes — quoted separately

Maintenance terms: paid quarterly in advance · minimum 6 months · unused hours do not carry over to the next month.

14.5 Payment schedule — design & development

Milestone%AEDOMR
On signature50%AED 3,250≈ OMR 340.265
After design approval25%AED 1,625≈ OMR 170.133
On delivery25%AED 1,625≈ OMR 170.133
Total100%AED 6,500≈ OMR 680.530