User exits
The user exits for FTM for High Value Payments are provided by subsets of actions. These user exits are facilitated and triggered by a configuration that uses the propagate to label command within the subset of actions.
- Update the ISF that was created by an action
- FTM for High Value Payments has a subset of actions that create the ISF that is used to create messages to be sent to an end point. For example, a message to a CSM, a service, or a notification or status that is sent to a channel. These actions are updated to facilitate a user exit that you can use to update the ISF that the action creates.
- Validation
- FTM for High Value Payments has a subset of actions that do validation on messages during the orchestration process. These actions are updated to facilitate a user exit that you can create to update the scheme that is used by the process. Or, you can use the user exit to override the validation event that is raised to a validation fail event.
- Store service call results
- FTM for High Value Payments has an action that checks the result of a service call. This action is updated to facilitate a user exit that you can create to store the data from the service call result in the database to use in another user exit later.
Configuring the user exits
- Category
- The category needs to be
USER_EXITS
. - Key
- The key to use is different for each action. The user exit configuration tables show the value of the key to use for a specific action name.
- Configuration value
- Set the configuration value to the label name of a label node that is used in a message flow or subflow. This flow or subflow can link to other nodes within the flow to do the necessary function.
User exit to update the ISF
The master transaction identifier and the newly created transaction identifier for the new outbound
transaction is provided to the user exit as parameters in reserved parts of the environment. These parts are
called Environment.PMP.UserExit.Input.MasterTxnId
and
Environment.PMP.UserExit.Input.NewOutTxnId
. A common procedure that your user exit can use to
retrieve a reference to the ISF cache for updating is provided. This procedure is called
GetIsfFromIsfCache
and it is in the UserExitLib.esql module.
After the ISF is updated in the user exit, a space is reserved in the environment to notify the calling
action. The space in the environment is called
Environment.PMP.UserExit.Output.IsfUpdatedInCache
. Set it to TRUE to notify the calling
action that it needs to use the updated ISF from the user exit.
CATEGORY | KEY | VALUE | Action name |
---|---|---|---|
USER_EXITS |
UX_DO_FUNDS_RESERVATION |
<label name> |
A_DoFundsReservation |
USER_EXITS |
UX_DO_NOTIFY_CHANNEL |
<label name> |
A_DoNotifyChannel |
USER_EXITS |
UX_DO_NOTIFY_CHANNEL_RECALL |
<label name> |
A_DoNotifyChannelRCL |
USER_EXITS |
UX_DO_NOTIFY_CHANNEL_RETURN |
<label name> |
A_DoNotifyChannelReturn |
USER_EXITS |
UX_DO_NOTIFY_CHANNEL_ROI |
<label name> |
A_DoNotifyChannelROI |
USER_EXITS |
UX_DO_NOTIFY_CHANNEL_GENERIC |
<label name> |
A_DoNotifyChannelGenericTxn |
USER_EXITS |
UX_SEND_TO_ACCOUNTING |
<label name> |
A_DoSendToAccounting |
USER_EXITS |
UX_SEND_ACCOUNT_INQUIRY |
<label name> |
A_DoSendAccountInquiry |
USER_EXITS |
UX_SEND_CREDIT_REVERSE_TO_ACCOUNTING |
<label name> |
A_DoSendCreditReverseToAccounting |
USER_EXITS |
UX_SEND_DEBIT_TO_ACCOUNTING |
<label name> |
A_DoSendDebitToAccounting |
USER_EXITS |
UX_SEND_DEBIT_REVERSE_TO_ACCOUNTING |
<label name> |
A_DoSendDebitReverseToAccounting |
USER_EXITS |
UX_SEND_RECALL_NACK_TO_CHANNEL |
<label name> |
A_DoSendRecallNackToChannel |
USER_EXITS |
UX_SEND_RECALL_STATUS_TO_CHANNEL |
<label name> |
A_DoSendRecallStatusToChannel |
USER_EXITS |
UX_SEND_ROI_NACK_TO_CHANNEL |
<label name> |
A_DoSendReqRespNackToChannel |
USER_EXITS |
UX_SEND_ROI_STATUS_TO_CHANNEL |
<label name> |
A_DoSendReqRespStatusToChannel |
USER_EXITS |
UX_SEND_CANCEL_STATUS_TO_CSM |
<label name> |
A_DoSendCancelStatusToCSM |
USER_EXITS |
UX_SEND_PAYMENT_TO_CSM |
<label name> |
A_DoSendPaymentToCSM |
USER_EXITS |
UX_SEND_RECALL_TO_CSM |
<label name> |
A_DoSendRecallToCSM |
USER_EXITS |
UX_SEND_RETURN_TO_CSM |
<label name> |
A_DoSendReturnToCSM |
USER_EXITS |
UX_SEND_ROI_TO_CSM |
<label name> |
A_DoSendROIToCSM |
USER_EXITS |
UX_SEND_STATUS_TO_CSM |
<label name> |
A_DoSendStatusToCSM |
USER_EXITS |
UX_SEND_GEN_TXN_TO_CSM |
<label name> |
A_DoSendGenericTxnToCSM |
USER_EXITS |
UX_SEND_TO_FRAUD_CHECK |
<label name> |
A_DoSendToFraudCheck |
USER_EXITS |
UX_SEND_TO_SANCT_SCREEN |
<label name> |
A_DoSendToSanctScreen |
User exit for validation
The master transaction identifier is provided to the user exit as a parameter in a reserved part of the
environment. It is called Environment.PMP.UserExit.Input.MasterTxnId
.
If your user exit overrides a validation pass event and instead wants the calling action to raise a
validation failed event, space is reserved in the environment to notify the calling action. The space in the
environment is called Environment.PMP.UserExit.Output.RaiseTransactionInvalidEvent
. Set it to
TRUE to notify the calling action that it needs to raise a validation fail event. Your user exit needs to add
an appropriate error entry to the ERROR table because the calling action has no other way of knowing why the
transaction is invalid.
- Set
Environment.PMP.UserExit.Output.Scheme
to the scheme name. - Set
Environment.PMP.UserExit.Output.SchemeOverride
to TRUE.
CATEGORY | KEY | VALUE | Action name |
---|---|---|---|
USER_EXITS |
UX_VALIDATE_INCOMING_RECALL |
<label name> |
A_ValidateIncomingRecallTxn |
USER_EXITS |
UX_VALIDATE_INCOMING_ROI |
<label name> |
A_ValidateIncomingROITxn |
USER_EXITS |
UX_VALIDATE_RECALL |
<label name> |
A_ValidateRecallTxn |
USER_EXITS |
UX_VALIDATE_ROI |
<label name> |
A_ValidateOutROITxn |
USER_EXITS |
UX_VALIDATE_TRANSACTION |
<label name> |
A_DoValIP |
USER_EXITS |
UX_VALIDATE_INCOMING_GENERIC |
<label name> |
A_ValidateIncomingGenericTxn |
USER_EXITS |
UX_VALIDATE_OUT_GEN_TXN |
<label name> |
A_ValidateOutgoingGenericTxn |
User exit for service call results
The master transaction identifier is provided to the user exit as a parameter in a reserved part of the
environment. It is called Environment.PMP.UserExit.Input.MasterTxnId
.
CATEGORY | KEY | VALUE | Action name |
---|---|---|---|
USER_EXITS |
UX_CHECK_RESULTS |
<label name> |
A_CheckPreCheckResults |