Creating accounts
To test the OAuth flow for connecting another account, it’s easiest if you create a new Stripe account using another email address and then take that new account through the OAuth flow.
To test deferred account creation flow, you can:
- Create a managed account, which requires no email address
- Create a standalone account, using another email address you control
- Create a standalone account, using a dummy email address such as “[email protected]”
As the connected account will not be used for live charges, the account does not need to be activated.
You should not connect the platform account to itself, as that fails to reflect the real world use of the platform, and makes debugging quite hard.
Identity verification
When creating test accounts that use Identity Verification, providing any image results in the user being marked 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 marked
unverified
Complete file upload instructions are available on the Identity Verification page.
Trigger cards
These cards are used to trigger various conditions when testing tiered verification. See testing verification for more info.
| Number | Type |
|---|---|
4000000000004202 | Triggers a verification stage. |
4000000000004210 | Triggers a charge block. |
4000000000004236 | Triggers a transfer block. code. |
Test date of birth
These DOBs are used to trigger certain verification conditions.
| Number | Type |
|---|---|
17760704 | This DOB will trigger an OFAC hit. |
Test personal ID numbers
These personal ID numbers are used to trigger certain verification conditions. They are used under legal_entity[personal_id_number].
| Number | Type |
|---|---|
000000000 | Successful verification. 0000 also works for SSN last 4 verification. |
111111111 | Unsuccessful verification (identity mismatch) |
Test business tax IDs
These business tax IDs are used to trigger certain verification conditions. They are used under legal_entity[business_tax_id].
| Number | Type |
|---|---|
000000000 | Successful verification |
000000001 | Successful verification as a non-profit |
111111111 | Unsuccessful verification (identity mismatch) |
Using OAuth
To make it extra convenient for you to build your OAuth integration,
we’ve included a development client_id that will allow you to:
- Set your
redirect_urito a non-HTTPS URL, or even localhost - Instead of having to fill out an entire account application while testing the connect flow, force-skip the account form
- 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 mode applications
If using access_tokens, derived via the OAuth flow, you may generate only test access tokens using a development client_id, but may generate either live or test access tokens using a production client_id.
If you want to generate test access tokens for a production client_id, you can do so using 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 preferrable to authenticate using the Stripe-Account header, not an access token.
Sending transfers
You can also test transfers by using one of our test bank account numbers. These will work with any country, even though they have the format of US bank accounts.
Test mode will always have transfers enabled, and will never require identity verification or other interactive steps that are part of the managed account workflow.
Further reading
Check out the rest of the guide for help with your integration.