Onboarding
Guide your users through your app's sign in and initial setup flows.
Onboarding is the process your users go through to get your app set up after installation. It’s their first interaction with your app, and it needs to be intuitive and polished, with minimal friction before they can start using your app.
The required onboarding steps are different for every app, but we provide tools and best practices to help you.
Design patterns 
View our onboarding design patterns for common scenarios including activation, sign in, redirection, and so on.
Display your onboarding view 
When a user installs your app and goes to view it in the Dashboard, it’s important that the onboarding flow is the first thing they encounter. Make sure to:
- Create your onboarding using the OnboardingView and SignInView components, if a sign in flow is needed.
- Confirm on your page-specific views that the user completed onboarding when the view first loads, and display a button to launch your onboarding appropriately.
- Do the same in your Dashboard default view. If you don’t have one, create a default view that presents the appropriate flow to the user when they open your app. If you don’t need a default view for purposes other than onboarding, you can return
null
if the user already completed onboarding. The Dashboard displays the Stripe Dashboard default drawer that guides users to a page-specific view.
Rely on Stripe authentication for zero-touch user onboarding 
If you’re building an app that stores data in an external backend but doesn’t need its own concept of user accounts, you can rely on Stripe’s authentication to offer zero-touch onboarding. Using this method, your app doesn’t require any onboarding and is usable immediately after installation.
Start by setting up your backend to authenticate requests from your app’s UI. With that in place, you can store information in your database with an added column for the user ID or account ID provided by Stripe. Users are already signed into the Stripe Dashboard when they use your app, so there’s no need for additional authentication.