Deep Dive into the LISA Reason Code Framework
The LISA product makes use of a reason code framework to identify the reasons that are to be used to create subscription plans, subscription plan lines and subscription actions. This setup is a mandatory setup for this product as a reason will need to be specified with any subscription plan, plan line, and action that is created.
The standard Financial reasons are used as the base for this framework. This setup can be found in General Ledger -> Journal setup -> Financial reasons. Several reasons can be set up here for the scope of Subscription management or else, already existing financial reasons may be used (there is no Subscription management specific configuration that must be done for the reasons that will be used).
The reason framework in LISA is type based, meaning that a specific set of reasons is defined for each type of action that can be taken. The reason types which currently exist in LISA are New, Cancel, Upgrade, Downgrade and Renewal. To set up the reasons that relate to the different type the ‘Reason code type setup’ form must be used, which can be found at Subscription management -> Setup -> Reason code type setup.
In this form, the user must specify the reason codes that will relate to the different types. For each type, the user is also able to specify a default reason. It is also important to note that one reason can belong to different types.
Subscription Plan Logic
For creation of subscription plans, the reasons that can be used are those of type ‘New’ or ‘Renewal’.
Upon initialisation of a new subscription plan record, the value that will be used for the reason field is the value that is specified as the default for the ‘New’ type. The user can then manually change the reason depending on each specific scenario. If there is no default value set for this type, then the field is left empty for the user to populate.
If a subscription plan is renewed (to itself or to a new subscription plan), the reason code of the current/new plan will be set to the default value for the ‘Renewal’ type. This also applies to each subscription plan line that is already created or will be created after the renewal period.
When a plan is cancelled, the reason codes that are allowed are those that fall under the ‘Cancel’ type. In the cancellation dialog there is also a flag to use the Churn reason code, which will default the value to the default value of the Cancel type. Upon cancellation, all plan lines and actions that will be cancelled, will now use the reason code specified for in the cancellation dialog.
Subscription Plan Line Logic
When creating a new subscription plan line, the value is initialised from the reason value that can be found on the related subscription plan. The user can then manually edit the reason code (by choosing reasons that are of type ‘New’, ‘Renewal’, ‘Upgrade’ and ‘Downgrade’) depending on each specific scenario.
If the system detects that there has been a credit note line which has been created, the default value for the reason will be the default value for the ‘Upgrade’ type. In this case the user will also be able to change the reason code as required.
When a plan is automatically cancelled because there was no renewal of the contract, the reason code that will be used to deactivate the lines will be the ‘Auto cancellation reason code’ that is specified in the Subscription management parameters.
Subscription Action Logic
For subscription actions, the value used will be that is present on the subscription plan line at the moment of creation with the only difference that this cannot be edited by the user.
When an action is cancelled, the reason code that is selected to cancel the action will be used in the ‘Cancelled reason code’ field of the subscription action.
Reporting reason codes will also need to be set-up in the Subscription management parameters. This setup can be found at Subscription management -> Setup -> Subscription management parameters -> Subscription management -> Reason codes fast tab.
Here, the user can specify the reasons that will be used for the out of the box PowerBI reports that are part of the product. The lookups for each type of reason are filtered on those reasons which are configured to relate to a specific type e.g., for the ‘New reason code’ field, the lookup is filtered on those reason codes that are related to the ‘New’ reason code types and only these values are accepted as correct values for this field.