In today’s age of digital commerce, consumers are more likely to engage with brands that offer unique and consistent experiences irrespective of the consumer’s preferred channel. If you look at a typical buying journey of a consumer (see example below), you would realize that they multiplex in and out of various channels before they buy a particular product.
And, more importantly, if that multiplexed experience is not differentiated and engaging then there is significant churn.
This all began with a very popular request: “We want to be able to throw an Exception from a flow”. The motivation for this is that it’s fairly common to run into “business errors” (errors not related to the handling and transmission of data but the data itself) which should actually be treated in the same way as a connection or system error (things like the remote endpoint is down).
Given the popularity of the request we decided to look into it and started by asking: “which are the use cases in which you would throw an exception?”.