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
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
Onboard accounts
Update accounts
Handle verification
Handle verification with the API
Required info
Future requirements
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
Testing
Connect
·
HomePaymentsMultiparty paymentsCustom

Identity verification for Custom accounts

Use identity verification to reduce risk on your platform when using Connect.

Account types

Connect platforms can work with three different account types.

The content on this page applies only to Custom accounts.

Every country has its own requirements that accounts must meet for Stripe to be able to pay out funds to individuals and companies. These are typically known as Know Your Customer (KYC) requirements. Regardless of the country, broadly speaking, the requirements Stripe must meet are:

  • Collecting information about the individual or company receiving funds
  • Verifying information to establish that we know who our customers are

Connect platforms collect the required information from users and provide it to Stripe. This may include information about the legal entity and personal information about the representative of the business, as well as those who own or control the business. Stripe then attempts verification. In some cases, Stripe may be able to verify an account by confirming some or all of the keyed-in data provided. In other cases, Stripe may require additional information, including, for example, a scan of a valid government-issued ID, a proof of address document, or both.

This page explains the verification flow options to meet Stripe KYC requirements, but the easiest way to manage verification is to integrate Connect Onboarding, which lets Stripe take care of the complexity around the basic KYC obligations associated with an account’s capabilities. Handling the details of account verification is initially complex and requires vigilance to keep up with the constantly evolving regulatory changes around the world.

Stripe recommends using Connect Onboarding. If you decide to handle account verification yourself, continue reading to learn about the verification flow options, how API fields translate to companies and individuals, and how to localize information requests. You should also read the Handling Identity Verification with the API guide to learn how to programmatically provide information and handle requests.

Even after Stripe verifies a user, platforms still must monitor and prevent fraud. Platforms shouldn’t rely on Stripe’s verification to meet any independent legal KYC or verification requirements.

Verification requirements

Verification requirements for connected accounts vary by account, depending on:

  • Country
  • Capabilities
  • Business type (for example, individual, company)
  • Business structure (for example, public corporation, private partnership)
  • The service agreement type between Stripe and the connected account
  • The risk level

You must collect and verify specific information to enable charges and payouts. For example, for a company in the U.S., you might need to collect:

  • Information about the business (for example, name, address, tax ID number).
  • Information about the person opening the Stripe account (for example, name, date of birth).
  • Information about beneficial owners (for example, name, email).

At certain variable thresholds—usually when a specified amount of time has passed or volume of charges have been made—you may need to collect and verify additional information. Stripe temporarily pauses charges or payouts if the information isn’t provided or verified according to the thresholds for required information. For example, additional information might include verification of the company tax ID number.

Onboarding flows

As the platform, you must decide if you want to collect the required information from your connected accounts upfront or incrementally (incremental onboarding). Some pros and cons for each method are listed below.

Upfront onboarding Incremental onboarding
Pros
  • Entails a single request for information (normally)
  • Creates fewer problems in receiving payouts and maintaining processing ability
  • Exposes potential fraudsters, low intent users, or users who refuse to provide required information later
  • Onboards connected accounts quickly
  • Results in higher onboarding rates
Cons
  • Some legitimate (but low intent) users may turn away before they complete the onboarding process
  • May require multiple requests for information, which can create a bad user experience
  • Creates a higher likelihood of disrupting business of an ongoing user

To help you determine which flow to build, review the required information for the countries where your connected accounts are located. While Stripe tries to minimize any impact to users, remember that requirements may change over time.

Business type

The specific KYC information depends on the type of business entity. They are:

  • individual—Collect information about the person.
  • company—Collect information about the company. Depending on the countries your connected accounts are in, you might also have to collect information about beneficial owners.
  • non_profit—Collect information about the non-profit organization.
  • government_entity (available for U.S. connected accounts only)—Collect information about the government entity.

If you or your users are unsure of their entity type, the information might be in the business formation documents or tax documents for that entity.

See the list of requirements for different business types by country. When you know what information to collect, you can read more about handling identity verification with the API.

Business structure

For all business types other than individual, you can further classify your user’s business by identifying its legal (business) structure. A business structure describes the details of a business entity such as day-to-day operations, tax burdens, liability, and organizational schema. You can classify it by using company[structure] in the Account object.

Providing this information to Stripe gets you the most accurate business classification for compliance purposes. While not required, this information might reveal you have fewer onboarding requirements to collect. For example, owner information is required for private companies, but not required for public companies. By default, a company is considered private if information on the company[structure] isn’t provided.

Companies

See the table below for descriptions of the different business structures that you can use to classify a company. Refer to the U.S. required verification information section for more details on requirements.

If you or your users think the entity type should be company but are unsure, the information might be in the business formation documents or tax documents for that entity.

Business structureDescription
multi_member_llcA business with multiple owners or members that’s registered in a U.S. state as a Limited Liability Company (LLC).
private_corporationA business incorporated in a U.S. state that’s privately owned. It doesn’t have shares that are traded on a public stock exchange. It’s also called a closely-held corporation. If you’re a single-member LLC that has elected to be treated as a corporation for tax purposes, use this classification.
private_partnershipA business jointly owned by two or more people that’s created through a partnership agreement.
public_corporationA business incorporated under the laws of a U.S. state. Ownership shares of this corporation are traded on a public stock exchange.
public_partnershipA business formed by a partnership agreement with one or more people, but has shares that are publicly traded on a stock exchange.
single_member_llcA business entity registered with a U.S. state as a limited liability company (LLC) and that has only one member or owner.
sole_proprietorshipA business that isn’t a separate legal entity from its individual owner.
unincorporated_associationA business venture of two or more people that doesn’t have a formal corporate or entity structure.

Non-profits

See the table below for descriptions of the different business structures that you can use to classify a non_profit with. Refer to the U.S. required verification information section for more details on requirements.

Business structureDescription
incorporated_non_profitAn organization incorporated under the laws of a US state that has obtained tax-exempt status as a non-profit entity under either state or federal law (for example, 501(c)(3)).
unincorporated_non_profitAn organization that’s pursuing an objective other than profits, such as a social cause, and has obtained tax-exempt status in the US under either state or federal law (for example, 501(c)(3)) but hasn’t formally incorporated.

Government entities

See the table below for descriptions of the different business structures that you can use to classify a government_entity with. Refer to the U.S. required verification information section for more details on requirements.

Business structureDescription
government_instrumentalityAn organization formed by a government statute or body based in the U.S. to perform a certain function, but not the actual government body itself.
governmental_unitA branch of the state, local, or federal government of the U.S.
tax_exempt_government_instrumentalityAn organization created by or pursuant to government statute and operated for public purposes. It has obtained federal tax-exempt status under state or federal law (for example, 501(c)(3)).

Internationalization and localization

If you support users in multiple countries, consider internationalization and localization when asking for information. Creating an interface that uses not only the user’s preferred language but also the proper localized terminology results in a smoother onboarding experience.

For example, instead of requesting a business tax ID from your users, regardless of country, request:

  • EIN, U.S.
  • Business Number, Canada
  • Company Number, UK

You can find recommended country-specific labels along with the other required verification information.

See also

  • Connect Onboarding for Custom accounts
  • Updating Accounts
  • Handling Identity Verification with the API
  • Account Tokens
  • Required Verification Information
  • Testing Custom Account 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
Verification requirements
Onboarding flows
Business type
Business structure
Internationalization and localization
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 Stripe docs and press Control + Backtick on your keyboard to start managing your Stripe resources in test mode. - View supported 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.
$