lMessage Setup

The Message Set-Up window allows defining message configurations.

A message identifies any document or payment that you send to an organization (including people within your organization) to alert them about an event that has occurred on a trade, payment, reset, etc.

 

From the Calypso Navigator, navigate to Messages & Matching > Message Set-up (menu action refdata.AdviceSetupWindow) to setup message configurations.


Contents

- Defining Message Configurations

- Modifying Message Configurations

- Duplicating Message Configurations

- Deleting Message Configurations

- Displaying Pending Message Configurations


 

1. Defining Message Configurations

Message configurations are defined by product type, event type, message type, sender contact, and receiver contact.

» To create a new message configuration, select the Edit panel and enter the fields described below.
» Then click Save to save your changes.

If the Authorization mode is enabled, another user will have to authorize your entries.

 

Fields

Description

Product Type

Select a product type to which the message configuration applies.

Choose “N/A” to generate messages from netted transfers and statements that have no reference to a product.

The product type can be a group of products create using Configuration > Product Configuration > Product Group (menu action refdata.ProductGroupWindow). Note that the environment property USE_PRODUCT_GROUP should be set to true in order to allow specifying message configurations by product group.

 Ⓘ   [NOTE: If you specify a message configuration for the product group and for the product, the message configuration for the product will take precedence over the message configuration for the product group]

Event Type

Select the type of event that will trigger the generation of the message. The following types of events are available:

Trade related event types have the form "<trade_status>_TRADE", where "<trade_status>" comes from the Trade workflow configuration ("tradeStatus" domain).
Transfer related event types have the form "<transfer_status>_SEC_DELIVERY", "<transfer_status>_SEC_RECEIPT", "<transfer_status>_PAYMENT", and "<transfer_status>_RECEIPT", where "<transfer_status>" comes from the Transfer workflow configuration ("transferStatus" domain).
Exception related event types have the form "EX_<exception_type>", where "<exception_type>" comes from the "exceptionType" domain.
You can also generate messages for price fixings (event types "<transfer_status>_PRICE_FIXING"), rate resets (event types "<transfer_status>_RATE_RESET"), FX valuations, liquidated positions, statements, etc.

 Ⓘ   [NOTE: A message event cannot trigger the generation of another message]

Message Type

Select the type of message that will be generated.

 Ⓘ   [NOTE: A single event may trigger the generation of multiple types of messages - Specify a message configuration for each type of message]

The following message types are available:

ACC_STATEMENT — Account statement. The Statement frequency is set on the account attached to the client. Account statements are generated using the ACCOUNT_STATEMENT scheduled task.

Refer to the Calypso Cash Management User Guide for details on generating account statements.

CONFIRM — Trade confirmation.
EXERCISE_NOTICE — Trade notification that an option has been exercised.
MC_STATEMENT — Margin call statement.

Refer to the Calypso Collateral Management User Guide for details on generating margin call statements.

PAYMENT_ADVICE — Transfer message reminding the counterparty of an upcoming payment from the agent.
PAYMENTMSG — Transfer message instructing the agent to pay the transfer amount.
PRICE_FIXING_ADVICE — Transfer message informing the counterparty of a price fixing.
RATE_RESET — Transfer message informing the counterparty that a floating rate payment has been reset and calculated.
RECEIPT_ADVICE — Transfer message reminding the counterparty of an upcoming payment to the agent.
RECEIPTMSG — Transfer message instructing the agent to receive the transfer amount.
SEC_DELIVERYMSG — Transfer message instructing the agent to deliver securities (Against Payment or Free of Payment).
SEC_RECEIPTMSG — Transfer message instructing the agent to receive securities (Against Payment or Free of Payment).
SUPPLEMENT — Supplement to a trade confirmation.
TICKET — Trade ticket for internal consumption.

Message types are registered in the "messageType" domain.

Processing Org

Select the processing org for which the message configuration is specified, or ALL.

The following order applies for selecting a message configuration, when multiple message configurations are specified with multiple combinations of processing orgs and receivers.

Specific processing org and specific receiver
ALL processing orgs and specific receiver
Specific processing org and ALL receivers
ALL processing orgs and ALL receivers

Note that if the environment property MSGENGINE_MULTMESS is set to true, even if a specific configuration is found, if there are any general configurations where the address type is different from that of the specific configuration, messages will be generated for the general configurations as well.

When no message setup is defined for a PO, the system checks if a message setup is defined for the parent PO and uses it if available.

If you do not want the child PO to inherit the message setup of the parent PO, set the new environment property USE_PARENT_PO_FOR_MESSAGE_SETUP = false. It is true by default.

PO Contact Type

Select the type of contact that sends the message. The selected contact information is used to identify the sender of the message.

When LOOK_PARENT_CONTACT = false or not set, the contact information comes from the child sender. The message is not generated if no contact is found at child level.

