Sort by Topics, Resources
Clear
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Salto for

Salesforce

Articles

SHARE

Crafting Successful Salesforce Flows–Insights from a Flow Fanatic

Dee Hamori

November 14, 2023

4

min read

In today's dynamic business environment, leveraging Salesforce Flow to streamline your processes and enhance user experiences is crucial. However, successful Flow implementation requires a well-thought-out approach to meet business requirements effectively. This blog post will guide you through a checklist of considerations for developing Flows in Salesforce, ensuring your efforts align with the business's goals and expectations.

Experience the Ease & Confidence of NetSuite Customizations with Salto

Automate the way you migrate Jira configurations from sandbox to production

STAY UP TO DATE

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Total visibility for impact analysis using Salto

“Where is it used” for standard and custsom fields

Start free 30-day trial ≥

Requirements Gathering

Before diving into the world of Flow development, it's important to understand what you are solving for. Here are the key aspects to consider during the requirements-gathering phase:

Understand Business Requirements and Goals

Begin by thoroughly understanding your business's specific needs and goals. This involves deep diving into the processes you aim to optimize with Salesforce Flow.

Explore Out-of-the-Box Functionalities

Make sure to investigate Salesforce's out-of-the-box functionalities. There might be existing features that can meet your requirements without custom development. For example, if your users need to be alerted when a Case has been opened for more than 2 days, subscribe them to a report instead of using Flow to send out individual Case reminder emails. 

Document Use Cases and Desired Outcomes

Create detailed documentation of your use cases and the desired outcomes you wish to achieve with the Flow. This documentation will serve as your roadmap throughout the development process.

Define Acceptance Criteria

Establish clear acceptance criteria to evaluate whether the Flow meets the requirements. This helps ensure that your development efforts are on the right track.

Flow Design

The design phase is where you mold your Flow into a user-friendly, efficient solution. Consider the following:

Simplicity and User-Friendliness

Design your Flow to be simple, intuitive, and user-friendly. Users should be able to navigate through it with ease. If you are using a Screen Flow, can your users enter all the required information (esp for related records) without having to exit the Flow? 

Optimize DML Statements

Place all DML (insert, update, upsert, delete) statements outside of loops to maintain the Flow's performance and efficiency. Psst, these are the pink elements in Flow.

Follow Flow Naming Conventions

Consistently follow Flow naming conventions to ensure clarity and maintainability. If your org doesn’t have an established naming convention, Automation Champion has a really great one!

Consider Asynchronous Flow

Evaluate whether an Asynchronous Flow would be more suitable for your use case. If your process doesn’t need to happen in real time, Asynchronous Flows lessen the burden on the system.

Before Save vs. After Save

Assess whether your Flow can be optimized by using a Before Save Flow instead of an After Save Flow. If you are running into CPU limit, consider switching your After Save Flow to Before Save Flow. 

Tighten Trigger Criteria

Ensure that the trigger criteria in Record-Triggered Flows are well-defined and efficient to minimize unnecessary processing.

Long-Term Maintainability

Think about the long-term maintainability of your Flow. Keep it modular to facilitate future enhancements and changes.

Leverage Descriptions

Use descriptions effectively to make your Flow easier to understand, especially for other administrators or developers who may work with it in the future.

Flow Switches

Consider incorporating Flow switches to handle mass data upload and recovery scenarios, such as using OwnBackup for data recovery.

No hardcoded Ids

Avoid hardcoding Ids within your Flow to ensure flexibility and adaptability to changing data. Learn how to not hardcode your Flows here.

Error Handling

Mistakes and unexpected scenarios are part of any development process. Make sure you're prepared to handle them:

Custom Errors

Use the Custom Error element to roll back a change that triggered a flow and inform the user exactly what caused the error. This is a new feature, you can read more about it here

Fault Paths

Include fault paths in your Flow to gracefully handle unexpected scenarios and errors. For example, if you have a synchronous Flow error when your customer is submitting a Case via Web-to-Case, the Case will not be created without proper fault paths. 

Error Handling and Messages

Provide appropriate error handling and error messages within the Flow to guide users when issues arise.

Bulk Data Processing

