Stripe checkout shows the wrong price
Env-var mismatch and switching between test and live mode.
Stripe Checkout shows a different price than expected.
Why this happens
- Test mode vs live mode mismatch — different price IDs in each
- Env vars in Vercel are out of date
- Stripe product was renamed but Shelfwise still uses old ID
- Multiple prices exist for the same product (Stripe allows this)
Verify env vars
Vercel → Project Settings → Environment Variables. Check:
- STRIPE_STARTER_PRICE_ID
- STRIPE_COMMUNITY_PRICE_ID
The IDs should match Stripe Dashboard → Products → [product] → Pricing.
Check Stripe mode
- Test mode price IDs start with price_test_
- Live mode price IDs start with price_
If your env var has a price_test_ ID but you're in live mode (or vice versa), there's a mismatch.
Update env vars
- Vercel → Settings → Environment Variables → Edit
- Update STRIPE_STARTER_PRICE_ID and STRIPE_COMMUNITY_PRICE_ID to match the right mode
- Redeploy
Stripe price change
If you increase a price in Stripe, existing subscribers stay on their original price (Stripe doesn't auto-update). New signups get the new price.
Discount appearing
If a promo code is auto-applying, check Stripe → Discounts → see which is active. Remove unwanted promos from Settings → Promotional → manage codes.
Still stuck? Email hello@tryshelfwise.comand we'll get back within one business day.