Connect
Testing

Testing Stripe Connect

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

Testing is important 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 make testing easier. 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 of any account type you might need (e.g., representing multiple countries).

You can create Custom test accounts using the API. You can also create test accounts of all account types through the Dashboard.

Test the OAuth flow Express accountsCustom accounts

You can test your OAuth integration for Express or Standard account creation with the development client_id. You can find your development client_id 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 verification Express 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. The following tokens can be used to test verification with Custom and Express accounts. You will need to provide real information to activate a Standard connected account.

Test dates of birth

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

Number Type
1901-01-01 Successful verification. Any other DOB results in unsuccessful verification.
19000101This DOB will trigger 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.

Number Type
address_full_match Successful verification.
address_no_match Unsuccessful 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.

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 cannot 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 cannot disable payouts or charges afterward by changing the token to an invalid one. You can work around this, though, by creating a new account with the relevant token.

Token Type
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_match Both charges and payouts are not 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.

Number Type
000000000Successful verification. 0000 also works for SSN last 4 verification.
111111111Unsuccessful verification (identity mismatch)

Test business tax IDs

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

Number Type
000000000Successful verification
000000001Successful verification as a non-profit
111111111Unsuccessful verification (identity mismatch)

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 do not 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.

Token Type
file_identity_document_success Uses the verified image and marks that document requirement as satisfied.
file_identity_document_failure Uses the unverified image and marks that document requirement as not satisfied.

Trigger cards

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

Number Token Type
4000000000004202 tok_visa_triggerNextRequirements Changes the next set of eventually due requirements to currently due.
4000000000004210 tok_visa_triggerChargeBlock Triggers a charge block.
4000000000004236 tok_visa_triggerPayoutBlock Triggers a payout block.

Trigger Next Requirements

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

Trigger Charge or Payout Block

If required information is not 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.

Simulate requirements

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

Information provided Person verification status requirements[currently_due]
Verified date of birth and verified address Verified None
Verified date of birth and unverified address Unverified verification.additional_document
Unverified date of birth and verified address Unverified verification.document
Unverified date of birth and unverified address Unverified verification.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.

Token Type
btok_us_verified Successful
btok_us_verified_noAccount Unsuccessful with a no_account code
btok_us_verified_accountClosed Unsuccessful with an account_closed code
btok_us_verified_insufficientFunds Unsuccessful with an insufficient_funds code
btok_us_verified_debitNotAuthorized Unsuccessful with a debit_not_authorized code
btok_us_verified_invalidCurrency Unsuccessful 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. These values can only be used in test mode with test secret keys.

To create test mode payouts for a Standard account, use any valid bank account details (e.g., your own). Test mode payouts simulate a live payout but are not 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. These can only be used with test secret keys.

Sort Account Type
108800 00012345 Payout succeeds.
108800 11111116 Payout fails with a no_account code.
108800 11111113 Payout fails with an account_closed code.
108800 22222227 Payout fails with an insufficient_funds code.
108800 33333335 Payout fails with a debit_not_authorized code.
108800 44444440 Payout fails with an invalid_currency code.

By specifying the appropriate country code (e.g., DE, IT, FR, etc.), you can use these test IBANs for any EU country and any valid currency for that country. As a demonstration, the IBANs displayed below are specified for Germany since they’re prefixed with DE.

