Stripe API Integration
// Complete Stripe API integration for payments, subscriptions, checkout, invoices, webhooks, Connect, Issuing, Terminal, and Treasury.
Stripe API Integration
Complete Stripe API reference. See auxiliary files for detailed operations.
Quick Start
curl https://api.stripe.com/v1/balance -u "$STRIPE_SECRET_KEY:"
Setup
On first use, read setup.md. Preferences stored in ~/stripe-api-integration/memory.md.
When to Use
Any Stripe operation: payments, subscriptions, invoices, checkout, webhooks, Connect, Issuing, Terminal, Treasury.
Architecture
~/stripe-api-integration/
├── memory.md # Account context
└── webhooks.md # Webhook configs
Quick Reference
| Topic | File |
|---|---|
| Setup & memory | setup.md, memory-template.md |
| Payments, refunds, disputes | payments.md |
| Customers, products, prices | customers.md |
| Subscriptions, usage billing | subscriptions.md |
| Checkout Sessions | checkout.md |
| Connect (marketplaces) | connect.md |
| Webhooks & events | webhooks.md |
| Invoices, quotes, tax | invoices.md |
| Issuing, Terminal, Treasury, Identity, Radar | advanced.md |
Core Rules
- Test mode first — Use
sk_test_*keys. Test card:4242424242424242 - Amounts in cents — $10.00 = 1000
- Idempotency keys — Prevent duplicate charges
- Webhooks required — Never trust API response alone
- Expand objects — Use
?expand[]=customerfor related data - Pagination — Use
starting_afterfor large lists - Error handling — See
payments.mdfor error codes
Authentication
Required environment variables:
STRIPE_SECRET_KEY— API key for all Stripe operations (starts withsk_test_orsk_live_)STRIPE_WEBHOOK_SECRET— Signing secret for webhook verification (starts withwhsec_)
curl https://api.stripe.com/v1/customers -u "$STRIPE_SECRET_KEY:"
Common Traps
- Amount in dollars not cents → 100x wrong charge
- No idempotency key → duplicate charges
- Skip webhook verification → accept fake events
- Ignore
requires_action→ 3DS stuck
External Endpoints
| Endpoint | Purpose |
|---|---|
https://api.stripe.com/v1/* | API |
Security & Privacy
Environment variables used:
STRIPE_SECRET_KEY— for API authenticationSTRIPE_WEBHOOK_SECRET— for webhook signature verification
Sent to Stripe: Customer info, payment data via api.stripe.com Stays local: API keys (never logged), ~/stripe-api-integration/ preferences Never: Log card numbers, skip webhook verification, expose keys
Trust
This skill sends data to Stripe (stripe.com).
Related Skills
Install with clawhub install <slug> if user confirms:
api— REST API patternssaas— SaaS metricswebhook— Webhook patterns
Feedback
- If useful:
clawhub star stripe-api-integration - Stay updated:
clawhub sync