Ensure your Flow can handle large volumes of data:

Performance Testing

Test your Flow with a substantial volume of records (e.g., 200) to guarantee it performs efficiently.

Apex for High-Performance

Consider utilizing Apex for high-performance batch processing if Flow alone isn't sufficient for your data processing needs.

Testing and Debugging

A well-tested Flow is a reliable Flow:

Testing in Different Scenarios

Test your Flow in various scenarios and user roles to ensure it performs flawlessly in real-world scenarios.

Debugging Tool

Use the debug function to troubleshoot and resolve any issues that may arise during testing.

Involve End-Users

Engage end-users in the testing process to gather valuable feedback and make necessary adjustments to enhance the user experience and adoption. 

Security

Don't overlook the security aspects of your Flow:

Security Implications

Consider the security implications of your Flow, including data access and user permissions.

Documentation

Last but not least, ensure that your efforts are well-documented:

Comprehensive Documentation

Document the purpose, design, and functionality of the Flow to provide a comprehensive reference for administrators, developers, and other stakeholders. Pro-tip: remember to include WHY you chose your Flow approach. 

Special Considerations

Include any special considerations or dependencies in the documentation to assist with troubleshooting and future modifications. 

Share with Stakeholders

Share the documentation with relevant stakeholders to keep everyone on the same page and facilitate effective collaboration.

STAY UP TO DATE

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

The org comparison tool every admin needs

Understand the impact of every change in your org

Try Salto free ≥

In conclusion, Salesforce Flow development requires meticulous planning and continuous optimization. By following this checklist, you can maximize the potential of Salesforce Flow to meet your business objectives and provide a seamless experience for your users. Don’t forget to always build in Sandbox. Hope this was helpful. See you on the trails :)

WRITTEN BY OUR EXPERT

Dee Hamori

Salesforce Architect

Dee, a former pharmacist turned Salesforce architect, dedicates herself to streamlining business processes with automation. She actively supports the Salesforce community by mentoring career changers and leading Salesforce Saturday meetups. Dee shares her Salesforce insights through articles and conference talks. Beyond her professional life, she finds joy in tending to her plant collection, exploring the great outdoors in national parks, and immersing herself in the pleasures of reading and painting.

Sort by Topics, Resources
Clear
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Salto for

Salesforce

Salesforce

SHARE

Crafting Successful Salesforce Flows–Insights from a Flow Fanatic

Dee Hamori

November 14, 2023

4

min read

In today's dynamic business environment, leveraging Salesforce Flow to streamline your processes and enhance user experiences is crucial. However, successful Flow implementation requires a well-thought-out approach to meet business requirements effectively. This blog post will guide you through a checklist of considerations for developing Flows in Salesforce, ensuring your efforts align with the business's goals and expectations.

What if Zendesk was 4x less work?

Request a Demo Get started with Salto

Requirements Gathering

Before diving into the world of Flow development, it's important to understand what you are solving for. Here are the key aspects to consider during the requirements-gathering phase:

Understand Business Requirements and Goals

Begin by thoroughly understanding your business's specific needs and goals. This involves deep diving into the processes you aim to optimize with Salesforce Flow.

Explore Out-of-the-Box Functionalities

Make sure to investigate Salesforce's out-of-the-box functionalities. There might be existing features that can meet your requirements without custom development. For example, if your users need to be alerted when a Case has been opened for more than 2 days, subscribe them to a report instead of using Flow to send out individual Case reminder emails. 

Document Use Cases and Desired Outcomes

Create detailed documentation of your use cases and the desired outcomes you wish to achieve with the Flow. This documentation will serve as your roadmap throughout the development process.

Define Acceptance Criteria

Establish clear acceptance criteria to evaluate whether the Flow meets the requirements. This helps ensure that your development efforts are on the right track.

Flow Design

The design phase is where you mold your Flow into a user-friendly, efficient solution. Consider the following:

Simplicity and User-Friendliness

Design your Flow to be simple, intuitive, and user-friendly. Users should be able to navigate through it with ease. If you are using a Screen Flow, can your users enter all the required information (esp for related records) without having to exit the Flow? 

