Purchase flow
This flow is distinct from your app’s billing system and is used to sell the ShipFree template.Checkout
POST /api/premium-purchase/checkoutcreates a Stripe Checkout session- Uses
PREMIUM_PURCHASE_STRIPE_SECRET_KEYandPREMIUM_PURCHASE_STRIPE_PRICE_ID
Verification
GET /api/premium-purchase/verifyvalidates the Checkout session- Confirms payment status and session metadata
Webhook
POST /api/webhooks/premium-purchaseprocessescheckout.session.completed- Stores purchase details in
premium_purchase
Success page
After payment, users are sent to the success page where they submit:- GitHub email
- GitHub username
- Twitter handle
src/app/actions/premium-purchase.ts.