stripe-integration

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.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "stripe-integration" with this command: npx skills add hainamchung/agent-assistant/hainamchung-agent-assistant-stripe-integration

Stripe Integration

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

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

spring-boot-engineer

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

copywriting

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

azure-ai-voicelive

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

cpp-pro

No summary provided by upstream source.

Repository SourceNeeds Review
stripe-integration | V50.AI