Skip to content
Sign in
An image of the Stripe logo
Create account
Sign in
Home
Payments
Finance automation
Banking as a service
Developer tools
No-code
All products
Home
Payments
Finance automation
Home
Payments
Finance automation
Banking as a service
Developer tools
Overview
Online payments
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 components
    Quickstart
    Get started with Connect embedded components
    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
    Payment Method Configurations API
    Migrate to Payment Method Configurations API
    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
Fraud detection
Payment Links
Stripe Checkout UI
Stripe Elements UI
Financial Connections
Crypto
Identity
Climate
About the APIs
Regulation support
Implementation guides
Testing
Connect
·
HomePaymentsMultiparty payments

Testing Stripe Connect

Before going live, test your Connect integration for account creation, identity verification, and payouts.

Use testing to make sure your Connect integration handles different flows correctly. Use test mode to simulate live mode while taking advantage of Stripe-provided special tokens to use in your tests. Take a look at our payments testing guide for more information on testing charges, disputes, and more.

Create test accounts

You can create multiple test accounts and use any account type you might need (for example, representing multiple countries).

Warning

Don’t connect the platform account to itself—that fails to reflect the real world use of Connect, and makes debugging difficult.

You can create test accounts of all types through the API or Dashboard.

Test the OAuth flow Express accountsStandard accounts

You can test your OAuth integration for Express or Standard account creation with the development client_id.

Your development client_id is ca_FkyHCg7X8mlvCUdMDao4mMxagUfhIwXb; you’ll be able to find this in your Connect settings.

Your development client_id allows you to:

  • Set your redirect_uri to a non-HTTPS URL
  • Set your redirect_uri to localhost
  • Force-skip the account form instead of having to fill out an entire account application (Standard)
  • Auto-fill 000 000 0000 as the test phone number and 000-000 as the SMS code when prompted (Express)
  • Get test access tokens for connected accounts

To test the OAuth flow, create a new account after clicking the OAuth link. You can also test connecting an existing Stripe account only if the email is different from the platform account.

Identity and address verificationExpress accountsCustom accounts

After creating a test connected account, you can use tokens to test different verification statuses to ensure you’re handling different requirements and account states. You can use the following tokens to test verification with Custom and Express accounts. You need to provide real information to activate a Standard connected account.

Testing verification guide

Because verification is a crucial component for platforms with Express and Custom accounts, we’ve created a dedicated guide to testing verification.

Test dates of birth

Use these dates of birth (DOB) to trigger certain verification conditions.

DOBType
1901-01-01Successful verification. Any other DOB results in unsuccessful verification.
1902-01-01Successful, immediate verification. The verification result is returned directly in the response, not as part of a webhook event.
1900-01-01This DOB triggers an Office of Foreign Assets Control (OFAC) alert.

Test addresses

Use these addresses for line1 to trigger certain verification conditions. You must pass in legitimate values for the city, state, and postal_code arguments.

Note

Currently, address verification is only required when requesting the card_payments capability for US connected accounts.

TokenType
address_full_match​Successful verification.
address_no_matchUnsuccessful verification.

Business address validation

In some countries, the business address associated with your connected account must be validated before charges, payouts, or both can be enabled on the connected account.

Note

Currently, business address validation is only required when requesting the card_payments capability for US connected accounts. Address tokens have no effect if you’re requesting legacy_payments because business address validation isn’t required.

Test business addresses

Use these addresses for line1 to trigger certain validation conditions. You must pass in legitimate values for the city, state, and postal_code arguments.

Make sure you start with an address token that has the least permissive validation condition you want to test for. This is because you can’t use an address token that has a more restrictive validation condition than the previous token used. For example, if you provided address_full_match to have both charges and payouts enabled, you can’t disable payouts or charges afterward by changing the token to an invalid one. You can work around this by creating a new account with the relevant token.

TokenType
address_full_match​Both charges and payouts are enabled on the account.
address_line1_no_match​Only charges are enabled on the account. Since validation failed on the line1 attribute, it becomes listed again in the requirements hash.
address_no_matchNeither charges nor payouts are enabled on the account. Since validation failed, the address attributes become listed again in the requirements hash.

Test personal ID numbers

Use these personal ID numbers for individual[id_number] or the id_number attribute on the Person object to trigger certain verification conditions.

NumberType
000000000Successful verification. 0000 also works for SSN last 4 verification.
111111111Unsuccessful verification (identity mismatch).
222222222Successful, immediate verification. The verification result is returned directly in the response, not as part of a webhook event.

Test business tax IDs

Use these business tax ID numbers for company[tax_id] to trigger certain verification conditions.

NumberType
000000000Successful verification.
000000001Successful verification as a non-profit.
111111111Unsuccessful verification (identity mismatch).
111111112Unsuccessful verification (tax ID not issued).
222222222Successful, immediate verification. The verification result is returned directly in the response, not as part of a webhook event.

Test identity documents

For testing Custom accounts, use test images or file tokens instead of uploading your own test IDs. For details, refer to Uploading a file. These images don’t work for testing Express accounts.

Test document images

You can use a verified image that causes the user to be automatically marked verified. You can use an unverified image that causes the user to be automatically marked unverified.

