What is Stripe Connect?
Stripe Connect is our recommended payment solution for platforms and marketplaces that need to facilitate payments between multiple parties. Whether you're building a marketplace where sellers list products, a SaaS platform that charges subscription fees on behalf of users, or any business model that involves moving money between customers and service providers, Connect provides the infrastructure to do so securely and at scale.
Connect is a specialized product within the Stripe ecosystem designed specifically for platforms and marketplaces. Unlike standard Stripe payments where a single entity accepts funds from customers, Connect enables platforms to orchestrate complex payment flows involving multiple participants--the platform itself, sellers or service providers (called connected accounts), and end customers.
The core value proposition centers on three key capabilities. First, Connect provides a unified API for onboarding and managing the payment accounts of your users, eliminating the need to build custom banking relationships or navigate complex compliance requirements. Second, the platform handles the intricate logic of splitting payments, routing funds to multiple recipients, and managing the timing of payouts. Third, Connect provides built-in compliance handling for the regulatory obligations that arise when facilitating payments on behalf of others, including Know Your Customer (KYC) requirements and anti-money laundering (AML) compliance.
How Connect Differs from Standard Stripe
Standard Stripe integration works well for businesses that accept payments directly from their own customers into their own Stripe account. The business is the sole recipient of funds, and all transactions flow through a single Stripe account. This model suits most e-commerce stores, SaaS companies, and service businesses that bill customers directly.
Connect extends this model to scenarios where your platform sits between payers and payees. When a customer purchases a service through your platform, the payment must be split between your platform (which may take a fee or commission), the service provider who fulfilled the order, and potentially other parties like tax authorities or insurance providers. Connect provides the infrastructure to coordinate these multi-party transactions while maintaining a seamless experience for all participants.
For platforms building sophisticated payment experiences, understanding how Connect integrates with other Stripe products like Payment Intents and Webhooks is essential for a complete implementation.
Key Capabilities
- Multi-party payments: Orchestrate payments between platforms, sellers, and customers
- Unified onboarding: Onboard and manage connected accounts through a single API
- Payment splitting: Automatically route funds to multiple recipients
- Instant payouts: Enable immediate access to earnings for sellers
- Compliance handling: Built-in KYC and AML compliance management
Account Types
Connect supports several account types, each designed for different levels of platform control and user experience requirements. Understanding the differences between these account types is fundamental to designing your integration correctly.
Standard Accounts
Standard accounts represent the simplest connected account type. With Standard accounts, connected accounts manage their own Stripe dashboard, control their own payouts, and maintain direct relationships with Stripe for support and compliance purposes. The platform has limited visibility into the connected account's activities and cannot control certain account settings.
Standard accounts work well for marketplaces where you want to minimize your regulatory burden and prefer that your sellers maintain their own Stripe relationships. The trade-off is less control over the seller experience and potential inconsistency in how the payment flow appears to end customers. Sellers onboard directly with Stripe through an OAuth-style flow, and your platform's involvement is primarily in initiating charges and optionally receiving transfers of funds.
Express Accounts
Express accounts provide a middle ground between the simplicity of Standard accounts and the full customization of Custom accounts. With Express accounts, the platform controls the onboarding flow and can customize the experience to match its brand, while Stripe handles the complexity of identity verification, compliance checks, and account management.
Express accounts give platforms more control over the user experience while offloading significant operational complexity to Stripe. Connected accounts created through Express have a streamlined dashboard they can access to view their balance, understand their payout schedule, and manage their payment methods. The platform can also access this data through the API to provide reporting and analytics to its users.
The Express account type is often the best choice for platforms that want to create a cohesive brand experience while avoiding the overhead of building custom compliance and onboarding systems. Stripe handles the heavy lifting of identity verification, document collection, and ongoing compliance monitoring, allowing your team to focus on your core product.
Custom Accounts
Custom accounts provide the highest degree of control and customization. With Custom accounts, the platform builds a completely branded experience for its connected accounts, including fully customizable onboarding flows, branded dashboards, and complete control over how funds are displayed and managed.
Custom accounts require the most investment to implement but offer the greatest flexibility. The platform must handle more of the compliance burden directly, including collecting and verifying identity information according to Stripe's requirements. In exchange, the platform owns the entire user experience and can differentiate its offering through the financial experience it provides.
For platforms needing detailed account management capabilities, our guide on Account covers additional configuration options and best practices for managing connected accounts at scale.
Account Type Comparison
| Feature | Standard | Express | Custom |
|---|---|---|---|
| Platform Control | Minimal | Moderate | Maximum |
| Regulatory Burden | Low | Medium | High |
| Onboarding Complexity | Low | Medium | High |
| Branding Control | None | Partial | Full |
| Development Effort | Low | Medium | High |
| Best For | Minimal involvement | Balanced approach | Full customization |
The choice between account types involves trade-offs across several dimensions. Standard accounts minimize platform complexity but also minimize platform control. Express accounts provide a balanced approach with moderate complexity and moderate control. Custom accounts offer maximum control but require maximum investment.
Consider your regulatory obligations, your brand requirements, and your team's capacity to build and maintain complex financial interfaces. For most platforms, Express accounts provide the optimal balance, but your specific situation may warrant a different choice.
Everything you need to build a successful platform
Payment Routing
Split payments between multiple recipients at the time of purchase or later based on your business logic
Application Fees
Earn revenue by specifying a percentage or fixed amount retained by your platform per transaction
Instant Payouts
Enable connected accounts to receive funds within minutes, not days
Compliance Management
Stripe handles KYC verification and ongoing compliance monitoring
Webhook Events
Real-time notifications for payments, transfers, account updates, and disputes
Reporting Tools
Built-in analytics and reporting for both platforms and connected accounts
How Money Moves Through Connect
Understanding the payment flow architecture is essential for designing your integration correctly. Connect provides several mechanisms for routing funds between parties, each suited to different business requirements.
Payment Flow Architecture
When a customer makes a payment through your Connect-enabled platform, the transaction follows a specific path. The customer initiates a payment, which is processed through your platform's Stripe account. At settlement, the funds are directed according to rules your platform defines--some may go to connected accounts, some may be held for later payout, and some may be transferred to your platform as fees or commissions.
The movemoney capability is what distinguishes Connect from standard payment processing. Rather than simply accepting funds into a single account, Connect enables sophisticated routing of funds to multiple recipients based on your business logic. This routing can happen at the time of payment or at a later time when you choose to execute transfers.
Direct Charges
Direct charges are the simplest payment flow in Connect. When you create a direct charge, the payment is immediately routed to the connected account specified in the charge request. Your platform's Stripe account acts as an intermediary, collecting the payment from the customer and immediately transferring the specified amount to the connected account.
// Direct charge example
const charge = await stripe.charges.create({
amount: 5000,
currency: 'usd',
source: 'tok_visa',
application_fee_amount: 500,
transfer_data: {
destination: 'acct_1234567890',
},
});
Direct charges work well when your platform's role is primarily facilitating the transaction and you want the connected account to receive funds as quickly as possible. The connected account bears the Stripe fees for the transaction, and your platform may receive its commission through a separate mechanism or as part of a more complex flow.
Destination Charges
Destination charges provide more control over the payment flow. With a destination charge, the payment is first collected into your platform's Stripe account, then automatically transferred to a connected account as a destination. This pattern gives your platform the opportunity to inspect the payment, apply platform-level logic, and optionally modify the transfer amount before funds move to the connected account.
// Destination charge example
const charge = await stripe.charges.create({
amount: 5000,
currency: 'usd',
source: 'tok_visa',
transfer_data: {
destination: 'acct_1234567890',
},
});
Destination charges are useful when your platform needs to apply fees, hold funds for escrow, or otherwise modify the payment before funds reach the connected account. The payment flows through your platform's account, giving you full visibility and control over the transaction.
Separate Charges and Transfers
For the most complex payment flows, Connect supports separating the charge from the transfer entirely. In this model, your platform collects payments into its own account, holds funds as needed, and later initiates transfers to connected accounts based on your own scheduling and logic. This approach provides maximum flexibility but also requires your platform to build the logic for when and how much to transfer.
// Separate charge and transfer
// Step 1: Create the charge
const charge = await stripe.charges.create({
amount: 5000,
currency: 'usd',
source: 'tok_visa',
});
// Step 2: Later, create the transfer
const transfer = await stripe.transfers.create({
amount: 4000,
currency: 'usd',
destination: 'acct_1234567890',
transfer_group: 'ORDER_123',
});
Separate charges and transfers suit platforms that need to aggregate payments across multiple transactions before distributing to connected accounts, platforms that operate in escrow-like arrangements where payment timing is decoupled from fulfillment, or platforms that need to apply complex business rules to determine transfer amounts.
Money Flow Diagram
┌─────────────┐ ┌──────────────┐ ┌─────────────────────┐
│ Customer │────▶│ Stripe │────▶│ Platform Account │
└─────────────┘ │ Processing │ │ (Collects Funds) └─────────────┐
└──────────────┘ │
│
┌────────────────────────────────────────────┘
│
▼
┌─────────────────┐ ┌────────────────────────────────────────────┐
│ Platform Fee │◀────│ Transfer Rules │
│ (Application) │ │ • Direct: Immediate to connected account │
└─────────────────┘ │ • Destination: After inspection │
│ • Separate: On your schedule │
└────────────────────────────────────────────┘
│
▼
┌──────────────────────────┐
│ Connected Account │
│ (Seller/Provider) │
└──────────────────────────┘
Understanding how payment flows work is foundational for any platform. For more advanced scenarios involving tax calculation and compliance, explore our Tax documentation.
Onboarding Connected Accounts
The appinstall process refers to how sellers, service providers, or other users create their connected accounts on your platform. A smooth onboarding experience is critical for converting users into active participants on your marketplace.
Onboarding Flow Design
Regardless of which account type you choose, the onboarding flow has common elements. You must collect information about the connected account owner, verify their identity to meet regulatory requirements, collect their banking information for payouts, and obtain their agreement to your platform's terms.
Stripe provides hosted onboarding flows for Standard and Express accounts, which means Stripe handles the UI, data collection, and verification process. For Express accounts, you can customize the branding and user flow while Stripe manages the complexity of document collection and identity verification. For Standard accounts, the user is redirected to Stripe to complete their account setup.
For Custom accounts, you build the entire onboarding experience yourself, using Stripe's API to collect and submit the required information. This gives you complete control over the user experience but requires significant development effort and ongoing compliance responsibility.
Verification Requirements
Regulatory requirements dictate what information you must collect and verify before a connected account can receive payouts. These requirements vary by jurisdiction and account type but typically include business formation documents, personal identity verification for account owners, tax identification numbers, and banking information for fund disbursement.
Express and Standard accounts offload much of this verification burden to Stripe, which has built sophisticated systems for collecting, verifying, and storing the required documents and information. Custom accounts require your platform to handle verification directly, with Stripe providing guidance on requirements and API endpoints for submitting verified information.
Account Status Management
Throughout the lifecycle of a connected account, its status may change based on verification requirements, payout delays, or regulatory flags. Your platform should monitor account status through webhooks or API queries to ensure connected accounts remain in good standing and can receive payouts.
When an account requires additional verification or faces restrictions, your platform should guide the connected account through the remediation process. For Express accounts, this often involves redirecting the user to complete additional verification steps. For Custom accounts, your platform must prompt users for the required information and submit it through the API.
Best Practices for Onboarding
- Start simple: Begin with Stripe-hosted onboarding to reduce development complexity
- Guide users: Provide clear instructions on what information is needed and why
- Handle errors gracefully: Build retry logic for failed verification attempts
- Test thoroughly: Create test accounts in various states to verify your flow handles all scenarios
- Monitor drop-off: Track where users abandon the onboarding process and optimize those steps
Common Pitfalls to Avoid
- Blocking users: Don't require completed verification before allowing basic functionality
- Ignoring requirements: Different jurisdictions have different requirements--don't assume one size fits all
- Poor error messages: Clear, actionable error messages help users complete onboarding faster
- Security gaps: Protect sensitive information collected during onboarding
- Missing webhooks: Always subscribe to account events to stay updated on status changes
Building a robust onboarding flow requires careful attention to both user experience and security. Platforms looking to accelerate their development can benefit from our web development services that specialize in payment integration implementations.
Instant Payouts
The instant payouts stripe capability enables connected accounts to receive funds immediately rather than waiting for the standard payout schedule. This feature is increasingly expected by sellers and service providers who want immediate access to their earnings.
How Instant Payouts Work
Standard Connect payouts follow a rolling schedule, typically delivering funds to connected accounts within two to three business days after a successful payment. Instant payouts accelerate this timeline, delivering funds to the connected account's bank account within minutes.
When you enable instant payouts for a connected account, Stripe initiates an immediate transfer to the connected account's debit card or bank account. The transfer uses Faster Payments or similar instant payment rails to achieve near-immediate availability. Your platform pays a small additional fee for each instant payout, but this cost is often justified by the improved experience for your sellers.
Enabling Instant Payouts
Instant payouts must be explicitly enabled for connected accounts and for your platform. For Express accounts, you can enable instant payouts through the dashboard or API, and connected accounts can choose to use instant payout when requesting a withdrawal. For Custom accounts, instant payouts are available but require additional configuration and potentially additional agreements with Stripe.
Your platform may also choose to subsidize instant payouts for connected accounts, paying the instant payout fee on behalf of your users as a value-added service. This can be a significant differentiator for platforms competing for seller attention.
Implementation Guidance
- Enable at platform level: Contact Stripe to enable instant payouts for your Connect platform
- Configure per account: Enable instant payouts for individual connected accounts as needed
- Display availability: Show users whether instant payouts are available for their bank
- Handle failures gracefully: Implement fallback to standard payouts if instant fails
- Track usage: Monitor instant payout usage patterns to understand user preferences
Fee Structure
Instant payouts incur a small additional fee per transaction. The exact fee varies by region and arrangement with Stripe. For US transactions, instant payouts typically cost a small percentage plus a fixed amount per transfer. Volume discounts may be available for platforms with significant instant payout usage.
Consider whether to pass this fee to connected accounts, absorb it as a cost of service, or offer instant payouts as a premium feature with a markup.
Key Considerations
Instant payouts change the financial dynamics of your platform. When payouts happen immediately, your platform must ensure it has sufficient funds available to cover the instant transfers. This requires careful cash flow management and may necessitate maintaining a balance with Stripe to cover instant payout requests.
Additionally, instant payouts are irrevocable once initiated. If a payment is later disputed or found to be fraudulent, your platform may be responsible for the loss if the connected account has already withdrawn the funds. Consider your risk tolerance and fraud prevention capabilities when enabling instant payouts. Understanding how to handle disputes is critical--see our Disputes documentation for detailed guidance on managing chargebacks effectively.
Marketplace Payments
Classic marketplace model connecting buyers and sellers with commission-based payment splitting
SaaS Platform Billing
Enable customers to accept payments from their users while you handle payment infrastructure
On-Demand Services
Pay workers immediately after job completion, common in delivery and transportation
Funding Platforms
Move funds from backers or investors to recipients with escrow-like arrangements
Fees and Pricing
Understanding Connect's fee structure is essential for building a sustainable platform business. Connect pricing involves multiple components that vary based on account type, payment flow, and additional services.
Standard Transaction Fees
Connect uses the same per-transaction fee structure as standard Stripe payments, with 2.9% plus 30 cents per successful card transaction in the United States. This fee is charged to whoever Stripe considers the merchant of record, which depends on your account type and payment flow configuration.
For direct charges, the fee is charged to the connected account. For destination charges and separate transfers, the fee is typically charged to your platform account. You can structure your pricing to pass these fees to connected accounts or absorb them as a cost of doing business.
Connect-Specific Fees
In addition to standard transaction fees, Connect may involve additional costs for specific features. Instant payouts carry a small fee per transaction. Custom accounts may involve additional monthly or per-account fees depending on your volume and arrangements with Stripe.
Detailed Pricing Table
| Fee Type | Amount (US) | Applied To | Notes |
|---|---|---|---|
| Card Processing | 2.9% + $0.30 | Per successful charge | Standard rate, varies by region |
| Instant Payout | 1.5% (max $15) | Per instant payout | Capped at $15 per payout |
| ACH Processing | 0.8% | Per successful charge | Lower than card fees |
| Custom Account | Varies | Monthly/Per account | Contact Stripe for pricing |
Fee Modeling Guidance
When designing your platform's business model, factor in both the Stripe fees you pay and any fees you charge to connected accounts. Many platforms mark up Stripe's fees to generate revenue from the payment flow, while others absorb Stripe's fees as a cost of providing their service.
Consider how fees affect connected account behavior--higher fees may discourage small transactions or reduce your attractiveness compared to competing platforms. Find the right balance between revenue generation and user acquisition that works for your specific market.
Platforms with significant volume can negotiate custom pricing with Stripe that may reduce per-transaction costs or provide volume discounts. Contact Stripe's sales team to discuss pricing options for your specific situation.
For platforms accepting alternative payment methods like ACH Direct Debit, fee structures may differ significantly from standard card processing.
Compliance Considerations
Operating a platform that facilitates payments carries significant compliance responsibilities. Connect helps but does not eliminate these obligations.
Know Your Customer Requirements
Regulators require platforms to verify the identity of participants to prevent fraud, money laundering, and terrorist financing. Stripe handles much of this verification for Express and Standard accounts, but your platform remains ultimately responsible for ensuring compliance.
Implement policies for when additional verification is required, such as for high-value transactions or accounts from higher-risk jurisdictions. Monitor for suspicious activity and report as required by applicable regulations.
Anti-Money Laundering
Platforms must implement anti-money laundering programs appropriate to their risk profile and jurisdiction. This includes monitoring for suspicious transactions, reporting large or unusual transactions to authorities, and maintaining records as required by law.
Connect provides tools for monitoring and reporting, but your platform must establish and enforce policies that address your specific risk profile. Consider implementing transaction monitoring systems, file suspicious activity reports (SARs) when required, and maintain comprehensive records of all transactions and account holders.
Payment Card Industry Compliance
If your platform handles card payments, you must comply with PCI DSS requirements. Stripe's integration options significantly reduce your compliance burden--using Stripe-hosted payment pages or their SDKs for collecting card information means you never handle raw card data.
If you build custom payment flows, ensure you understand PCI compliance requirements and implement appropriate security measures. Consider using Stripe's tokenization features to minimize your PCI scope and reduce your compliance burden.
Compliance Best Practices
- Document your program: Maintain written policies and procedures for compliance
- Train your team: Ensure everyone understands their compliance responsibilities
- Monitor continuously: Implement ongoing monitoring rather than one-time checks
- Stay updated: Regulations change--keep current with requirements in your jurisdictions
- Maintain records: Keep detailed records of all verifications and reports
- Conduct audits: Regular internal audits help identify gaps before regulators do