---
schema_version: "1"
id: e030d4570eccfbf52dc16160b69f64916c39f1c5edcabf8209502434e43c860a
title: Onboard a New Account with a Screen Flow Example
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/platform/264-0-0/automate_flow_build_example_onboard_account_screen_flow.md
canonical_url: https://help.salesforce.com/s/articleView?id=platform.automate_flow_build_example_onboard_account_screen_flow.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 71a7f89453013aee91c45e8c4e3e29515f0a9b19637ea81558707e5814b8d9be
description: This example creates a screen flow that sales reps launch from an account to update onboarding fields, attach paperwork, and create tasks.
products:
  - Flow Builder
  - Salesforce Platform
release: "264"
---
# Onboard a New Account with a Screen Flow Example

This example creates a screen flow that sales reps launch from an account to update onboarding fields, attach paperwork, and create tasks.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;"><a href="https://help.salesforce.com/s/articleView?id=platform.flow_ref_supported_editions.htm&amp;release=264.0.0&amp;type=5" title="Learn about the editions and user interfaces that support Flow Builder. Some Flow Builder features integrate with other Salesforce products that require additional licenses.">View supported editions.</a></td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:left;vertical-align:top;" id="d151411e59">User Permissions Needed</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d151411e59 ">To open, edit, create, activate or
              deactivate a flow using all flow types, elements, and features available in Flow
              Builder, including Einstein and Agentforce for Flow:</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d151411e59 ">Manage Flow</td>

          </tr>
        </tbody>
      </table>

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/images/icon_note.png)

Note You don't need to be an admin to have the Manage Flow permission. Ask your admin to add it to your profile or permission set.

Your sales reps repeat the same steps every time they onboard a new account. They update account fields, create kickoff tasks one at a time, and chase down paperwork. Reps skip steps, and every account goes through a slightly different process.

This screen flow gives reps one place to do it all. From an account, a rep chooses the onboarding categories, picks the standard tasks to create, and uploads the paperwork. The flow updates the account and creates one task for each selected item. The screen uses a Multi-Select Picklist, a Checkbox Group, and a File Upload component. You can build a similar flow for renewals by changing the fields and tasks.

To build the example, you create the account fields, the screen flow and its choices, and the task variables. Then you build the onboarding screen, add the logic that creates the tasks and activate the flow, and create the quick action that launches it.

#### See Also

