Read the screenplay: FANNIEGATE — $7 trillion. 17 years. The biggest fraud in American capital markets.
#3🔄 FlowsAnnoying

The Flow With No Fault Path (Enjoy Your Cryptic Error)

Deployed a screen flow with no fault handling. Users got 'An unhandled fault has occurred' and I got 50 support tickets.

What Happened

Built a beautiful screen flow for the Mobilization Funding team to submit construction funding requests. Tested it with good data. Deployed it. Forgot fault paths entirely. First user entered a duplicate value on a unique field and got the raw Salesforce error page. No custom message, no graceful recovery. The ops team thought the whole system was broken and called me in a panic.

The Wrong Way

// Screen Flow: Construction Funding Request
// Screen 1 → Create Records (Funding_Request__c) → Confirmation Screen
//
// No fault connector on Create Records.
// If the DML fails (duplicate, validation rule,
// required field missing), the user sees:
// "An unhandled fault has occurred in this flow"
// with a raw exception ID. Useless.

The Right Way

// Screen Flow: Construction Funding Request
// Screen 1 → Create Records (Funding_Request__c)
//   ├── Success → Confirmation Screen
//   └── Fault → Error Screen
//         Display: "We couldn't submit your request.
//         Error: {!$Flow.FaultMessage}
//         Please check your entries and try again."
//
// EVERY element that does DML or callouts
// needs a fault path. No exceptions.

The Lesson

Add fault paths to every single DML and callout element in your flows. Your users are not Salesforce developers. They cannot debug 'An unhandled fault has occurred.'

Don't make this mistake.

Hire someone who already did.

View Consulting →

Enjoyed this? Get more like it.

Glen's Musings — AI, investing, and building things. Occasional. Free.

More Flows Mistakes