← ClaudeAtlas

stripelisted

Stripe integration patterns - API keys, webhooks, checkout, subscriptions. Loads when working with payments.
djnsty23/claude-auto-dev · ★ 3 · AI & Automation · score 72
Install: claude install-skill djnsty23/claude-auto-dev
# Stripe Integration Best Practices Based on [stripe/ai](https://github.com/stripe/ai) (MIT). Latest API version: 2026-01-28. ## API Selection ### Checkout Sessions (preferred for on-session payments) - Supports one-time payments and subscriptions - Handles taxes, discounts, and payment method selection - Use Stripe-hosted Checkout or Embedded Checkout ### Payment Intents (for off-session or custom flows) - Use when you need full control over the checkout UI - Required for off-session payments (saved cards, recurring) ### Deprecated (never use) - **Charges API** - migrate to Checkout Sessions or Payment Intents - **Sources API** - use Payment Methods instead - **Tokens API** - use Confirmation Tokens for card inspection - **Legacy Card Element** - use Payment Element instead ## Frontend Integration **Priority order:** 1. **Stripe-hosted Checkout** - fastest, fully managed 2. **Embedded Checkout** - Stripe UI inside your page 3. **Payment Element** - custom layout, Stripe handles payment methods Enable dynamic payment methods in the Stripe Dashboard rather than hardcoding `payment_method_types`. ## Environment Variables ```bash # .env.local (never commit) STRIPE_SECRET_KEY=sk_test_... NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_... STRIPE_WEBHOOK_SECRET=whsec_... # .env.example (commit this) STRIPE_SECRET_KEY= NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY= STRIPE_WEBHOOK_SECRET= ``` Keep `sk_` keys server-side only. Only `pk_` keys may be exposed to the browser. ## Webhook Ve