- [Multi-Select Picklist Screen Input Component](https://help.salesforce.com/s/articleView?id=platform.flow_ref_elements_screencmp_msp.htm&release=264.0.0&type=5 "Let users choose multiple options in a picklist format.")
- [Checkbox Group Screen Input Component](https://help.salesforce.com/s/articleView?id=platform.flow_ref_elements_screencmp_checkboxgroup.htm&release=264.0.0&type=5 "Let users choose multiple options in a checkbox format.")
- [File Upload Screen Input Component](https://help.salesforce.com/s/articleView?id=platform.flow_ref_elements_screencmp_fileupload.htm&release=264.0.0&type=5 "Let users upload files from a flow screen.")
- [Loop Element](https://help.salesforce.com/s/articleView?id=platform.flow_ref_elements_loop.htm&release=264.0.0&type=5 "Start a loop path for iterating over items in a collection variable. For each iteration, the flow temporarily stores the item in the loop variable. To run actions on each item’s field values, use other elements in the loop.")

## Create the Account Fields

Create the custom fields that the flow updates on the account to track onboarding.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
          <colgroup>
            <col style="width:50%">
            <col style="width:50%">
          </colgroup>
          <thead class="slds-text-title_caps ">
            <tr class="">
              <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:left;vertical-align:top;" id="d151411e162">User Permissions Needed</th>
            </tr>
          </thead>
          <tbody>
            <tr class="">
              <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d151411e162 ">To create and edit custom objects:</td>

              <td class="slds-cell-wrap" style="vertical-align:top;" headers="d151411e162 ">Customize Application</td>

            </tr>
          </tbody>
        </table>

Learn more about creating custom fields in [Create Custom Fields](https://help.salesforce.com/s/articleView?id=platform.adding_fields.htm&type=5&language=en_US).

1. From Setup, click **Object Manager**, and then click **Account**.
2. If you don't have an Onboarding Status field on Account, create one.
    1. Click **Fields & Relationships**, and then click **New**.
    2. Select **Picklist**, and then click **Next**.
    3. For Field Label, enter Onboarding Status.
    4. For Values, select **Enter values, with each value separated by a new line**.
    5. In the text box, enter these values on separate lines: Not Started, In Progress, and Complete.
    6. Use the default settings and click **Next** until you can save the field.
    7. Click **Save & New**.
3. If you don't have an Onboarding Start Date field on Account, create one.
    1. Select **Date**, and then click **Next**.
    2. For Field Label, enter Onboarding Start Date.
    3. Use the default settings and click **Next** until you can save the field.
    4. Click **Save & New**.
4. If you don't have an Onboarding Categories field on Account, create one.
    
    1. Select **Picklist (Multi-Select)**, and then click **Next**.
    2. For Field Label, enter Onboarding Categories.
    3. For Values, select **Enter values, with each value separated by a new line**.
    4. In the text box, enter these values on separate lines: Sales Kickoff, Portal Setup, and Training.
        
        The values must match the choice labels that you create for the flow later in this example.
    5. Use the default settings and click **Next** until you can save the field.
    6. Save your changes.
    
    ![Fields & Relationships in Object Manager that show the fields: Onboarding Categories, Onboarding Start Date, and Onboarding Status](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/automate_flow_build_example_onboard_acct_custom_fields.png)

## Create the Screen Flow and Choice Resources

Create the screen flow, the variable that receives the account ID, and the choices that the screen shows.

1. Open the Flows list view.
    
    - From the Automation app, select the **Flows** tab.
    - From the **Flows** tab in any Lightning app, click the actions menu and select **Open Flow**.
    - From Setup, in the Quick Find box, enter Flows, and then select **Flows**.
    
    Note that the Automation app and Flows tab options don't require Setup access.
2. Create a screen flow.
    
    - From the Automation app, click **New** | **Screen Automations** | **Screen Flow**.
    - From Setup, click **New Flow** | **Screen Automations** | **Screen Flow**
    
    The new screen flow opens in Flow Builder.
3. Create a variable to store the ID of the account where the user starts the flow.
    
    The quick action passes the account ID into this variable. The flow uses the ID to find the account to update and to relate the new tasks and uploaded files to the account.
    
    1. To open the Toolbox, click ![Toolbox icon.](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/automate_flow_build_open_toolbox.png).
    2. Click **New Resource**, and then select **Variable**.
    3. For API Name, enter recordId.
    4. For Data Type, select **Text**.
    5. For Availability Outside the Flow, select **Available for input**.
    6. Click **Done**.
4. Create a Choice resource for each onboarding category.
    
    These choices appear in the Multi-Select Picklist component. Repeat these substeps for each category in the table.
    
    1. Click **New Resource**, and then select **Choice**.
    2. For Data Type, select **Text**.
    3. For API Name, Choice Label, and Choice Value, enter the values from the table.
        
          
        | API Name | Choice Label | Choice Value |
        | --- | --- | --- |
        | SalesKickoff | Sales Kickoff | Sales Kickoff |
        | PortalSetup | Portal Setup | Portal Setup |
        | Training | Training | Training |
    4. Click **Done**.
5. Create a Choice resource for each standard task.
    
    These choices appear in the Checkbox Group component. Repeat these substeps for each task in the table. Later in this example, you add the same task names to a collection, and those names become the task subjects.
    
    1. Click **New Resource**, and then select **Choice**.
    2. For Data Type, select **Text**.
    3. For API Name, Choice Label, and Choice Value, enter the values from the table.
        
          
        | API Name | Choice Label | Choice Value |
        | --- | --- | --- |
        | ScheduleKickoffCall | Schedule kickoff call | Schedule kickoff call |
        | SetUpPortalAccess | Set up portal access | Set up portal access |
        | AssignTraining | Assign training | Assign training |
    4. Click **Done**.

## Create the Task Variables

Create the variables that the flow uses to build the onboarding tasks.

Continue in the screen flow that you created.

1. Create a text collection variable that holds the standard task names.
    
    The loop later in this example goes through this collection one task name at a time.
    
    1. Click **New Resource**, and then select **Variable**.
    2. For API Name, enter StandardTaskNames.
    3. For Data Type, select **Text**.
    4. Select **Allow multiple values (collection)**.
    5. Click **Done**.
2. Create a record variable that holds one task at a time.
    1. Click **New Resource**, and then select **Variable**.
    2. For API Name, enter TaskRecord.
    3. For Data Type, select **Record**.
    4. For Object, select **Task**.
    5. Click **Done**.
3. Create a record collection variable that holds all the tasks to create.
    
    The flow creates all the tasks with a single Create Records element after the loop. The flow is efficient when it creates more than one task.
    
    1. Click **New Resource**, and then select **Variable**.
    2. For API Name, enter TasksToCreate.
    3. For Data Type, select **Record**.
    4. For Object, select **Task**.
    5. Select **Allow multiple values (collection)**.
    6. Click **Done**.

## Build the Onboarding Screen

Add the screen that collects the onboarding categories, the standard tasks, and the paperwork.

Continue in the screen flow that you created.

1. Add a Screen element.
    1. Click ![Add element plus icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/flow_builder_add_element_plus.png), and then select **Screen**.
    2. For Label, enter Onboarding Details and let the API name auto-fill.
2. Add a Multi-Select Picklist component for the onboarding categories.
    
    Users use this component to choose which onboarding categories apply to the account.
    
    1. From the Components list, drag a **Multi-Select Picklist** component onto the canvas.
    2. For Label, enter Onboarding Categories, and then for API Name, enter OnboardingCategories.
    3. For Choice, add the **SalesKickoff**, **PortalSetup**, and **Training** choices.
3. Add a Checkbox Group component for the standard tasks.
    
    Users use this component to pick which standard tasks the flow creates.
    
    1. Drag a **Checkbox Group** component below the Multi-Select Picklist component.
    2. For Label, enter Standard Tasks, and then for API Name, enter StandardTasks.
    3. For Choice, add the **ScheduleKickoffCall**, **SetUpPortalAccess**, and **AssignTraining** choices.
4. Add a File Upload component for the paperwork.
    
    Users use this component to attach onboarding paperwork to the account.
    
    1. Drag a **File Upload** component below the Checkbox Group component.
    2. For API Name, enter OnboardingPaperwork.
    3. For File Upload Label, enter Onboarding Paperwork.
    4. For Allow Multiple Files, select **{!$GlobalConstant.True}**.
    5. For Related Record ID, select **recordId**.
        
        This step attaches the uploaded files to the account.
    6. Click **Done**.
    
    ![The Onboarding Details screen in Flow Builder, showing the Multi-Select Picklist, Checkbox Group, and File Upload components in the Edit Screen window](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/automate_flow_build_example_onboard_acct_build_screen.png)

## Add the Logic, Create the Tasks, and Activate the Flow

Add the elements that update the account and create the selected tasks. Then activate the flow.

Continue in the screen flow that you created. The finished flow starts at the Onboarding Details screen. It then runs Update Account and Set Standard Task Names, and it loops through the standard task names. In the loop, Task Selected? checks each name, and the Yes path runs Build Task Record and Add Task to Collection. After the loop, Create Onboarding Tasks creates the tasks, and its fault path shows an error message.

![The finished flow canvas in Flow Builder. The Onboarding Details screen, Update Account, Set Standard Task Names, and Loop Through Standard Tasks run in sequence. In the loop, the Task Selected? decision leads to Build Task Record and Add Task to Collection. After the loop, Create Onboarding Tasks has a fault path to Show Error Message.](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/automate_flow_build_example_onboard_acct_all_canvas.png)

1. Add and configure an Update Records element.
    
    This step updates the onboarding fields on the account where the user started the flow.
    
    1. After the Onboarding Details element, click ![Add element plus icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/flow_builder_add_element_plus.png), and then select **Update Records**.
    2. For Label, enter Update Account and let the API name auto-fill.
    3. For How to Find Records to Update and Set Their Values, select **Specify conditions to identify records, and set fields individually**.
    4. For Update Records of This Object Type, select **Account**.
    5. Under Condition Requirements to Update Record, for Field select **Account ID**, for Operator select **Equals**, and for Value select **recordId**.
        
        This step identifies the account where the user started the flow.
    6. Under Set Field Values for the Account Records, set the fields in the table.
        
         
        | Field | Value |
        | --- | --- |
        | Onboarding Status | In Progress |
        | Onboarding Start Date | **{!$Flow.CurrentDate}** |
        | Onboarding Categories | OnboardingCategories (the Multi-Select Picklist component) |
2. Add an Assignment element that fills the StandardTaskNames collection.
    
    The flow adds each task name to the collection with an Assignment element. If you change a task name in the choices, change it here too.
    
    1. After the Update Account element, click ![Add element plus icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/flow_builder_add_element_plus.png), and then select **Assignment**.
    2. For Label, enter Set Standard Task Names and let the API name auto-fill.
    3. For Variable, select **StandardTaskNames**, for Operator select **Add**, and for Value enter Schedule kickoff call.
    4. Click **\+ Add Assignment**, and then add the other two task names with the same variable and operator: Set up portal access and Assign training.
        
        The values must match the choice values that you created for the Checkbox Group component.
3. Add and configure a Loop element.
    
    The loop goes through the standard task names one at a time so the flow can check each one against the user's selections.
    
    1. After the Set Standard Task Names element, click ![Add element plus icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/flow_builder_add_element_plus.png), and then select **Loop**.
    2. For Label, enter Loop Through Standard Tasks and let the API name auto-fill.
    3. For Collection Variable, select **StandardTaskNames**.
    4. For Direction, select **First item to last item**.
4. In the loop, add and configure a Decision element.
    
    This step checks whether the user selected the task that the loop is on.
    
    1. After For Each, click ![Add element plus icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/flow_builder_add_element_plus.png), and then select **Decision**.
    2. For Label, enter Task Selected? and let the API name auto-fill.
    3. For Outcome Label, enter Yes and let the API name auto-fill.
    4. Under Condition Requirements to Execute Outcome, for Resource select the **StandardTasks** component's selected values, for Operator select **Contains**, and for Value select **Current Item from Loop Loop Through Standard Tasks**.
    5. Rename the Default Outcome to No.
        
        The No path continues to the next item in the collection.
5. On the Yes path, add an Assignment element that builds the task.
    1. On the Yes path, click ![Add element plus icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/flow_builder_add_element_plus.png), and then select **Assignment**.
    2. For Label, enter Build Task Record and let the API name auto-fill.
    3. Set the values in the table. For each row, select the variable in Variable, select **Equals** in Operator, and enter or select the value in Value. Click **\+ Add Assignment** to add each row.
        
          
        | Resource | Operator | Value |
        | --- | --- | --- |
        | TaskRecord > Subject | Equals | Current Item from Loop > Loop Through Standard Tasks |
        | TaskRecord > Status | Equals | Not Started |
        | TaskRecord > Related To ID | Equals | recordId |
6. After the Build Task Record element, add an Assignment element that adds the task to the collection.
    
    1. Click ![Add element plus icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/flow_builder_add_element_plus.png), and then select **Assignment**.
    2. For Label, enter Add Task to Collection and let the API name auto-fill.
    3. For Variable, select **TasksToCreate**, for Operator select **Add**, and for Value select **TaskRecord** and then **Entire Resource**.
    
    ![The loop in Flow Builder. Loop Through Standard Tasks runs the Task Selected? decision. On the Yes path, Build Task Record and Add Task to Collection run, and then the flow returns to the loop.](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/automate_flow_build_example_onboard_acct_loop_canvas.png)
7. After the loop ends, add and configure a Create Records element.
    
    This step creates all the selected tasks in one operation.
    
    1. After the loop, click ![Add element plus icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/flow_builder_add_element_plus.png), and then select **Create Records**.
    2. For Label, enter Create Onboarding Tasks and let the API name auto-fill.
    3. For How to set record field values, select **From a Record Variable**.
    4. For How Many Records to Create, select **Multiple**.
    5. For Record Collection, select **TasksToCreate**.
8. Add a fault path to the Create Onboarding Tasks element, and then add a screen that shows the error.
    
    The fault path catches errors when the flow creates the tasks and shows the user what went wrong.
    
    1. On the Create Onboarding Tasks element, click the three dots, and then click **Add Fault Path**.
    2. On the fault path, add a Screen element. For Label, enter Show Error Message and let the API name auto-fill.
    3. Drag a **Message** component onto the screen. For API Name, enter ErrorMessage, and for Message Type, select **Critical**.
9. Create the text template that holds the error message.
    1. For Message Content, click **\+ New Resource**.
    2. For Resource Type, select **Text Template**, and then for API Name, enter Fault\_Message.
    3. For Body, enter We couldn't create the onboarding tasks due to an error: .
    4. In the Insert a resource field, select **Running Flow Interview** | **Fault Message**.
    5. Click **Done** to close the resource, and then click **Done** to close the screen.
10. Save, test, and activate the flow.
    
    1. Click **Save**. For Flow Label, enter Onboard a New Account, and let the API name auto-fill.
    2. Test your flow using sample information.
        
        The flow updates the account and creates one task for each selected item.
    3. Click **Activate**.
    
    The flow is ready to launch from an account. Next, create the quick action that starts it.

## Create a Quick Action to Launch the Flow

Create a quick action on the account object. Reps click the action on an account record page to start the onboarding flow.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
          <colgroup>
            <col style="width:50%">
            <col style="width:50%">
          </colgroup>
          <thead class="slds-text-title_caps ">
            <tr class="">
              <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:left;vertical-align:top;" id="d151411e2035">User Permissions Needed</th>
            </tr>
          </thead>
          <tbody>
            <tr class="">
              <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d151411e2035 ">To create and edit quick actions:</td>

              <td class="slds-cell-wrap" style="vertical-align:top;" headers="d151411e2035 ">Customize Application</td>

            </tr>
          </tbody>
        </table>

The quick action passes the account's record ID into the `recordId` variable, so the flow works on the account where the user clicks the action.

1. From Setup, click **Object Manager**, and then select **Account**.
2. Click **Buttons, Links, and Actions**, and then click **New Action**.
3. For Action Type, select **Flow**.
4. For Flow, select **Onboard a New Account**.
5. For Label, enter Onboard Account, and then click **Save**.
    
    The API name auto-fills.
6. Add the action to the account page layout.
    1. Click **Page Layouts**, and then select **Account Layout**.
    2. Click **Mobile & Lightning Actions**.
    3. Drag the **Onboard Account** action to the Salesforce Mobile and Lightning Experience Actions section.
    4. Click **Save**.
7. Open an account record, click **Onboard Account**, and test the flow with sample data.
    
    Reps can now onboard an account, update its fields, attach paperwork, and create the selected tasks from the account record page.