Direct checkout with Stripe
No cart, one click to payment — and why access is created by the payment confirmation.
Why no cart
A course is an unlimited digital good. There is no stock, nothing to reserve, and in practice hardly anyone buys two courses at once. A cart would be furniture from a different shop — one more step between decision and payment, with nothing in return.
The one sentence that saves trouble
Access is created by the confirmed payment event, not by the return to the browser. Close the tab after paying, lose the connection or hit back — you still get your course. The browser return only displays, it decides nothing.
Duplicate notifications are planned for
Payment providers sometimes report the same event more than once. Every notification therefore takes effect only once — two notifications for one payment create no second access and no second confirmation email.
The provider is replaceable
Stripe is the choice, not the prerequisite. The connection sits behind its own seam, so a switch does not touch the rest of the platform.