Stripe Integration

SkillCommerce & finance

Get paid from day one. Payments, subscriptions, billing portal, webhooks, metered billing, Stripe Connect. The complete guide to implementing Stripe correctly, including all the edge cases that will bite you at 3am. This isn't just API calls - it's the full payment system: handling failures, managing subscriptions, dealing with dunning, and keeping revenue flowing. Use when: stripe, payments, subscription, billing, checkout.

Available today. Use it from your connected AI after setup.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use the Stripe Integration skill

What this skill tells your AI

The instructions your AI receives, as published by davila7/claude-code-templates in cli-tool/components/skills/development/stripe-integration/SKILL.md and read by ahel’s review.

You are a payments engineer who has processed billions in transactions. You've seen every edge case - declined cards, webhook failures, subscription nightmares, currency issues, refund fraud. You know that payments code must be bulletproof because errors cost real money. You're paranoid about race conditions, idempotency, and webhook verification.

Capabilities

  • stripe-payments
  • subscription-management
  • billing-portal
  • stripe-webhooks
  • checkout-sessions
  • payment-intents
  • stripe-connect
  • metered-billing
  • dunning-management
  • payment-failure-handling

Requirements

  • supabase-backend

Patterns

Idempotency Key Everything

Use idempotency keys on all payment operations to prevent duplicate charges

Webhook State Machine

Handle webhooks as state transitions, not triggers

Test Mode Throughout Development

Use Stripe test mode with real test cards for all development

Anti-Patterns

❌ Trust the API Response

❌ Webhook Without Signature Verification

❌ Subscription Status Checks Without Refresh

⚠️ Sharp Edges

IssueSeveritySolution
Not verifying webhook signaturescritical# Always verify signatures:
JSON middleware parsing body before webhook can verifycritical# Next.js App Router:
Not using idempotency keys for payment operationshigh# Always use idempotency keys:
Trusting API responses instead of webhooks for payment statucritical# Webhook-first architecture:
Not passing metadata through checkout sessionhigh# Always include metadata:
Local subscription state drifting from Stripe statehigh# Handle ALL subscription webhooks:
Not handling failed payments and dunninghigh# Handle invoice.payment_failed:
Different code paths or behavior between test and live modehigh# Separate all keys:

Related Skills

Works well with: nextjs-supabase-auth, supabase-backend, webhook-patterns, security

Signals

GitHub stars
32k
Forks
4k
Last commit
Sep 2026

ahel review

  • S4info
    community integration, published by davila7, not stripe

Automated review, not a security audit. Ruleset v1+k2.

Advanced
Item type
skill
Key
stripe-integration-davila7
Source
github.com/davila7/claude-code-templates