Test file tokens

Use these file tokens to trigger certain identity verification conditions.

TokenType
file_identity_document_successUses the verified image and marks that document requirement as satisfied.
file_identity_document_failureUses the unverified image and marks that document requirement as not satisfied.

Trigger cards

Use these card numbers to trigger various conditions when you’re testing both requirements and tiered verification. For the trigger actions to work, you must use these cards with a Connect charge by setting on_behalf_of, or creating the charge directly on the connected account.

NumberTokenType
4000000000004202tok_visa_triggerNextRequirementsChanges the next set of eventually due requirements to currently due.
4000000000004210tok_visa_triggerChargeBlockTriggers a charge block.
4000000000004236tok_visa_triggerPayoutBlockTriggers a payout block.

Trigger next requirements

Live mode can require additional verification information when a connected account processes a certain amount of volume. This card sets any additional verification information to be required immediately. If no additional information is required, nothing appears.

Trigger a charge or payout block

If required information isn’t provided by the deadline, Stripe disables the connected account’s charges or payouts. These cards disable the connected account and move any currently due requirements to overdue. These cards have no effect until an account provides the initial information that’s required to enable charges and payouts.

Trigger bank account ownership verification

In some countries, Express and Custom accounts are subject to Bank account ownership verification. You can complete this verification by uploading supporting documents with the Connect Dashboard or with the API through the documents[bank_account_ownership_verification] hash.

To test the US bank account ownership verification process, use the following test bank account number while in test mode. In test mode, you can upload test images or file tokens to complete the verification process. Currently, a test account with available ownership verification is available only in the US.

RoutingAccountType
110000000000999999991Triggers the bank account ownership verification process after a short delay

Simulate requirements

If your platform has connected accounts in different countries or plans to, you might need to verify a person’s address as well as their identity (depending on the country). Stripe provides a sample date of birth (DOB) and sample addresses to test for this requirement.

Information providedPerson verification statusrequirements[currently_due]
Verified date of birth and verified addressVerifiedNone
Verified date of birth and unverified addressUnverifiedverification.additional_document
Unverified date of birth and verified addressUnverifiedverification.document
Unverified date of birth and unverified addressUnverifiedverification.additional_document, verification.document

Add funds to Stripe balance

To test adding funds to your Stripe balance from a bank account in the Dashboard, enable test mode and select the desired test bank account in the drop-down menu within the Add to balance dialog. You can simulate success or failure due to insufficient funds.

To test adding funds in the API, use the following test bank tokens as the source while in test mode. Each token simulates a specific kind of event.

TokenType
btok_us_verifiedSuccessful
btok_us_verified_noAccountUnsuccessful with a no_account code
btok_us_verified_accountClosedUnsuccessful with an account_closed code
btok_us_verified_insufficientFundsUnsuccessful with an insufficient_funds code
btok_us_verified_debitNotAuthorizedUnsuccessful with a debit_not_authorized code
btok_us_verified_invalidCurrencyUnsuccessful with an invalid_currency code

Payouts Express accountsCustom accounts

For Express and Custom accounts, use the following test bank and debit card numbers to trigger certain events during payouts testing. You can only use these values in test mode with test secret keys.

To create test mode payouts for a Standard account, use any valid bank account details (for example, your own). Test mode payouts simulate a live payout but aren’t processed with the bank. Test mode Standard accounts always have payouts enabled, as long as valid external bank information and other relevant conditions are met, and never requires real identity verification.

Bank numbers

Use these test bank account numbers to test payouts. You can only use them with test secret keys.

SWIFT / BIC CodeIBANType
AAAAALTXXXXAL35202111090000000001234567Payout succeeds.
AAAAALTXXXXAL00000062370400440532013001Payout fails with a no_account code.
AAAAALTXXXXAL00000089370400440532013002Payout fails with a account_closed code.
AAAAALTXXXXAL00000089370400440532013003Payout fails with a insufficient_funds code.
AAAAALTXXXXAL00000089370400440532013004Payout fails with a debit_not_authorized code.
AAAAALTXXXXAL00000089370400440532013005Payout fails with a invalid_currency code.

Debit card numbers

Use these test debit card numbers to test payouts to a debit card. These can only be used with test secret keys.

NumberTokenType
4000056655665556tok_visa_debit_us_transferSuccessVisa debit. Payout succeeds.
4000056655665572tok_visa_debit_us_transferFailVisa debit. Payout fails with a could_not_process code.
4000056755665555tok_visa_debit_us_instantPayoutUnsupportedVisa debit. Card is not eligible for Instant Payouts.
5200828282828210tok_mastercard_debit_us_transferSuccessMastercard debit. Payout succeeds.
6011981111111113tok_discover_debit_us_transferSuccessDiscover debit. Payout succeeds.
Was this page helpful?
Need help? Contact Support.
Watch our developer tutorials.
Check out our product changelog.
Questions? Contact Sales.
Powered by Markdoc
You can unsubscribe at any time. Read our privacy policy.
On this page
Create test accounts
Test the OAuth flow
Identity and address verification
Add funds to Stripe balance
Payouts
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.
$