Optimize DML Statements

Place all DML (insert, update, upsert, delete) statements outside of loops to maintain the Flow's performance and efficiency. Psst, these are the pink elements in Flow.

Follow Flow Naming Conventions

Consistently follow Flow naming conventions to ensure clarity and maintainability. If your org doesn’t have an established naming convention, Automation Champion has a really great one!

Consider Asynchronous Flow

Evaluate whether an Asynchronous Flow would be more suitable for your use case. If your process doesn’t need to happen in real time, Asynchronous Flows lessen the burden on the system.

Before Save vs. After Save

Assess whether your Flow can be optimized by using a Before Save Flow instead of an After Save Flow. If you are running into CPU limit, consider switching your After Save Flow to Before Save Flow. 

Tighten Trigger Criteria

Ensure that the trigger criteria in Record-Triggered Flows are well-defined and efficient to minimize unnecessary processing.

Long-Term Maintainability

Think about the long-term maintainability of your Flow. Keep it modular to facilitate future enhancements and changes.

Leverage Descriptions

Use descriptions effectively to make your Flow easier to understand, especially for other administrators or developers who may work with it in the future.

Flow Switches

Consider incorporating Flow switches to handle mass data upload and recovery scenarios, such as using OwnBackup for data recovery.

No hardcoded Ids

Avoid hardcoding Ids within your Flow to ensure flexibility and adaptability to changing data. Learn how to not hardcode your Flows here.

Error Handling

Mistakes and unexpected scenarios are part of any development process. Make sure you're prepared to handle them:

Custom Errors

Use the Custom Error element to roll back a change that triggered a flow and inform the user exactly what caused the error. This is a new feature, you can read more about it here

Fault Paths

Include fault paths in your Flow to gracefully handle unexpected scenarios and errors. For example, if you have a synchronous Flow error when your customer is submitting a Case via Web-to-Case, the Case will not be created without proper fault paths. 

Error Handling and Messages

Provide appropriate error handling and error messages within the Flow to guide users when issues arise.

Bulk Data Processing

Ensure your Flow can handle large volumes of data:

Performance Testing

Test your Flow with a substantial volume of records (e.g., 200) to guarantee it performs efficiently.

Apex for High-Performance

Consider utilizing Apex for high-performance batch processing if Flow alone isn't sufficient for your data processing needs.

Testing and Debugging

A well-tested Flow is a reliable Flow:

Testing in Different Scenarios

Test your Flow in various scenarios and user roles to ensure it performs flawlessly in real-world scenarios.

Debugging Tool

Use the debug function to troubleshoot and resolve any issues that may arise during testing.

Involve End-Users

Engage end-users in the testing process to gather valuable feedback and make necessary adjustments to enhance the user experience and adoption. 

Security

Don't overlook the security aspects of your Flow:

Security Implications

Consider the security implications of your Flow, including data access and user permissions.

Documentation

Last but not least, ensure that your efforts are well-documented:

Comprehensive Documentation

Document the purpose, design, and functionality of the Flow to provide a comprehensive reference for administrators, developers, and other stakeholders. Pro-tip: remember to include WHY you chose your Flow approach. 

Special Considerations

Include any special considerations or dependencies in the documentation to assist with troubleshooting and future modifications. 

Share with Stakeholders

Share the documentation with relevant stakeholders to keep everyone on the same page and facilitate effective collaboration.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

In conclusion, Salesforce Flow development requires meticulous planning and continuous optimization. By following this checklist, you can maximize the potential of Salesforce Flow to meet your business objectives and provide a seamless experience for your users. Don’t forget to always build in Sandbox. Hope this was helpful. See you on the trails :)

WRITTEN BY OUR EXPERT

Dee Hamori

Salesforce Architect

Dee, a former pharmacist turned Salesforce architect, dedicates herself to streamlining business processes with automation. She actively supports the Salesforce community by mentoring career changers and leading Salesforce Saturday meetups. Dee shares her Salesforce insights through articles and conference talks. Beyond her professional life, she finds joy in tending to her plant collection, exploring the great outdoors in national parks, and immersing herself in the pleasures of reading and painting.