Back to work

LearnPrompting.ca

A marketplace-style learning platform for prompt engineering education

Co-built a marketplace LMS with a Canadian client, owning Stripe Connect payment flow and post-payment permission synchronization to keep transaction state and course access aligned.

LMSMarketplace PaymentsStripe ConnectRole Based Access Control

Overview

The platform was not just a course showcase site. It needed to support instructor onboarding, course publishing, student purchases, and payment-dependent course access as one marketplace-style LMS flow.

Problem Context

The hard part was not course-page implementation. Once students, instructors, and administrators coexist, payout setup, transaction state, and access permissions must stay aligned in one reliable system boundary. Stripe Connect also required the team to define marketplace payout logic before implementation.

Scope

I mainly owned the marketplace payment and access path: instructor onboarding and payout account setup, student purchase flow, post-payment access control, and frontend synchronization with backend payment outcomes.

What I Did

I tied instructor onboarding directly to payout setup so onboarding became a true commercial entry path rather than only registration. On the student side, I connected checkout results and backend payment confirmation so access would unlock only after formal transaction success. I also bridged frontend state, backend status, and webhook-driven updates into one coherent flow to avoid false-success UI and permission desynchronization.

Technical Architecture

The frontend used Next.js 14 + React 18. The backend was built on Firebase (Firestore, Cloud Functions, and Next.js API Routes). Stripe Connect handled instructor payout onboarding, while student purchases ran through Stripe Checkout Sessions with platform fee and fund-splitting logic. Post-payment access updates were driven by webhook events with signature verification and Firestore enrollment writes.

Key Decisions

Challenges

Current Outcome

The platform established its most important operating flow: instructors could complete payout setup and enter selling flow, students could complete purchases, and course access could be granted based on confirmed payment state. LearnPrompting.ca moved beyond static course display into a workable marketplace LMS.

Remote Client

Cross-Border Collaboration

3-Month Build

Delivery Window

Marketplace Payment

Stripe Connect Flow