Number Type
DE89370400440532013000 Payout succeeds.
DE62370400440532013001 Payout fails with a no_account code.
DE89370400440532013002 Payout fails with an account_closed code.
DE89370400440532013003 Payout fails with an insufficient_funds code.
DE89370400440532013004 Payout fails with a debit_not_authorized code.
DE89370400440532013005 Payout fails with an invalid_currency code.
Routing Account Type
110000 000123456 Payout succeeds.
110000 111111116 Payout fails with a no_account code.
110000 111111113 Payout fails with an account_closed code.
110000 222222227 Payout fails with an insufficient_funds code.
110000 333333335 Payout fails with a debit_not_authorized code.
110000 444444440 Payout fails with an invalid_currency code.
Routing Account Type
110-0000 0001234 Payout succeeds.
110-0000 1111116 Payout fails with a no_account code.
110-0000 1111113 Payout fails with an account_closed code.
110-0000 2222227 Payout fails with an insufficient_funds code.
110-0000 3333335 Payout fails with a debit_not_authorized code.
110-0000 4444440 Payout fails with an invalid_currency code.
Routing Account Type
11000-000 000123456789 Payout succeeds.
11000-000 000111111116 Payout fails with a no_account code.
11000-000 000111111113 Payout fails with an account_closed code.
11000-000 000222222227 Payout fails with an insufficient_funds code.
11000-000 000333333335 Payout fails with a debit_not_authorized code.
11000-000 000444444440 Payout fails with an invalid_currency code.
Routing Account Type
110-000 000123-456 Payout succeeds.
110-000 111111-116 Payout fails with a no_account code.
110-000 111111-113 Payout fails with an account_closed code.
110-000 222222-227 Payout fails with an insufficient_funds code.
110-000 333333-335 Payout fails with a debit_not_authorized code.
110-000 444444-440 Payout fails with an invalid_currency code.
Routing Account Type
HDFC0000261 123456788 Payout succeeds.
HDFC0000261 000111111116 Payout fails with a no_account code.
HDFC0000261 000111111113 Payout fails with an account_closed code.
HDFC0000261 000222222227 Payout fails with an insufficient_funds code.
HDFC0000261 000333333335 Payout fails with a debit_not_authorized code.
HDFC0000261 000444444440 Payout fails with an invalid_currency code.
Routing Account Type
1100000 0001234 Payout succeeds.
1100000 1111116 Payout fails with a no_account code.
1100000 1111113 Payout fails with an account_closed code.
1100000 2222227 Payout fails with an insufficient_funds code.
1100000 3333335 Payout fails with a debit_not_authorized code.
1100000 4444440 Payout fails with an invalid_currency code.
Account Type
000000001234567897 Payout succeeds.
000000111111111117 Payout fails with a no_account code.
000000111111111133 Payout fails with an account_closed code.
000000222222222224 Payout fails with an insufficient_funds code.
000000333333333331 Payout fails with a debit_not_authorized code.
000000444444444448 Payout fails with an invalid_currency code.
Routing Account Type
TESTMYKL 000123456000 Payout succeeds.
TESTMYKL 111111111116 Payout fails with a no_account code.
TESTMYKL 111111111113 Payout fails with an account_closed code.
TESTMYKL 222222222227 Payout fails with an insufficient_funds code.
TESTMYKL 333333333335 Payout fails with a debit_not_authorized code.
TESTMYKL 444444444440 Payout fails with an invalid_currency code.
Account Type
1100000000000010 Payout succeeds.
1100001111111016 Payout fails with a no_account code.
1100001111111013 Payout fails with an account_closed code.
1100002222222027 Payout fails with an insufficient_funds code.
1100003333333035 Payout fails with a debit_not_authorized code.
1100004444444040 Payout fails with an invalid_currency code.
Routing Account Type
1100-000 000123456 Payout succeeds.
1100-000 111111116 Payout fails with a no_account code.
1100-000 111111113 Payout fails with an account_closed code.
1100-000 222222227 Payout fails with an insufficient_funds code.
1100-000 333333335 Payout fails with a debit_not_authorized code.
1100-000 444444440 Payout fails with an invalid_currency code.
Routing Account Type
110000000 000123456789 Payout succeeds.
110000000 000111111116 Payout fails with a no_account code.
110000000 000111111113 Payout fails with an account_closed code.
110000000 000222222227 Payout fails with an insufficient_funds code.
110000000 000333333335 Payout fails with a debit_not_authorized code.
110000000 000444444440 Payout fails with an 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.

Number Token Type
4000056655665556 tok_visa_debit_us_transferSuccess Visa debit. Payout succeeds.
4000056655665572 tok_visa_debit_us_transferFail Visa debit. Payout fails with a could_not_process code.
4000056755665555 tok_visa_debit_us_instantPayoutUnsupported Visa debit. Card is not eligible for Instant Payouts.
5200828282828210 tok_mastercard_debit_us_transferSuccess Mastercard debit. Payout succeeds.
6011981111111113 tok_discover_debit_us_transferSuccess Discover debit. Payout succeeds.
Number Token Type
4000051240000005 tok_visa_debit_ca_transferSuccess Visa debit. Payout succeeds.
4000051240000021 tok_visa_debit_ca_transferFail Visa debit. Payout fails with a could_not_process code.
4000051240000039 tok_visa_debit_ca_instantPayoutUnsupported Visa debit. Card is not eligible for Instant Payouts.
5510121240000006 tok_mastercard_debit_ca_transferSuccess Mastercard debit. Payout succeeds.
Number Token Type
4000057020000008 tok_visa_debit_sg_transferSuccess Visa debit. Payout succeeds.
4000057020000016 tok_visa_debit_sg_transferFail Visa debit. Payout fails with a could_not_process code.
4000057020000024 tok_visa_debit_sg_instantPayoutUnsupported Visa debit. Card is not eligible for Instant Payouts.
2227200000000009 tok_mastercard_debit_sg_transferSuccess Mastercard debit. Payout succeeds.
Was this page helpful?
Questions? Contact us.
Developer tutorials on YouTube.