stripe

Billing and payment operations for Stripe: customers, products, prices, invoices, payment links, subscriptions, refunds, disputes, balance. Triggers: create customer, create product, create invoice, generate payment link, query transactions, process refunds, manage subscriptions, view disputes, check balance. Money operations require confirmation. MCP is optional — works with Dashboard/CLI too.

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" with this command: npx skills add heyvhuang/ship-faster/heyvhuang-ship-faster-stripe

Stripe Billing Operations

Execute billing and payment operations on Stripe: customers, products, invoices, payment links, subscriptions, refunds, and disputes.

MCP is optional. This skill works with MCP (auto), Stripe CLI, or Dashboard. See BACKENDS.md for execution options.

Three Hard Rules

  1. Read before write — Before creating customer/product/price, check if it already exists to avoid duplicates
  2. Money operations require confirmation — Refunds, subscription changes, dispute updates must be confirmed before execution
  3. When in doubt, search — If unsure about object ID or parameters, search first, don't guess

Security Rules

Operation TypeRule
Read (list, get, search)Execute directly
Create (customer, product, price, invoice)Check for duplicates first
Money (refund, subscription cancel/update, dispute)Display details → Await confirmation → Execute
ModeTest mode by default. Live requires explicit "live mode" + double confirmation

Dangerous Actions (Require Confirmation)

Before executing these operations:

  1. Display — Show object ID and key fields
  2. Explain impact — Amount, timing, consequences
  3. Await confirmation — Wait for explicit "confirm"/"yes"/"proceed"
  4. Execute and receipt — Return result + object ID + status
ActionRisk
create_refundMoney leaves account
cancel_subscriptionRevenue loss
update_subscriptionContract change
update_disputeLegal implications

Example confirmation prompt:

About to execute refund:
- PaymentIntent: pi_xxx
- Amount: $50.00 (full amount)
- Reason: requested_by_customer

Reply "confirm" to proceed, or "cancel" to abort.

Common Workflows

Create Customer

1. Search/list to check if customer exists (by email)
2. If not exists, create_customer(name, email, metadata)
3. Return cus_xxx + key info

Create Product and Price

1. List products to check if already exists
2. create_product(name, description)
3. create_price(product=prod_xxx, unit_amount=cents, currency)
4. Return prod_xxx + price_xxx

Create and Send Invoice

1. Confirm customer ID (list_customers if unknown)
2. create_invoice(customer=cus_xxx, collection_method, days_until_due)
3. create_invoice_item(invoice=inv_xxx, price=price_xxx, quantity)
4. finalize_invoice(invoice=inv_xxx)
5. Return inv_xxx + hosted_invoice_url

Create Payment Link

1. Confirm price ID (list_prices if unknown)
2. create_payment_link(line_items=[{price, quantity}])
3. Return payment link URL

Refund (Dangerous)

1. list_payment_intents to find target payment
2. Display pi_xxx + amount + customer info
3. Request user confirmation
4. create_refund(payment_intent=pi_xxx, amount?, reason)
5. Return re_xxx + status

Cancel Subscription (Dangerous)

1. list_subscriptions(customer=cus_xxx) to find target
2. Display sub_xxx + status + next billing date
3. Ask: cancel immediately or at period end?
4. After confirmation, cancel_subscription(subscription=sub_xxx)
5. Return cancellation result

Default Configuration

  • Currency: Use user-specified; else use existing object's currency; else ask
  • Amount: Accept decimals, auto-convert to smallest unit (e.g., $19.99 → 1999)
  • Output: Object type + ID + key fields + next steps

Limitations

These operations are NOT available via standard tools:

  • ❌ Create PaymentIntent / charge directly
  • ❌ Create subscription (only list/update/cancel)
  • ❌ Create Promotion Code (only coupon)
  • ❌ Delete objects

For these, use Dashboard or API directly.

File-based Pipeline

When integrating into multi-step workflows:

runs/<workflow>/active/<run_id>/
├── proposal.md                # Requirements / objective
├── context.json               # Known IDs (customer, invoice, etc.)
├── tasks.md                   # Checklist + approval gate
├── evidence/stripe-actions.md # Operations to execute (money ops written here first)
├── evidence/receipt.md        # Results + object IDs
└── logs/events.jsonl          # Optional tool call summary (no sensitive data)

Error Handling

SituationAction
Object doesn't existSearch to find correct ID
Parameter errorCheck documentation for correct format
Insufficient permissionsCheck API key scope
Network errorRetry or check connection

Related Files

  • BACKENDS.md — Execution options (MCP/CLI/Dashboard)
  • SETUP.md — MCP configuration (optional)
  • tools.md — Detailed tool parameters

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.

Coding

review-clean-code

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

tool-programmatic-seo

No summary provided by upstream source.

Repository SourceNeeds Review
General

tool-openclaw

No summary provided by upstream source.

Repository SourceNeeds Review
General

mcp-supabase

No summary provided by upstream source.

Repository SourceNeeds Review