Each step is a stateless transformation. For example, let’s assume that we receive orders from a variety of business partners. All orders arrive on a common channel but in different formats depending on the partner. As a result, each message may require different transformation steps. Messages from some partners may require decryption; others may not. Some may require transformation or enrichment; others may not. Keeping a Routing Slip for each partner gives us an easy way to reconfigure the steps for each partner in a central location.

