{"id":786,"date":"2026-06-28T09:00:00","date_gmt":"2026-06-28T03:30:00","guid":{"rendered":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/"},"modified":"2026-06-28T09:00:00","modified_gmt":"2026-06-28T03:30:00","slug":"advanced-salesforce-flows-fault-paths","status":"publish","type":"post","link":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/","title":{"rendered":"Advanced Salesforce Flows: Subflows, Fault Paths and Scheduled Paths"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Advanced Salesforce Flows use three skills that separate a beginner flow from a production-ready one: subflows to reuse logic, fault paths to handle errors, and scheduled paths to act later in time. In our <a href=\"https:\/\/swapnilzambare.com\/blog\/salesforce-flow-builder-automation-guide\/\">Flow Builder guide<\/a>, you built your first flow. In our <a href=\"https:\/\/swapnilzambare.com\/blog\/salesforce-flow-types-explained\/\">flow types guide<\/a>, you met screen, record-triggered and scheduled flows. Now you will make those flows reusable, safe and time-aware.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In this post, you will learn how to call one flow from another, how to catch errors before users see a scary message, and how to run steps days after a record changes. Then you will build a course reminder at Bright Path Tutors that uses all three. You should know the save order from our <a href=\"https:\/\/swapnilzambare.com\/blog\/salesforce-order-of-execution\/\">order of execution guide<\/a>, because scheduled paths run outside the original save.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What are Advanced Salesforce Flows?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Advanced flows are normal flows built with patterns that real orgs need. A subflow is a flow that another flow calls, like a function in code. Next, a fault path is a second exit from an element that runs only when that element fails. A scheduled path is a branch of a record-triggered flow that waits until a time you choose, such as three days before a course starts.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here is a simple analogy. Think of a school office. A standard form for leave requests is reused by every class, which is the subflow. If the printer jams, a helper fixes it and tells the teacher, which is the fault path. Reminders for parent meetings go out a week before the date, which is the scheduled path.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why Advanced Salesforce Flows Matter<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Simple flows break in real life. A Create Records element fails because a required field is missing, and the user sees &#8220;An unhandled fault has occurred&#8221;. Or the same &#8220;send welcome email&#8221; logic is copied into five flows, and only four get updated.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here are some real situations at Bright Path Tutors.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Three flows send the same welcome email and create the same follow-up task.<\/li>\n\n<li>A flow fails at night, and nobody knows until a parent complains.<\/li>\n\n<li>Students should get a reminder two days before their course starts.<\/li>\n\n<li>The finance team wants a follow-up task 30 days after an unpaid enrollment.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">So these patterns make flows easier to maintain and safer to run.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How Advanced Salesforce Flows Work<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The three patterns fit together in one design. First, you build small autolaunched flows for shared jobs, such as &#8220;Send Welcome Package&#8221;. Next, your main record-triggered flow calls them with a Subflow element and passes values in. Then you add fault paths to every element that touches data, so failures go to a clean error step. Finally, you add a scheduled path that runs later, based on a date field on the record.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-1-1024x640.png\" alt=\"Advanced Salesforce Flows diagram showing a main flow calling a subflow with a fault path and a scheduled path\" class=\"wp-image-690\" srcset=\"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-1-1024x640.png 1024w, https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-1-300x188.png 300w, https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-1-768x480.png 768w, https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-1-1536x960.png 1536w, https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-1-2048x1280.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">How advanced Salesforce flows work: a record-triggered flow calls a subflow, catches errors on a fault path and runs a scheduled path later.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Each part is optional, but together they cover most real business needs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Key Parts of Advanced Salesforce Flows<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Subflows and variables<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">First, a subflow is an autolaunched flow with variables marked &#8220;Available for input&#8221; or &#8220;Available for output&#8221;. The parent flow uses a Subflow element to call it and map values. For example, the parent passes the Contact ID, and the subflow returns the new Task ID.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Fault paths in advanced flows<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Next, any element that touches data or calls an action can have a fault path. Click the element&#8217;s menu and choose Add Fault Path. On that path, use the $Flow.FaultMessage variable to see the error text, then log it or email the admin.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Scheduled paths<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Then scheduled paths live in record-triggered flows that run after the save. You choose a time source, such as Start Date, and an offset, like 2 days before. Salesforce queues the path and runs it later as an automated process.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Run asynchronously<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A record-triggered flow can also have a &#8220;Run Asynchronously&#8221; path. It runs right after the save, but in a separate transaction. This is useful for callouts to other systems, which cannot run inside the save.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Error emails and debugging<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Finally, set who gets flow error emails in Process Automation Settings. Use the Debug button in Flow Builder to test each path before you activate it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The table below sums up the three main patterns.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Pattern<\/th><th>Where you add it<\/th><th>Bright Path Tutors example<\/th><\/tr><\/thead><tbody><tr><td>Subflow<\/td><td>Subflow element in any flow<\/td><td>Send Welcome Package<\/td><\/tr><tr><td>Fault path<\/td><td>Menu on a data or action element<\/td><td>Log failed task creation<\/td><\/tr><tr><td>Scheduled path<\/td><td>Start element of a record-triggered flow<\/td><td>Reminder 2 days before Start Date<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Advanced Flows: Fault Path vs No Fault Path<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Every beginner asks whether fault paths are worth the extra work. The table below compares a flow with and without them.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Feature<\/th><th>With fault path<\/th><th>Without fault path<\/th><\/tr><\/thead><tbody><tr><td>User sees<\/td><td>Your friendly message<\/td><td>&#8220;An unhandled fault has occurred&#8221;<\/td><\/tr><tr><td>Admin learns about it<\/td><td>Email or log record with details<\/td><td>Only the default error email<\/td><\/tr><tr><td>Rest of the flow<\/td><td>Can continue or end cleanly<\/td><td>Stops at once<\/td><\/tr><tr><td>Save of the record<\/td><td>You decide, using Roll Back Records<\/td><td>Whole save fails<\/td><\/tr><tr><td>Best for<\/td><td>Every production flow<\/td><td>Quick tests in a sandbox<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">In short, add fault paths to every Create, Update, Delete and Action element in production. Skip them only in throwaway test flows.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-2-1024x640.png\" alt=\"Advanced Salesforce Flows diagram comparing a flow with and without a fault path\" class=\"wp-image-691\" srcset=\"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-2-1024x640.png 1024w, https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-2-300x188.png 300w, https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-2-768x480.png 768w, https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-2-1536x960.png 1536w, https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-diagram-2-2048x1280.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">A flow with a fault path compared with a flow without one, and when to use each.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Hands-on Example: Advanced Salesforce Flows for Course Reminders<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Let&#8217;s build all three patterns in your Developer Edition org.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1: Build the subflow<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Create a new Autolaunched Flow (No Trigger) called &#8220;Create Follow Up Task&#8221;.<\/li>\n\n<li>Add text variables &#8220;varContactId&#8221; and &#8220;varSubject&#8221;, both Available for input.<\/li>\n\n<li>Add a Create Records element for a Task with WhoId = varContactId, Subject = varSubject and ActivityDate = TODAY() + 1. Save and activate.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Step 2: Build the main flow<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Create a Record-Triggered Flow on Enrollment, run when a record is created, optimized for Actions and Related Records.<\/li>\n\n<li>Add a Subflow element, choose Create Follow Up Task, and map the values from the table below.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Subflow variable<\/th><th>Value from the main flow<\/th><\/tr><\/thead><tbody><tr><td>varContactId<\/td><td>{!$Record.Student__c}<\/td><\/tr><tr><td>varSubject<\/td><td>Welcome call for new enrollment<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Step 3: Add a fault path<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click the Subflow element&#8217;s menu and choose Add Fault Path.<\/li>\n\n<li>On the fault path, add a Create Records element for a custom &#8220;Flow Error Log&#8221; object, with Message = {!$Flow.FaultMessage}.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Step 4: Add a scheduled path<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click the Start element and add a Scheduled Path called &#8220;Two Days Before Start&#8221;.<\/li>\n\n<li>Set Time Source to Course Start Date through a formula field on Enrollment, Offset 2, Days Before.<\/li>\n\n<li>On that path, add an Action to send the &#8220;Course Reminder&#8221; email alert. Save and activate.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">The time source must be a date field on the triggering record. So create a formula field on Enrollment that copies the course start date.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Course__r.Start_Date__c<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Step 5: Check the queue<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Scheduled paths wait until their time as paused flow interviews. Admins can see them in Setup under Paused and Failed Flow Interviews, or with this query.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>SELECT Id, InterviewLabel, InterviewStatus, CreatedDate\nFROM FlowInterview\nWHERE InterviewStatus = 'Paused'\nORDER BY CreatedDate DESC<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If the list is empty, check that the flow is active and that the course has a start date. Without a date, the path has nothing to count from.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Common Mistakes with Advanced Salesforce Flows<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>No fault paths in production.<\/strong> Users see a generic error and admins get no clear details.<\/li>\n\n<li><strong>Copying logic instead of using subflows.<\/strong> One fix then needs five edits.<\/li>\n\n<li><strong>Wrong optimization.<\/strong> Scheduled paths need a flow that runs after the save.<\/li>\n\n<li><strong>Using a parent field as the time source.<\/strong> Scheduled paths need a date field on the triggering record.<\/li>\n\n<li><strong>Forgetting the running user.<\/strong> Scheduled paths run as the Automated Process user, so check its access.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Best Practices for Advanced Salesforce Flows<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Keep subflows small.<\/strong> One job per subflow makes reuse easy.<\/li>\n\n<li><strong>Log every fault.<\/strong> A simple log object helps you find patterns in errors.<\/li>\n\n<li><strong>Name paths clearly.<\/strong> &#8220;Two Days Before Start&#8221; says exactly when it runs.<\/li>\n\n<li><strong>Test with Debug first.<\/strong> Debug each path, including the fault path, before you activate.<\/li>\n\n<li><strong>Review queued paths after changes.<\/strong> Old interviews may still wait in the queue.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Practice Task<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Add a second scheduled path, &#8220;30 Days After Unpaid&#8221;, that creates a finance task when Fee Paid is still 0. Use a condition on the path so it only runs for unpaid enrollments.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hint: add entry conditions in the Start element, then check Fee Paid again on the path with a Decision element.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Advanced Salesforce Flows FAQ<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Can a screen flow call a subflow?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Yes. Any flow type can call an autolaunched flow as a subflow.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">What happens to a scheduled path if the record changes?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">It depends on your entry conditions. If the record no longer meets them, Salesforce removes the scheduled path.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Can I retry a failed scheduled path?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">You can see failed interviews under Paused and Failed Flow Interviews in Setup.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Official Resources<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/help.salesforce.com\/s\/articleView?id=sf.flow_concepts_type.htm&amp;type=5\" target=\"_blank\" rel=\"noopener noreferrer\">Flow Types (Salesforce Help)<\/a><\/li>\n\n<li><a href=\"https:\/\/trailhead.salesforce.com\/content\/learn\/modules\/business_process_automation\" target=\"_blank\" rel=\"noopener noreferrer\">Business Process Automation module (Trailhead)<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Quick Recap<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Advanced Salesforce Flows use subflows, fault paths and scheduled paths.<\/li>\n\n<li>Subflows let many flows share one piece of logic.<\/li>\n\n<li>Fault paths catch errors and show friendly messages.<\/li>\n\n<li>Scheduled paths run later, based on a date on the record.<\/li>\n\n<li>Run Asynchronously paths handle callouts after the save.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">What&#8217;s Next?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Your flows are now ready for real work. Next, learn how to move old Workflow Rules and Process Builder automation into Flow. Read <a href=\"https:\/\/swapnilzambare.com\/blog\/migrate-to-flow-workflow-process-builder\/\">Migrate to Flow: Move Workflow Rules and Process Builder<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Advanced Salesforce Flows use three skills that separate a beginner flow from a production-ready one: subflows to reuse logic, fault paths to handle errors,&hellip;<\/p>\n","protected":false},"author":1,"featured_media":692,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_swapz_level":"","_swapz_series_part":0,"_swapz_hide_toc":false,"_swapz_hide_featured":false,"_swapz_description":"","footnotes":""},"categories":[67,12,8,13],"tags":[68,28,11,7],"swapz_series":[],"class_list":["post-786","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-advanced-admin","category-flow","category-salesforce","category-salesforce-admin","tag-advanced","tag-automation","tag-flows","tag-salesforce"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Advanced Salesforce Flows: Subflows and Fault Paths<\/title>\n<meta name=\"description\" content=\"Advanced Salesforce Flows explained: reuse logic with subflows, catch errors with fault paths and act later with scheduled paths, with a hands-on example.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Advanced Salesforce Flows: Subflows and Fault Paths\" \/>\n<meta property=\"og:description\" content=\"Advanced Salesforce Flows explained: reuse logic with subflows, catch errors with fault paths and act later with scheduled paths, with a hands-on example.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/\" \/>\n<meta property=\"og:site_name\" content=\"Swapnil Zambare - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-28T03:30:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-featured.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2400\" \/>\n\t<meta property=\"og:image:height\" content=\"1260\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Swapnil Zambare\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Swapnil Zambare\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/\"},\"author\":{\"name\":\"Swapnil Zambare\",\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/#\\\/schema\\\/person\\\/922ac0131aaa7088c78c2cb1700e0c9a\"},\"headline\":\"Advanced Salesforce Flows: Subflows, Fault Paths and Scheduled Paths\",\"datePublished\":\"2026-06-28T03:30:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/\"},\"wordCount\":1562,\"publisher\":{\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/advanced-salesforce-flows-fault-paths-featured.png\",\"keywords\":[\"Advanced\",\"Automation\",\"Flows\",\"Salesforce\"],\"articleSection\":[\"Advanced Admin\",\"Flow\",\"Salesforce\",\"Salesforce Admin\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/\",\"url\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/\",\"name\":\"Advanced Salesforce Flows: Subflows and Fault Paths\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/advanced-salesforce-flows-fault-paths-featured.png\",\"datePublished\":\"2026-06-28T03:30:00+00:00\",\"description\":\"Advanced Salesforce Flows explained: reuse logic with subflows, catch errors with fault paths and act later with scheduled paths, with a hands-on example.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/#primaryimage\",\"url\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/advanced-salesforce-flows-fault-paths-featured.png\",\"contentUrl\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/advanced-salesforce-flows-fault-paths-featured.png\",\"width\":2400,\"height\":1260,\"caption\":\"Advanced Salesforce Flows featured image: subflows, fault paths and scheduled paths\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/advanced-salesforce-flows-fault-paths\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Advanced Salesforce Flows: Subflows, Fault Paths and Scheduled Paths\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/\",\"name\":\"Swapnil Zambare - Blog\",\"description\":\"Salesforce &amp; Tech Guides\",\"publisher\":{\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/#organization\",\"name\":\"Swapnil Zambare - Blog\",\"url\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/site-icon-512.png\",\"contentUrl\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/09\\\/site-icon-512.png\",\"width\":512,\"height\":512,\"caption\":\"Swapnil Zambare - Blog\"},\"image\":{\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/theSwapnilZambare\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/#\\\/schema\\\/person\\\/922ac0131aaa7088c78c2cb1700e0c9a\",\"name\":\"Swapnil Zambare\",\"sameAs\":[\"https:\\\/\\\/swapnilzambare.com\\\/blog\"],\"url\":\"https:\\\/\\\/swapnilzambare.com\\\/blog\\\/author\\\/swapnil-zambare\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Advanced Salesforce Flows: Subflows and Fault Paths","description":"Advanced Salesforce Flows explained: reuse logic with subflows, catch errors with fault paths and act later with scheduled paths, with a hands-on example.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/","og_locale":"en_US","og_type":"article","og_title":"Advanced Salesforce Flows: Subflows and Fault Paths","og_description":"Advanced Salesforce Flows explained: reuse logic with subflows, catch errors with fault paths and act later with scheduled paths, with a hands-on example.","og_url":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/","og_site_name":"Swapnil Zambare - Blog","article_published_time":"2026-06-28T03:30:00+00:00","og_image":[{"width":2400,"height":1260,"url":"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-featured.png","type":"image\/png"}],"author":"Swapnil Zambare","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Swapnil Zambare","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/#article","isPartOf":{"@id":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/"},"author":{"name":"Swapnil Zambare","@id":"https:\/\/swapnilzambare.com\/blog\/#\/schema\/person\/922ac0131aaa7088c78c2cb1700e0c9a"},"headline":"Advanced Salesforce Flows: Subflows, Fault Paths and Scheduled Paths","datePublished":"2026-06-28T03:30:00+00:00","mainEntityOfPage":{"@id":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/"},"wordCount":1562,"publisher":{"@id":"https:\/\/swapnilzambare.com\/blog\/#organization"},"image":{"@id":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/#primaryimage"},"thumbnailUrl":"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-featured.png","keywords":["Advanced","Automation","Flows","Salesforce"],"articleSection":["Advanced Admin","Flow","Salesforce","Salesforce Admin"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/","url":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/","name":"Advanced Salesforce Flows: Subflows and Fault Paths","isPartOf":{"@id":"https:\/\/swapnilzambare.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/#primaryimage"},"image":{"@id":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/#primaryimage"},"thumbnailUrl":"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-featured.png","datePublished":"2026-06-28T03:30:00+00:00","description":"Advanced Salesforce Flows explained: reuse logic with subflows, catch errors with fault paths and act later with scheduled paths, with a hands-on example.","breadcrumb":{"@id":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/#primaryimage","url":"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-featured.png","contentUrl":"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/10\/advanced-salesforce-flows-fault-paths-featured.png","width":2400,"height":1260,"caption":"Advanced Salesforce Flows featured image: subflows, fault paths and scheduled paths"},{"@type":"BreadcrumbList","@id":"https:\/\/swapnilzambare.com\/blog\/advanced-salesforce-flows-fault-paths\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/swapnilzambare.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Advanced Salesforce Flows: Subflows, Fault Paths and Scheduled Paths"}]},{"@type":"WebSite","@id":"https:\/\/swapnilzambare.com\/blog\/#website","url":"https:\/\/swapnilzambare.com\/blog\/","name":"Swapnil Zambare - Blog","description":"Salesforce &amp; Tech Guides","publisher":{"@id":"https:\/\/swapnilzambare.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/swapnilzambare.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/swapnilzambare.com\/blog\/#organization","name":"Swapnil Zambare - Blog","url":"https:\/\/swapnilzambare.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/swapnilzambare.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/09\/site-icon-512.png","contentUrl":"https:\/\/swapnilzambare.com\/blog\/wp-content\/uploads\/2026\/09\/site-icon-512.png","width":512,"height":512,"caption":"Swapnil Zambare - Blog"},"image":{"@id":"https:\/\/swapnilzambare.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.linkedin.com\/in\/theSwapnilZambare"]},{"@type":"Person","@id":"https:\/\/swapnilzambare.com\/blog\/#\/schema\/person\/922ac0131aaa7088c78c2cb1700e0c9a","name":"Swapnil Zambare","sameAs":["https:\/\/swapnilzambare.com\/blog"],"url":"https:\/\/swapnilzambare.com\/blog\/author\/swapnil-zambare\/"}]}},"_links":{"self":[{"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/posts\/786","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/comments?post=786"}],"version-history":[{"count":0,"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/posts\/786\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/media\/692"}],"wp:attachment":[{"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/media?parent=786"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/categories?post=786"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/tags?post=786"},{"taxonomy":"swapz_series","embeddable":true,"href":"https:\/\/swapnilzambare.com\/blog\/wp-json\/wp\/v2\/swapz_series?post=786"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}