Blog
A Secondary 6 student in Hong Kong opens her laptop the night before a chemistry paper, switches the interface to Traditional Chinese, and picks up a tutor’s video lesson exactly where she left off. On the other side of the same platform, that tutor checks how many minutes of his courses were watched this month, because that number is his pay. Both experiences run on one product, and both have to feel fair.
That balance is what this project set out to strike. DSE Web is a bilingual exam-prep subscription platform for Hong Kong’s DSE, built on Laravel as an MVP, where students subscribe to watch tutor-created video lessons and tutors are paid according to how much their courses are actually watched.
Put simply, students subscribe to watch video lessons filtered by subject and grade, every minute of watch time is tracked, and tutors are paid from a shared revenue pool in proportion to their share of the platform’s total watch time. The whole thing works in English and Traditional Chinese and prices in HKD.
The commercial idea is unusual, and it drives every technical decision. Instead of paying tutors a flat fee or a fixed cut per course, DSE Web pools subscription revenue and pays each tutor in proportion to how much of the platform’s total watch time their courses earned. A tutor whose lessons are watched more earns more. That single rule means watch time is not a vanity metric on a dashboard; it is the number payroll depends on, so it has to be measured in minutes and trusted.
Around that core sat the rest of the brief, and each part had its own demands:
DSE Web is built on Laravel, whose subscription billing handles the three plans cleanly through PayPal. Students subscribe monthly at HKD 798 with autopay, yearly at HKD 8,400 without it, or start a two-day trial that takes payment details upfront and collects automatically after 48 hours unless cancelled. Subscribers then see every course. Because a subscription product lives or dies on billing that behaves, this is the kind of SaaS development where getting the plan logic right on day one saves rebuilding it later.
Courses are organised the way students actually study: by subject such as English, Math and Chemistry, then filtered by grade level, each course carrying a description, Vimeo-hosted video lessons, extra resources and quizzes where available. As a student watches, watch time accrues in minutes, and that same figure surfaces on their dashboard and feeds the payout pool.
Tutors follow a controlled path from sign-up to earnings, and it was built to run in order:
Admins sit above all of it: approving tutors, reviewing course quality, managing revenue distribution, and issuing discounts such as a one-time code for a percentage off a bill, along with promotional coupons. Shipping this scope quickly, without cutting the billing or the payout maths, is exactly what MVP development is for: a working, iterable product first, refinement after it is proven with real students and tutors.
Under the hood, this is a Laravel MVP for a bilingual subscription learning platform, and the architecture centres on a few subsystems, each tied to a specific requirement.
The watch-time engine was the piece worth getting exactly right, because it is where a generic subscription template would have failed: it is not just analytics, it is the basis of who gets paid what.
The hardest problems clustered around tying billing, video, watch time and payouts together in two languages. Three subscription rules, monthly autopay, yearly without, and a trial that collects after 48 hours, were handled through one billing layer so each behaves predictably. Watch time was tracked in minutes per course and tutor so the dashboard and the payout share draw on the same trusted number. Tutor pay was tied to a share of pooled revenue by watch time, so the most-watched teachers earn the most. And tutor approval plus course review gave admins genuine control over quality before students ever saw a lesson. This mix of subscription billing, a revenue-share model and fast iteration is common ground for SaaS startups testing a new monetisation idea before committing to a full build.
The outcome is a working platform that behaves correctly for all three roles. A student subscribes on the plan that suits them, browses by subject and grade, watches in the language they prefer, and sees their minutes add up. A tutor gets approved, publishes, and is paid in proportion to how much their teaching is used. An admin approves teachers, oversees quality, distributes revenue and runs promotions. It all runs bilingually and prices in HKD, on a Laravel foundation that is straightforward to extend in later phases.
The platform fits its market because the watch-time model, not a generic course template, sits at its centre. If you are planning a subscription product with a usage-based payout, you can hire Laravel developers who have built this billing-and-payout model, or tell us about your platform and we will map your plans, tracking and payouts to the right architecture.
How does DSE Web pay tutors?
Subscription revenue is pooled, and each tutor is paid a share of that pool equal to their share of the platform’s total watch time, tracked in minutes. A tutor whose courses are watched more earns more, so pay follows how much their teaching is actually used rather than a flat per-course fee.
How do the subscription plans and free trial work?
There are three options: a monthly plan at HKD 798 with autopay, a yearly plan at HKD 8,400 without autopay, and a two-day free trial that takes payment details upfront and collects payment automatically if the student does not cancel within 48 hours. All three are handled through Laravel’s subscription billing with PayPal.
Why build the platform as an MVP?
Building it as an MVP on Laravel gets a complete, working subscription platform in front of real students and tutors quickly, so the watch-time model and payout logic can be validated in practice. The architecture is designed to be extended in later phases rather than rebuilt.
Is the platform bilingual?
Yes. Every screen works in both English and Traditional Chinese, and all pricing is in HKD, so the platform fits its Hong Kong audience without language or currency being a barrier.
How is watch time tracked and used?
Watch time is counted in minutes per course and per tutor as students watch the Vimeo-hosted lessons. That single measured figure drives both the student’s dashboard and the tutor payout calculation, so the number everything commercial depends on is consistent across the platform.