This is generally only used for "exception" statuses such as "suspended" or "cancelled". The reason for performing the request at all is captured in reasonCode, not here. (Distinct reason codes for different statuses can be enforced using invariants if they are universal bindings).