Onboard Person

This is a powerful block (commonly referred to as Onboarding) with many configuration options, so we'll explain all of the screens below and the settings available for each. The purpose of this block is to walk users through a step-by-step process of creating an account (or signing in) and confirming demographic information, campus, and notification preferences.

Hello Screen

This initial screen greets people and begins the account validation process. It supports entering a mobile phone or email address for account verification, skipping the onboarding process entirely, or going straight to the Login page.

The email option will appear when Rock has an active email transport configured and the system communication is not null. The Phone option will appear when Rock has an active SMS transport configured and the system communication From number is not null. If you've made changes to these elements, be sure to Deploy and reload the app to see the appropriate options reflected.

The Title and Subtitle shown here can be customized in the block settings (this is true for all screens). The option to Skip onboarding is optional for those who want to require everyone to go through this process. This is handy when your app requires people to be signed in or have campus context.


You'll need to create a new system communication in Rock for verification to work. In the Message Template for Email and SMS, you'll need to include the {{ Code }} merge field, which will insert a unique six-digit number into each person's communication. They'll be asked to enter it on the next screen.

Don't forget to update the System Communication in the block settings. We recommend keeping these messages brief and putting the code towards the beginning so that it can be easily read within the mobile notification.

Code Sent Screen

This screen is straightforward - it confirms the correct code is entered and proves the person is who they say they are. This is an important step to complete first since we don't want accounts being highjacked. If the code is invalid, they'll be sent back to the Hello Screen to try again. You can configure the time limit, IP throttle limit, and attempt limit in the block settings to prevent malicious behavior.

Name Screen

This screen is shown once a code has been verified. These fields will be pre-filled if a person match was found, otherwise a new account will be created. This gives everyone the opportunity to correct any issues with their name.

Person Matching

The phone number or email address that was verified may belong to an existing account. If so, we can safely assume this is the same person and fill in their information in advance.

If the verified contact method is linked to more than one account in Rock, we can't be sure who it is. A new account will be created instead, which may need to be merged later.

Personal Information Screen

This screen has a few block settings available. You can set both the Gender and Birthday questions to Hidden, Optional, or Required. You can also hide the fields if a person match was found and the value is already known. If both questions are set to be skipped, this screen will also be skipped.

Contact Information Screen

Interests Screen

This screen will only appear when Communication List Categories has been set in the block settings.

Notifications Screen

By default an app requests permission to send notifications when it's first opened. You can turn this off in the Application settings (the Enable Notifications Automatically option under Advanced Settings) and instead ask during the onboarding process, which might be a better UX. This screen provides a place to explain why someone might enable notifications and what kind of content they could expect to see. You can turn this screen off in the block settings with the Show Notifications Request option.

Once a request has been made for push notifications, a new App Value is created with the following key: core_PushNotificationHasBeenRequested

In the case where onboarding is optional or someone signs in without seeing this screen, you can check this value and show a button to enable push notifications elsewhere.

{% if AppValues.core_PushNotificationHasBeenRequested != true %}
    <Button Text="Enable Notifications" Command="{Binding EnablePushNotifications}" />
{% endif %}

Campus Screen

This screen is shown to those that do not have a campus selected, or when the Hide Campus if Known setting is No. The campuses available for selection can be set to Physical or Online with a status of Closed, Open, or Pending. You can also select a single campus for the Online and Do Not Attend options, which will make the associated buttons appear.

Create Login Screen

This screen can be set to Hidden, Optional, or Required in the block settings with Create Login.

Last updated

⚙️ Powered by Rock RMS