When LOOK_PARENT_CONTACT = true, all the contact information comes from the parent sender if no contact is found at child level. If no contact is found at parent level and child level, the message is not generated.

Universal Sender

The domain “SwiftSenderBIC” may contain a universal BIC Code used to populate the sender of all generated Swift Messages.

Receiver

Select the receiver of the message to which the message configuration applies, or ALL. Note that the message will only apply to the legal entities of specified receiver role.

ALL indicates that this message configuration applies to all legal entities of specified role.

If you want to use a specific template for a given counterparty for example, set the Receiver Role to CounterParty and select the counterparty here.

Client Account Messages

When a trade is captured with the attribute ClientAccount that contains a settlement account, it is possible to generate a message for the legal entity / role of the account, provided a message configuration is defined for this legal entity / role.

CHECK_STATIC_DATA_FILTER

Note the use of the environment property / engine parameter CHECK_STATIC_DATA_FILTER when there is a specific configuration for the receiver with a static data filter. True to pick up the general message configuration if any, and generate the corresponding message, if the static data filter is not satisfied for the specific configuration. False to prevent any message generation if the static data filter is not satisfied, regardless of the existence of a general message configuration.

If the static data filter on the specific configuration is satisfied, the generation of one or two messages depends on the environment property MSGENGINE_MULTMESS.

Receiver Role

Select the role of the legal entity that will actually receive the message.

The role CounterParty will retrieve all legal entities with the role CounterParty in the trade (including counterparties defined in fees and allocations). For payment messages, the role CounterParty will retrieve the transfer’s external legal entity.

The role ProcessingOrg will retrieve the book’s owner. For payment messages, the role ProcessingOrg will retrieve the transfer’s internal legal entity.

The role Agent will retrieve all agents specified in the SDIs associated with the trade. Note that for payments messages, the Msg checkbox must also be checked for the agent on the SDI.

Other roles will retrieve legal entities of specified role from associated fees and allocations.

To send a given message to multiple legal entities of the trade, specify a message configuration for each role.

You can configure the message with the counterparty for the role “ConfirmReceiver” that has a given BIC code, while the counterparty has another BIC code for the role “CounterParty”. In the outgoing MT360 message, the BIC code used as Receiver is the one defined in the Contact with role “ConfirmReceiver”, while the BIC code used in the field 87A (Party B) is the one defined in the Contact with role “ALL” or “CounterParty”.

Rec Contact Type

Select the type of contact that receives the message.

To send a given message to multiple contacts, specify a message configuration for each contact type.

When LOOK_PARENT_CONTACT = false or not set, the contact information comes from the child receiver. The message is not generated if no contact is found at child level.

When LOOK_PARENT_CONTACT = true, all the contact information comes from the parent receiver if no contact is found at child level. If no contact is found at parent level and child level, the message is not generated.

Grouping

Select a grouping key to group a certain type of message. The actual grouped message will be of type GROUPED_MESSAGE. Grouping keys are defined using Configuration > Messages & Matching > Message Grouping (menu action util.MessageGroupingWindow).

See Message Grouping for details.

Language

Select the language in which the message will be printed.

You should make sure that you use a template written in the desired language. By default, the system does not perform any translation. The language is only used to format "date" message keywords".

You can activate the Multi-Language function to translate the values of the message keywords.

See Defining Message Templates.

Address Type

Select the type of address information that should be retrieved from the contact.

For example, for the SWIFT address type, the Swift code is specified on the contact.

Click ... to add address types as applicable. The address type information can be specified on the contact, using the contact attributes.

Gateway

Select the gateway that is used to physically transmit the message.

Out-of-the-box, the FILE, SWIFT, and DTCC gateways are supported.

See Message Sender for details.

You can implement custom gateways as applicable. Refer to the Calypso Developer’s Guide for details.

Gateways are registered in the "gateway" domain.

Format Type

Select the format of the message. Out-of-the-box, the CSV, DTCC, HTML, PDF, TEXT, SWIFT and XML formats are supported.

For the PDF type, you can select an HTML template. When the message will be formatted, it will use the selected HTML template, format it exactly as if the format type was HTML, and then convert it from HTML to PDF.

You can implement custom types of formatters as applicable. Refer to the Calypso Developer’s Guide for details.

Format types are registered in the "formatType" domain.

Note on FX Swaps

In order to allow generating a message for the near leg and a message for the far leg for FX Swaps, you need to add the format type to the domain "multiMessageFormatType".

If not set, only SWIFT messages allow generating a message for the near leg and a message for the far leg for FX Swaps.

Also, the domain "multiMessageTradeEvent" should contain the following values:

LegType.Near
LegType.Far

Template

Click ... to select a message template.

Defining document templates is described under Help > Message Template Keywords.

See Defining Message Templates.

A number of document templates are provided out-of-the-box under <calypso home>/client/resources/com/calypso/templates. They can be customized or you can create your own templates. Document templates are registered in the domain “MESSAGE.Templates”. Templates contain free-form text as well as template keywords to retrieve information from trades, messages, transfers, etc.

