Testing with Connect

    Before going live, use the following information to test your Connect integration.

    Testing topics:

    Testing payouts

    For Express and Custom accounts, use the following test bank and debit card numbers to trigger certain events during testing of payouts. These values can only be used when creating or updating Custom accounts via the API in test mode.

    To create test mode payouts for a Standard Stripe account, use any valid bank account details (e.g., your own). Test mode payouts mimic a live payout but are not processed with the bank.

    Test mode always has payouts enabled, and never require identity verification or other interactive steps that are part of the Custom account workflow.

    Bank numbers

    Account Routing Type
    000123456 110000 Payout succeeds.
    111111116 110000 Payout fails with a no_account code.
    111111113 110000 Payout fails with an account_closed code.
    222222227 110000 Payout fails with an insufficient_funds code.
    333333335 110000 Payout fails with a debit_not_authorized code.
    444444440 110000 Payout fails with an invalid_currency code.
    Account Routing Type
    000123456789 110-0000 Payout succeeds.
    000111111116 110-0000 Payout fails with a no_account code.
    000111111113 110-0000 Payout fails with an account_closed code.
    000222222227 110-0000 Payout fails with an insufficient_funds code.
    000333333335 110-0000 Payout fails with a debit_not_authorized code.
    000444444440 110-0000 Payout fails with an invalid_currency code.
    Account Routing Type
    000123456789 11000-000 Payout succeeds.
    000111111116 11000-000 Payout fails with a no_account code.
    000111111113 11000-000 Payout fails with an account_closed code.
    000222222227 11000-000 Payout fails with an insufficient_funds code.
    000333333335 11000-000 Payout fails with a debit_not_authorized code.
    000444444440 11000-000 Payout fails with an invalid_currency code.
    Account Sort Type
    00012345 108800 Payout succeeds.
    11111116 108800 Payout fails with a no_account code.
    11111113 108800 Payout fails with an account_closed code.
    22222227 108800 Payout fails with an insufficient_funds code.
    33333335 108800 Payout fails with a debit_not_authorized code.
    44444440 108800 Payout fails with an invalid_currency code.
    Account Routing Type
    000123-456 110-000 Payout succeeds.
    111111-116 110-000 Payout fails with a no_account code.
    111111-113 110-000 Payout fails with an account_closed code.
    222222-227 110-000 Payout fails with an insufficient_funds code.
    333333-335 110-000 Payout fails with a debit_not_authorized code.
    444444-440 110-000 Payout fails with an invalid_currency code.

    These test IBANs work for any EU country and any valid currency for that country. The IBANs specified here are German IBANs. However, you can simply replace DE with the country of your choosing. See here for country codes.

    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.
    Account Routing Type
    00012345 1100000 Payout succeeds.
    11111116 1100000 Payout fails with a no_account code.
    11111113 1100000 Payout fails with an account_closed code.
    22222227 1100000 Payout fails with an insufficient_funds code.
    33333335 1100000 Payout fails with a debit_not_authorized code.
    44444440 1100000 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.
    Account Routing Type
    0000000010 110000 Payout succeeds.
    1111111016 110000 Payout fails with a no_account code.
    1111111013 110000 Payout fails with an account_closed code.
    2222222027 110000 Payout fails with an insufficient_funds code.
    3333333035 110000 Payout fails with a debit_not_authorized code.
    4444444040 110000 Payout fails with an invalid_currency code.
    Account Routing Type
    000123456 1100-000 Payout succeeds.
    111111116 1100-000 Payout fails with a no_account code.
    111111113 1100-000 Payout fails with an account_closed code.
    222222227 1100-000 Payout fails with an insufficient_funds code.
    333333335 1100-000 Payout fails with a debit_not_authorized code.
    444444440 1100-000 Payout fails with an invalid_currency code.
    Account Routing Type
    000123456789 110000000 Payout succeeds.
    000111111116 110000000 Payout fails with a no_account code.
    000111111113 110000000 Payout fails with an account_closed code.
    000222222227 110000000 Payout fails with an insufficient_funds code.
    000333333335 110000000 Payout fails with a debit_not_authorized code.
    000444444440 110000000 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
    5200828282828210 tok_mastercard_debit_transferSuccess Mastercard debit. Payout succeeds.
    4000056655665556 tok_visa_debit_transferSuccess Visa debit. Payout succeeds.
    4000056655665564 tok_visa_debit_transferFail Visa debit. Payout fails with a could_not_process code.

    Creating accounts

    You can create any type of test account you need: Standard, Express, or Custom. You can also create multiple test accounts, e.g., representing multiple countries.

    To test the OAuth flow for connecting another account, create a new Stripe account using another email address and then take that new account through the OAuth flow. This works for both Standard and Express accounts.

    To test deferred account creation flow, create a standard account using another email address you control or a dummy email address such as me+123@example.com.

    To test Express accounts without providing a real phone number, use 000 000 0000 as the phone number and 000-000 as the SMS code when prompted.

    You can create Custom test accounts using the code demonstrated in the quickstart.

    As the connected account will not be used for live charges, the account does not need to be activated.

    Using OAuth

    To easily test an OAuth integration, the 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
    • Get test access tokens for connected users

    You’ll be able to find your development client_id in your platform settings.

    Generating test keys for live applications

    When using an access_token derived via the OAuth flow, you can only generate test access tokens using a development client_id, but may generate either live or test access tokens using a production client_id.

    To generate a test access token for a production client_id, use a refresh_token:

    curl https://connect.stripe.com/oauth/token \
       -d client_secret=sk_test_BQokikJOvBiI2HlWgH4olfQ2 \
       -d refresh_token=REFRESH_TOKEN \
       -d grant_type=refresh_token
    

    Note that it’s still preferable to authenticate using the Stripe-Account header, not an access token.

    Identity verification

    When creating test accounts that use Identity Verification, providing any image results in the user being verified. Alternatively, Stripe created two special images you can use instead of your own:

    • A verified image that causes the user to be automatically marked verified
    • An unverified image that causes the user to be automatically marked unverified

    Complete file upload instructions are available on the Identity Verification page.

    Trigger cards

    Use these magic card numbers on a charge to trigger various conditions when testing tiered verification.

    Number Token Type
    4000000000004202 tok_visa_triggerVerification Triggers a verification stage.
    4000000000004210 tok_visa_triggerChargeBlock Triggers a charge block.
    4000000000004236 tok_visa_triggerTransferBlock Triggers a payout block.

    Test date of birth

    Use this magic DOB to trigger a certain verification condition.

    Number Type
    19000101This DOB will trigger an Office of Foreign Assets Control (OFAC) alert.

    Test personal ID numbers

    Use these magic personal ID numbers—for legal_entity[personal_id_number]—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 magic business tax ID numbers—for legal_entity[business_tax_id]—to trigger certain verification conditions.

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