SomEducation
E-learning with manual payment verification
A premium learning platform with student, teacher, and admin flows — designed for regions where automated payment gateways are limited or unreliable.

Problem
Somali learners needed a trusted way to buy and access courses in markets where automated payment gateways are limited, unreliable, or unavailable. Pretending every user has Stripe was not an option.
Business context
The business model required paid courses, teacher tooling, and admin oversight. Payment confirmation had to be human-verifiable without making access feel broken or arbitrary.
Research
Studied how money actually moves locally and where trust breaks in online course purchases. Designed manual payment verification as a first-class workflow rather than a support ticket afterthought.
Architecture
Next.js application with Convex for application data and Clerk for authentication. Role-based surfaces for students, teachers, and admins. Course catalog and dashboards sit alongside an admin payment approval queue that gates access until verification succeeds.
Tech stack
Next.js · React · TypeScript · Convex · Clerk · Tailwind CSS
Key features
- Course browsing and enrollment flows
- Student, teacher, and admin role experiences
- Manual payment verification with admin approval
- Teacher dashboards for course delivery
- Auth and role gates via Clerk
Engineering challenges
- Making manual payments feel trustworthy and fast
- Preventing course access before approval without confusing students
- Keeping teacher and admin tools simple under real operational load
Tradeoffs
- Accepted human-in-the-loop payments instead of forcing a gateway that would exclude users
- Chose explicit admin approval over optimistic access
- Prioritized role clarity over a single undifferentiated dashboard
Results
- Live at someducation.com
- Student, teacher, and admin flows in production
- Manual payment verification operating as a core product path
Lessons learned
- The best UX sometimes accepts reality — design for the payment rails you have
- Approval queues are product surfaces, not back-office chores
- Education platforms fail when roles blur; keep each audience’s job obvious
Performance
App Router pages for catalog and dashboards with authenticated role routing. Payment state is explicit so UI never implies access the backend has not granted.
Future improvements
- Faster approval notifications for students
- Richer teacher analytics without cluttering the student experience
- Optional gateway support where infrastructure allows — without removing manual flow
