Sign in
An image of the Stripe logo
Create account
Sign in
Home
Payments
Business operations
Financial services
Developer tools
No-code
All products
Home
Payments
Business operations
Home
Payments
Business operations
Financial services
Developer tools
Support
Overview
Online payments
Products and prices
Invoicing
Subscriptions
Quotes
In-person payments
Multiparty payments
    Overview
    Get started
    Collect payments then pay out
    Enable other businesses to accept payments directly
    Pay out money
    Explore Connect
    Onboard your accounts
    Choose your account type
    Standard
    Express
    Custom
    Service agreement types
    Payment methods
    Account capabilities
    Additional verifications
    Update verified info
    Connect embedded UIs
    Quickstart
    Get started with Connect embedded UIs
    Accept payments
    Create a charge
    Create a payments page
    Create payment links with Connect
    Connect integration guide
    Automatic payment methods
    Set statement descriptors
    Connect platforms using the Payment Methods API
    Create subscriptions
    Create invoices
    Debit Express and Custom connected accounts
    Pay out
    Set bank and debit card payouts
    Bank accounts
    Manage payout schedule
    Manual payouts
    Payout reversals
    Instant Payouts
    Cross-border payouts
    Crypto payouts
    Manage funds
    Add money to your platform balance
    Account balance
    Handle multiple currencies
    Manage accounts
    Best practices
    Listen for updates
    Dashboard account management
    Understanding risk offerings
    Platform controls for Standard accounts
    Make API calls for connected accounts
    Set MCCs
    Testing
    Manage tax forms
    Overview
    Get started with tax reporting
    1099 Tax Support and Communication Guide
    Tax form settings
    Calculation methods
    File tax forms
    File tax forms with states
    Identify forms with missing information
    Update tax forms
    Deliver tax forms
    E-delivery for 1099 tax forms
    Correct tax forms
    Split tax forms
    Tax year changeover
    What's new for tax year 2022
After the payment
Add payment methods
Payment Links
Stripe Checkout
Stripe Elements
About the APIs
Regulation support
Implementation guides
Testing
Connect
·
HomePaymentsMultiparty payments

Best practices for going live with Connect

Learn best practices for your Connect integration before going live and for managing onboarding requirements, fraud prevention, risk, and support.

Stripe has gathered what it’s learned from thousands of platforms, extensions, and plug-ins that can help you go live more effectively. Join the Stripe Partner Program to learn more.

Account Onboarding

To maximize conversion rate, carefully position the Stripe onboarding process within the flow of your application. We recommend you to introduce creating a connected account creation only when it becomes absolutely necessary for your users. If users can use your application without Stripe, first let them provide only the necessary information to complete your own application onboarding process. Then, request them to create a connected account when they need to use Stripe.

If you’ve already collected information for your connected accounts, you can pre-fill that information on the account object for the user. Connect Onboarding won’t ask for the pre-filled information during account onboarding. The account holder confirms the pre-filled information before accepting the Connect service agreement. You can pre-fill any information on the account, including personal and business information, external account information, and more.

Before sending users into the Stripe onboarding flow, briefly introduce Stripe and convey the role that Stripe plays in your application. This informs your users of next steps and helps transition them to the flow. Consider adapting the sample text below and including it in your user interface:

[Your company name] uses Stripe to get you paid quickly and keep your personal and payment information secure. Thousands of companies around the world trust Stripe to process payments for their users. Set up a Stripe account to get paid with [your platform name.]

Webhook setup

Stripe uses webhooks to notify you of account activities. Set up Connect webhooks so you can promptly respond to updates to your accounts, and also respond to Stripe requests and avoid delays in fund transfers.

Stripe requests additional information if the provided user information fails verification. An incorrect date of birth or last name may be the result of a data entry error. You can help your connected accounts respond to failed verification by directing them to Connect Onboarding, or requesting the data yourself for Custom accounts.

When a user updates their account information (for example, bank account), Stripe sends you a notification of the change.

Responsibility for losses

You must comply with onboarding and Know Your Customer (KYC) requirements when you start onboarding users. For some configurations of Connect, your platform is ultimately responsible for any losses incurred by your connected accounts. Meeting these requirements can help prevent losses and avoid payout delays for your users.

Fraud prevention

There’s no foolproof method to detect bad actors so it’s good practice to assess an account’s holistic risk profile to help mitigate your fraud risk. The more you understand your user and their business, the better this assessment will be. Stripe recommends that you:

  • Verify your users (within a certain amount of time) before they can do business through your platform.
  • Examine a user’s online presence through social or professional profiles like Facebook, Twitter, or LinkedIn.
  • Closely review the user’s website (for example, should they reasonably have one).
  • Collect appropriate licenses if appropriate for their business.
  • Confirm their email address if it’s linked to their business domain (for example, send an email to an address at that domain and require a response from it).
  • Collect and verify platform-appropriate information such as a physical address, inventory list, or selling history.
  • Monitor activity on your platform to get a sense of typical behavior, which you can use to look for suspicious behavior.
  • Pause payments or payouts when suspicious behavior is detected.
  • Use the built-in fraud tools to identify and prevent fraud on individual charge attempts.
  • Add additional verifications to Connect onboarding and disable payouts or payments until the checks pass.

On rare occasions, Stripe might shut down specific accounts. If Stripe shuts down an account, Stripe sends an account.updated event. To learn more about best practices, visit webhooks.

If you suspect someone is committing fraud, Stripe recommends rejecting the account. This prevents the account from receiving more funds (reducing losses) and helps improve Stripe’s fraud detection systems.

Account takeover

