Fulfillment Guide
Stripe Integration Setup Guide
Complete guide to setting up Stripe webhooks and subscription management
✅ Pricing Page Updated!
All Stripe payment links are now live on the pricing page.
- ✅ Starter: $29/month or $290/year
- ✅ Builder: $89/month or $890/year
- ✅ Accelerator: $149/month or $1490/year
- ✅ Enterprise: $299/month or $2990/year
1Go to Stripe Dashboard
Make sure you're in Test Mode first (toggle in top right)
2Click "+ Add endpoint" button
This will open a form to configure your webhook
3Configure Endpoint URL
yourdomain.com with your actual domain!4Select Events to Listen For
checkout.session.completedcustomer.subscription.createdcustomer.subscription.updatedcustomer.subscription.deletedinvoice.payment_succeededinvoice.payment_failed5Copy Webhook Signing Secret
After creating the endpoint, click "Reveal" next to the signing secret
whsec_xxxxxxxxxxxxxxxxxxxxxx✅ Successful Payment Test Card
4242 4242 4242 424212/25 (any future date)123 (any 3 digits)12345 (any 5 digits)❌ Declined Payment Test Card
4000 0000 0000 0002Use this to test payment failure handling
🔄 Testing Flow
- 1Go to pricing page and click "Start Free Trial"
- 2Enter test card details
- 3Complete checkout → Should redirect to SubscriptionSuccess page
- 4User's subscription_tier should update in database
- 5Check Stripe Dashboard → Events → Should see webhook delivered
- 1Toggle to Live Mode
In Stripe Dashboard (top right), switch from Test → Live
- 2Recreate All 4 Products
Starter, Builder, Accelerator, Enterprise with monthly + annual prices
- 3Create Payment Links
8 payment links total (4 products × 2 billing periods)
- 4Set Up Live Webhook
Same process as Test Mode, but in Live mode
- 5Update Code with Live Links
Replace test links with live links in Pricing page
checkout.session.completed
Fired when user completes checkout. Updates user's subscription_tier and stripe_customer_id
customer.subscription.created
New subscription created. Store stripe_subscription_id and set subscription_status: 'active'
customer.subscription.updated
Subscription changed (upgrade/downgrade). Update subscription_tier accordingly
customer.subscription.deleted
Subscription cancelled. Set subscription_status: 'canceled' and revert to free tier
invoice.payment_succeeded
Monthly/annual payment succeeded. Update subscription_renewal_date
invoice.payment_failed
Payment failed. Set subscription_status: 'past_due' and send notification
Questions? Email support@launchpad.com