Replace every placeholder Stripe price_... in config.php with the real Price ID for each course.

Keep success_url and cancel_url in the Stripe config section.

Add one entry in config for each course/app you want to sell.

Update the subscribe page to show one card per course/app.

Add a logo/icon for each course card.

Make each Subscribe button send the selected course key to the backend.

Update SubscriptionController.php so it reads the selected course key and uses the matching Stripe Price ID.

Make sure Checkout Session creation passes the correct price for that course only.

Update the subscriptions table so it stores which course/app the user bought.

Update the webhook handler so it saves the right course/app when Stripe sends events.

Make sure access checks are per app/course, not just a single global subscription.

Update the dashboard to show which apps the user currently has access to.

Test one course end-to-end in Stripe sandbox before doing the rest.

Remove or rotate any Stripe keys you pasted publicly.