stripe-connect

Implement Stripe Connect for marketplace and platform payments: connected accounts, onboarding, charge flows, payouts, and platform fees. Use when: (1) Building a marketplace with sellers/service providers, (2) Creating a platform that routes payments to third parties, (3) Onboarding connected accounts (Standard, Express, Custom), (4) Implementing direct charges, destination charges, or separate charges and transfers, (5) Managing platform fees and payout schedules, (6) Building OAuth flows for account connection. Triggers on: marketplace, platform, connected account, stripe connect, onboarding, destination charge, direct charge, transfer, platform fee, express account, standard account, custom account.

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-connect" with this command: npx skills add zef-computers/drivers/zef-computers-drivers-stripe-connect

Stripe Connect

Build marketplace and platform payment flows with connected accounts, flexible charge routing, and automated payouts.

Priority Rules

RuleImpactFile
Default to Express accountsHighrules/account-choose-express-default.md
Account type is permanentHighrules/account-never-change-type.md
Request card_payments + transfers togetherHighrules/account-request-both-capabilities.md
Prefer destination chargesHighrules/charge-use-destination.md
Use on_behalf_of for statement descriptorsHighrules/charge-include-on-behalf-of.md
Require on_behalf_of for cross-regionHighrules/charge-cross-region-on-behalf-of.md
Use source_transaction for SCTHighrules/charge-sct-use-source-transaction.md
Reverse transfers on refundHighrules/charge-reverse-transfer-on-refund.md
Verify charges_enabled before processingHighrules/onboard-check-capabilities.md
Implement refresh_url handlerHighrules/onboard-handle-refresh.md
Use webhooks to confirm onboardingHighrules/onboard-use-connect-webhooks.md
No hosted onboarding in WebViewsHighrules/onboard-no-webview.md
Validate fee < charge amountHighrules/fee-never-exceed-charge.md
Never combine both fee methodsHighrules/fee-not-both-methods.md
Check payouts_enabled before payoutsHighrules/payout-verify-enabled.md
Handle payout failuresHighrules/payout-handle-failures.md
Monitor account.updated eventsHighrules/webhook-listen-account-updated.md
Set up Connect webhook endpointHighrules/webhook-setup-connect-endpoint.md
Handle deauthorization eventsHighrules/webhook-handle-deauthorization.md
Prefer application_fee_amountMediumrules/fee-use-application-fee.md
Refund fees on full refundsMediumrules/fee-refund-with-charge.md
Prefill known info at creationMediumrules/onboard-prefill-known-info.md
Verify instant payout eligibilityMediumrules/payout-check-instant-eligibility.md
Use controller properties for new integrationsMediumrules/account-use-controller-properties.md

Quick Reference

Account Type Decision Tree

How much onboarding control do you need?
|
+-- Sellers manage their own Stripe dashboard?
|   -> Standard accounts (least platform liability)
|
+-- Platform-branded onboarding, Stripe-hosted dashboard?
|   -> Express accounts (balanced control)
|
+-- Full white-label, platform owns entire UX?
    -> Custom accounts (most control, most responsibility)
FeatureStandardExpressCustom
OnboardingStripe-hostedStripe-hosted (branded)Platform builds
DashboardFull StripeExpress dashboardNone (platform builds)
BrandingStripePlatform + StripePlatform only
LiabilityAccount holderSharedPlatform
EffortLowMediumHigh

Charge Flow Decision Tree

Who should the customer see on their statement?
|
+-- The connected account (seller)?
|   -> Direct charges
|      Customer -> Connected Account (platform takes fee)
|
+-- The platform?
|   -> Destination charges
|      Customer -> Platform -> Connected Account
|
+-- Complex splits / delayed routing?
    -> Separate Charges and Transfers
       Customer -> Platform -> Multiple Connected Accounts

Quick Start: Express + Destination Charges

// 1. Create Connected Account
const account = await stripe.accounts.create({
  type: 'express',
  country: 'US',
  email: 'seller@example.com',
  capabilities: {
    card_payments: { requested: true },
    transfers: { requested: true },
  },
});

// 2. Generate Onboarding Link
const accountLink = await stripe.accountLinks.create({
  account: account.id,
  refresh_url: 'https://example.com/reauth',
  return_url: 'https://example.com/return',
  type: 'account_onboarding',
});

// 3. Create Payment with Platform Fee
const paymentIntent = await stripe.paymentIntents.create({
  amount: 10000,
  currency: 'usd',
  application_fee_amount: 1500,
  transfer_data: {
    destination: 'acct_connected_xxx',
  },
});

Critical Webhooks

EventAction
account.updatedCheck charges_enabled, payouts_enabled
account.application.deauthorizedHandle disconnection
payment_intent.succeededConfirm transfer completed
transfer.createdTrack money movement
payout.paid / payout.failedMonitor seller payouts

Reference Docs

ReferenceDescription
references/account-types.mdStandard vs Express vs Custom: creation, capabilities, dashboard, liability, migration
references/charge-flows.mdDirect, destination, SCT: code examples, fund flows, refunds, disputes
references/onboarding.mdAccount Links, embedded onboarding, refresh/return URLs, verification
references/platform-fees.mdApplication fees, transfer amounts, fee calculation, pricing models
references/payouts.mdSchedules, instant payouts, manual payouts, cross-border, failures
references/oauth.mdOAuth flow for Standard accounts: authorization, token exchange, deauthorization
references/compliance.mdKYC requirements, 1099 reporting, identity verification, cross-border

How to Use

  1. Choosing an account type: Start with rules/account-choose-express-default.md, then consult references/account-types.md for full comparison
  2. Implementing a charge flow: Start with rules/charge-use-destination.md, then consult references/charge-flows.md for code examples
  3. Building onboarding: Check rules prefixed with onboard-, then consult references/onboarding.md for full flow
  4. Setting up fees: Check rules prefixed with fee-, then consult references/platform-fees.md for calculation patterns
  5. Configuring payouts: Check rules prefixed with payout-, then consult references/payouts.md for schedules and instant payouts
  6. Webhook integration: Check rules prefixed with webhook-, and set up Connect-specific webhook endpoint
  7. OAuth for Standard accounts: Consult references/oauth.md for full authorization flow
  8. Compliance: Consult references/compliance.md for KYC, tax reporting, and cross-border requirements

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.

General

stripe-revenue

No summary provided by upstream source.

Repository SourceNeeds Review
General

stripe-billing

No summary provided by upstream source.

Repository SourceNeeds Review
General

stripe-treasury

No summary provided by upstream source.

Repository SourceNeeds Review