Swift templates are registered in the domain “SWIFT.Templates”.

See Swift Messages for the list of supported Swift messages.

Notes on Payment Messages

The message template "Payment.selector" allows picking up automatically the proper MTx92, MT202 or MT103 XML templates.
The message template "Securities.selector" allows picking up automatically the proper MT540-543 XML templates.
The message template "PaymentCOV.selector" allows producing "standard" MT202, "standard" MT103, "standard" MT210, and related "standard" MT192 and 292, when no cover message is required.

It also allows producing the MT202 COV (instead of a standard MT202) when a cover message is required. A cover message is required when the counterparty SDI (settlement instruction) is flagged with "Msg".

The message template "PaymentCOVAll.selector" applies to non-financial counterparties as well as financial counterparties.

If "Msg" is checked in the Agent tab of the counterparty's SDI and "Msg" is checked in the Agent tab of the PO's SDI, MT202Cov (to PO agent) and MT103 (to counterparty agent) messages are generated instead of MT202 and MT202.

The message template "PaymentCOVMX.selector" allows producing standard "pacs.009.001.06" (MT202) and standard "pacs.008.001.06" (MT103).

It also allows producing the "pacs.009.001.06.COV" (MT202 COV) (instead of a standard "pacs.009.001.06") when a cover message is required. A cover message is required when the counterparty SDI (settlement instruction) is flagged with "Msg".

The message template "Payment205COV.selector" allows producing "standard" MT205, "standard" MT103, "standard" MT210, and related "standard" MT192 and 292, when no cover message is required.

It also allows producing the MT205 COV (instead of a standard MT205) when a cover message is required. A cover message is required when the counterparty SDI is flagged with "Msg".

The message template MT103XferAgent allows producing MT103 messages with tag 53B (Sender's Correspondent) when "Msg" is checked in the SDIs for Transfer Agent trades.

See Payment Messages for complete details on setting up message configurations for payments.

SD Filter

Click ... to select a static data filter to restrict the message generation based on trade, product and legal entity attributes as applicable.

It can be useful, for example, if you do not want to generate a message for a given counterparty with specific attributes. See also “Do Not Send Message” below.

Double-click the SD Filter label to specify a static data filter.

Note that the static data filter of a CANCELED_TRADE message configuration, MUST be the same as the static data filter of the VERIFIED_TRADE message configuration, if any.

Audit Filter

The audit filter is a set of trade fields that are monitored to determine if a message needs to be regenerated if the trade fields are modified.

The first field allows selecting the process to be performed for the audit filter selected in the second field.

The possible processes are:

"block if some match some" - The message is regenerated if some of the modified fields on the trade are not in the audit filter.
"allow if all match some" - The message is not regenerated if all of the modified fields on the trade are in the audit filter.
"allow if some match none" - The message is not regenerated if some of the modified fields on the trade are in the audit filter.

Audit filters are created using Configuration > Filters > Audit Filter from the Calypso Navigator. You can also double-click the Audit Filter label to bring up the Audit Filter window.

Matching

This checkbox can be used to identify the reference confirmation used for matching incoming messages, when you specify multiple confirmations.

Note that the actual use of this checkbox is dependent upon the implementation of the interface Matcher for a given type of incoming message.

Do Not Send Message

This checkbox can be used when you have a general configuration that applies to ALL except to a specific case.

For example, you have a general configuration that applies to ALL agents, except to agent ABANK. So you create the general configuration, then you create the specific configuration for the agent ABANK (or using a static data filter), and you check the “Do Not Send Message” checkbox.

The message will be generated for all agents except for agent ABANK.

Inactive

Check to deactivate a message configuration. A deactivated configuration will not generate any message.

Deactivated message configurations will appear grayed-out.

Config Id

Displays the configuration id given by the system when the message configuration is saved.

 

2. Modifying Message Configurations

» Select the Browse panel, and enter selection criteria. Then click Load.

You can also navigate existing message configurations from the left-hand side of the window. Double-click a message configuration, and it will be loaded in the Edit panel.

You can double-click any column heading to sort the message configurations by the values in that column.

To sort based on multiple columns, press Ctrl+ any column heading. A selector dialog will appear. Select the sort columns and click OK when you are done.

» Then modify the fields as applicable, and click Update.

If the Authorization mode is enabled, another user will have to authorize your entries.

 

3. Duplicating Message Configurations

» Load a message configuration and click Duplicate to copy the selected message configuration to a given processing org or product type. You will be prompted to select a processing org or a product type.

 

4. Deleting Message Configurations

» Load a message configuration and click Delete.

A message will warn you if the message configuration has been used to generate messages.

If the Authorization mode is enabled, another user will have to authorize your entries.

 

5. Displaying Pending Message Configurations

» Click Show Pending Authorizations to see any message configuration pending authorization. This only applies if the Authorization mode is enabled.