Bad actors could potentially target your connected accounts and compromise them, an attack known as account takeover (ATO). Attackers commonly obtain account credentials (for example, through phishing, data breaches, and guessable passwords) and use them to create unauthorized transactions and other fraudulent activities on the account. To help prevent account takeovers from happening, it’s good practice to:

  • Require two-factor authentication when your users log in
  • Educate your users on phishing
  • Enforce unique password policies
  • Monitor anomalous login activity, specifically with regard to new device identifiers and IP addresses
  • Be aware of account changes originating from new devices (for example, password resets, email changes, and bank account changes)
  • Use identity checks to assist in two-factor authentication recovery or in response to suspicious activity

Credit risk management

Managing disputes and chargebacks are a normal part of doing business when accepting card payments. It’s good practice to employ a number of different methods to build an effective strategy for preventing disputes. The following subsections contain some recommendations to help you manage your exposure, protect your business, and support your accounts.

Account monitoring

Monitor your accounts. The more you understand your user and their business, the better you can assess their risk.

  • Examine user account balances through the API or the Dashboard. In the Dashboard’s accounts overview, use filters to investigate accounts that might require you to take action (for example, accounts with negative balances).
  • Review financial activity on an account. When viewing the account in the Dashboard, click View financial reports in the Activity card.
  • Create alerts to monitor riskier accounts so you can quickly adjust your strategies. Riskier accounts have higher dispute rates (dispute activity above 0.75% is generally considered excessive), sharply reduced volume, or negative balances.

Riskier accounts

For newer sellers or service providers that might be riskier, consider delaying or holding payouts until goods or services are delivered. See more on account balances and payout scheduling.

For platforms with users on manual payouts, you can update your payout creation logic to defer or slow down payouts for riskier accounts.

For platforms with users on automatic payouts, you can change the payout schedule to be longer (for slower payouts) on an account-by-account basis in the Dashboard or with settings.payouts.schedule in the API. When viewing the account in the Dashboard, click Edit payout schedule in the Balance card’s overflow menu (…):

Impact from chargebacks and negative balances

Consider product or service refunds instead of having to manage chargebacks and negative balances. It might be a better customer experience and also less expensive for you. You could:

  • Issue refunds. You can check the connected account’s balance to see if the refund can be covered using the Dashboard or with retrieve in the API. If their balance can’t cover the refund, you can reverse the transfer without issuing the refund (which will result in a negative balance on the account).
  • Issue refunds based on certain parameters. For example, you can wait until the account’s balance is no longer negative to issue refunds or immediately issue the refund knowing the amount will be covered by future payments.
  • Proactively cancel and refund charges that are likely to be disputed if you have chargeback concerns. The loss on the transaction might be better than getting a chargeback and a bad customer experience. In addition, there are costs that come with chargebacks and the potential scrutiny from card networks.
  • Permit your team to handle refunds by adding them to your platform account.
  • Pause billing subscriptions (recurring payments) that are at high risk for chargebacks. This gives you more control over when to resume the subscription. For example, if your platform offers classes that have been canceled for the next few months, you can pause payment collection from your customers.
  • Protect your platform from negative balances by adding funds to your platform balance.
  • Use Stripe Sigma to generate a report of each account’s negative balance over time.

Negative balances on accounts Australia Canada Europe (SEPA, UK) New Zealand US

If your connected accounts are in Australia, Canada, Europe (SEPA countries, which includes the UK), New Zealand, or the US, you can allow Stripe to automatically debit their external accounts to cover negative balances. (Connect only supports auto debits for Standard and Express accounts in New Zealand.) Otherwise, the negative balance could be covered by future payment volume. By default, automatic debiting is set to true for Express accounts, and false for Custom accounts.

You can toggle the automatic debits setting on an account using the Dashboard or with debit_negative_balances in the API. From the Dashboard, select an account and open the overflow menu (…) on the Balance card:

To view all connected accounts from the Dashboard that have the automatic debits setting turned off, use the Debit negative balances filter:

Concerns about sanctions

As a US company, Stripe complies with all sanctions programs administered by the US Office of Foreign Assets Control (OFAC), along with a number of other national and international sanctions regimes. This includes both prohibitions against interactions with certain individuals and entities as well as comprehensive bans on business dealings involving certain countries or regions that are targeted by sanctions regimes.

Stripe screens all accounts, including connected accounts, in compliance with our own obligations under these sanctions regimes. If a connected account is flagged as a possible sanctions concern, Stripe will pause payouts from the connected account and contact the platform by email to request additional information. If you have a preferred email address for sending sanctions-related requests to, contact Stripe.

Payouts from the connected account remain paused until the review has been cleared. Disregarding or violating sanctions can lead to fines, regulatory action, and loss of licensing for both Stripe and our users.

More best practices for Express accounts

The following are additional best practices to consider if you’re using Express accounts.

Branding

User support

More best practices for Custom accounts

The following are additional best practices to consider if you’re using Custom accounts.

Stripe services agreement

KYC guidelines

See also

  • Understanding Connect risk offerings
  • Prevent disputes and fraud
  • Common types of online fraud
  • Updating Accounts
  • Identity Verification
Was this page helpful?
Questions? Contact us.
Watch our developer tutorials.
Check out our product changelog.
Powered by Markdoc
You can unsubscribe at any time. Read our privacy policy.
On this page
Account Onboarding
Webhook setup
Responsibility for losses
Fraud prevention
Account takeover
Credit risk management
Concerns about sanctions
More best practices for Express accounts
More best practices for Custom accounts
See also
Stripe Shell
Test mode
Welcome to the Stripe Shell! Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Login to your Stripe account and press Control + Backtick on your keyboard to start managing your Stripe resources in test mode. - View supported Stripe commands: - Find webhook events: - Listen for webhook events: - Call Stripe APIs: stripe [api resource] [operation] (e.g. )
The Stripe Shell is best experienced on desktop.
$