BEA SWIFT Adapter User Manual

SWIFT Adapter
User’s Guide
Version 3.5
SWIFT .......................................................................................................... 4
TERMINOLOGY ............................................................................................. 5
SWIFT CONFIGURATION .............................................................................. 6
CREATING A SWIFT FORMAT........................................................................ 9
ENTERING THE SWIFT SPECIFICATION...................................................... 19
Sequence Without Delimiters................................................................................................................ 20
Sequence With Start and End Delimiters.............................................................................................. 21
Sequence With Start Delimiter ............................................................................................................. 22
Adding a SWIFT Sequence without Delimiters..................................................................................... 24
Adding a SWIFT Sequence with Start and End Delimiters................................................................... 26
Adding a SWIFT Sequence with Start Delimiter .................................................................................. 28
Adding a New Generic Field................................................................................................................ 30
Adding Field Options....................................................................................................................... 32
Entering an Option Format............................................................................................................... 33
Entering an Option Specification...................................................................................................... 35
Removing Field Options................................................................................................................... 36
Adding Qualifiers and Associating them with Options.................................................................... 37
Specifying OR Option for a Qualifier............................................................................................... 40
Adding a Non-Generic Field ................................................................................................................ 41
Specifying Field Definition and Usage................................................................................................. 43
Mapping Formats with Specification (Sub-fields)................................................................................ 43
Representing Complex Formats in Designer........................................................................................ 47
Specifying properties common for all validations................................................................................ 63
Specifying Error Code.................................................................................................................. 64
Specifying Field Options.............................................................................................................. 64
Specifying Qualifiers.................................................................................................................... 64
Specifying Null Field.................................................................................................................... 64
Specifying Comment.................................................................................................................... 65
Adding Code validation........................................................................................................................ 65
Specifying Codes.......................................................................................................................... 65
Removing Codes .......................................................................................................................... 66
Adding T26 Validation ......................................................................................................................... 67
Adding T14 Validation ......................................................................................................................... 67
Adding Date Validation........................................................................................................................ 68
Specifying Date Format................................................................................................................ 68
Adding Currency Code Validation ....................................................................................................... 69
Adding Country Code Validation......................................................................................................... 69
Adding Time Offset Validation............................................................................................................. 70
Adding BIC validation.......................................................................................................................... 70
Adding C05 validation.......................................................................................................................... 72
Adding Decimal Validation.................................................................................................................. 72
Adding Party Identification Validation ................................................................................................ 73
Specifying Party Identification Codes.......................................................................................... 73
SWIFT EXTERNAL MESSAGE UI................................................................... 74
SWIFT EXTERNAL FORMAT UI .................................................................... 76
SWIFT Input Header/Trailer................................................................................................................ 77
SWIFT Output Header/Trailer ............................................................................................................. 79
SWIFT Input/Output Header/Trailer.................................................................................................... 80
FISC Header......................................................................................................................................... 82
SWIFT Sequence Info........................................................................................................................... 87
SWIFT Field Info (Generic) ................................................................................................................. 88
SWIFT Field Qualifier Info .................................................................................................................. 89
SWIFT Field Info (Non-Generic).......................................................................................................... 90
SWIFT Sub Field Info........................................................................................................................... 91
Creating an empty Service/System message format.............................................................................. 92
Creating a SWIFT System/Service Format Based on an Existing SWIFT Message Format................ 94
Adding a System Field.......................................................................................................................... 96
Adding a Simple Field ...................................................................................................................... 96
Adding a Complex Field................................................................................................................... 99
Fields Separated by OR/AND ........................................................................................................ 100
Adding a Group.................................................................................................................................. 101
Deleting a Field/Group ...................................................................................................................... 102
System Field Dictionary..................................................................................................................... 102
Specifying Validations for a Field.................................................................................................. 103
Specifying Validations for a Sub-field........................................................................................... 103
Expanding Fields........................................................................................................................ 105
Collapsing Fields........................................................................................................................ 105
EXPORTING A SWIFT MESSAGE FORMAT TO LIBRARY.............................. 106
Exporting a SWIFT Message Format................................................................................................. 107
Importing a SWIFT Message Format................................................................................................. 109
Sample Exported HTML File.............................................................................................................. 110

SWIFT

S.W.I.F.T. SCRL is the abbreviation for Society for Worldwide Interbank Financial Telecommunication, Societé Coopérative à Responsibilité Limitée. SWIFT’s purpose is to provide technology-based communication services across all financial markets through member banks so that they can profitably meet their own and their end-customers’ needs.
In a financial perspective, standards enable financial institutions to move from manual to automated initiation and processing of financial transactions. The message text standards have been developed to support the business transactions of S.W.I.F.T. users. To ensure that the multitude of practices and conventions of users are in harmony, financial messages transmitted via the S.W.I.F.T. network must adhere to the message text standards.
There are important benefits because of standardization of messages. These include:
automation, reduced risk of errors and misunderstandings, reduced operating costs, improved productivity, increased efficiency in processing of messages (routing and preparation), faster and more cost effective account reconciliation, and the ability to maintain more comprehensive management information.
SWIFT messages are represented by a three-digit number, for example, MT 112.
The first digit defines the message category, indicating the general usage of
the message. Here, Category 1 refers to Customer Payments & Cheques.
The second digit of the message type indicates the message group. For
example, Message group 1 refers to Cheque Payments.
The third digit indicates the particular type of message, representing a specific
function of the message. In our example, Message type 2 refers to Status of a Request for Stop Payment of a Cheque.
See Also:
Terminology Creating a SWIFT Format Entering the SWIFT Specification SWIFT External Message UI SWIFT External Format UI
Export a SWIFT Message Format

Terminology

Sequence
Each message type contains zero, one or more sequences. A sequence is a group of related information made up of one or more fields and/or sub-sequences. A sequence may or may not be delimited. For delimiting a sequence use a start indicator and end indicator or start indicator alone.
SubSequence
A subsequence is a sequence nested within another sequence. The fields contained within each subsequence can be either discrete (non-generic) or generic.
Generic Field
A generic field is used to describe groups of business data that are common throughout the messages. It is then made unique by the addition of a qualifier. Generic fields allow for the consistent identification of data in a logical an d structured way. Each generic field will always have the same meaning across all sensitive messages.
Non-Generic Field
A non-generic field, unlike a generic field, is used for one purpose only.
Qualifier
A qualifier is one that gives a complete meaning about a generic field. Qu alifiers allow the identification of the type of data.
See Also:
SWIFT Creating a SWIFT Format

SWIFT Configuration

SWIFT field dictionary and message library are stored under <installation dir>\config\swift folder. This folder contains the following files and folders.
QualifierList.csv List SWIFT qualifiers with description. SwiftField.xml Field dictionary for ISO15022 & ISO7754 user messages
SwiftSystemField.xml Field dictionary for system and service messages format Directory contains all SWIFT messages.

SWIFT message library

The format directory contains all the SWIFT messages and it is referred to as the SWIFT message library. Messages of each version are stored as XML in a separate directory with the same name as the version. For instance, SRG 2008 messages are stored under the directory config/swift/format/ SRG 2008. This scheme allows you to manage multiple versions of SWIFT messages side by side. For instance, you can have MT101.xml under both SRG 2007 and SRG 2008 folders.
When you create a new SWIFT message in a cartridge from the message library the following dialog is displayed. Note that the messages are grouped based on version and only messages belonging to a particular version is displayed at a time. You can switch to a different version by selecting it from the ‘version’ combo.

Custom SWIFT messages

Depending on your requirement you may have to customize the SWIFT messages or make minor modifications to it. One such case is GSCC SWIFT messages. If these customized messages are used often or across the enterprise, you may want to make use of the SWIFT message library feature to store the customized SWIFT messages.
1. Since the customized messages are not the same as the original SRG messages choose a different version name for them. For instance “GSCC SRG 2008” can be used as the version name for SRG 2008 messages customized for GSCC.
2. When you export the modified messages using the “Save SWIFT Message Format” option use this version name.
3. The exported message will be saved under a directory by the same name as the version.
Once you have exported all the customized messages to this directory, you can make of copy this directory to all Designer installations as required.
4. Note that the version name will also be included in the message definition (XML) as shown below.
<?xml version="1.0" encoding="UTF-8" ?> <SwiftMessageFormat name="MT502"> <standard-version>GSCC SRG 2008</standard-version>
This detail is generally not important; but if you are manually editing the version (in say messages you already have) in XML’s remember to update the standard-version tag appropriately.
The advantage of the above is that you have the same message library support for your customized SWIFT messages just like standard SWIFT messages.
See Also:
SWIFT Configuration

Creating a SWIFT Format

A SWIFT message format can be created in the designer either from
Existing SWIFT message format, or Empty message format
When using an existing format, the same set of sequences and fields are available for the newly created format. Though the mandatory elements cannot be changed, the user has the option of enabling or disabling the optional sequences and fields as per requirement. The existing SWIFT formats are availab le as XML files in the location <installation dir>\config\swift\format.
When using an empty message format, the user has to add each sequence and field as per the specification. This happens when the format has to be entered the first time, after which the format can be saved and used to build other formats using the first option.
See Also:
Creating a SWIFT Format based on an existing SWIFT message format Creating a SWIFT Format from an empty message format Exporting a SWIFT Message Format to Library

Creating a SWIFT Format Based on an Existing SWIFT Message Format

1. Right-click the Cartridge node in the Designer. Select the New External Message menu item from the context menu to create a SWIFT external format.
2. In the New External Message dialog that appears enter the Transformation Name and select SWIFT from the External Message listbox . Click OK.
3. In the New Swift Message Format dialog that appears, select an existing format based on which the new format is to be created. Select Create based on selected format radio button. Click Next.
4. In the next dialog that appears you have various options to choose Header/Trailer, Validation and Edit options as shown in the following picture:
5. As seen in the above picture, you have the option to include specific Header/Trailer (SWIFT Input/SWIFT Output/SWIFT Input Output/FICC Header(custom) or no Header/Trailer) from the list box. (Note that if you choose SWIFT Input or SWIFT Output, the Basic Header and Application Header appearing in the Header section UI of the message are set as mandatory. The Header/Trailer fields cannot be modified/removed from UI). You have the option to include or not to include validations. You also have the option to create the message format in Read Only mode or editable mode. After selecting the required options, click Finish button.
6. The new format is created in the Designer as shown below.
7. Note that the Design Element UI tool bar buttons in the figure are disabled thereby not allowing the user to modify the format as we have chosen Read Only mode in the Edit options.
8. The Enabled column of the format table allows the user to pick from the optional fields, qualifiers and options for the format. By default all the optional entities are enabled. To enable a qualifier, select the field in the format table and select or deselect the check box in the Enabled column for the qualifiers displayed in the SWIFT Field Info (Generic) panel below the table.
Similarly to pick the options for a qualifier, select the qualifier in the table and select or deselect the check box in the SWIFT Field Qualifier Info panel below.
To pick the options for a non-generic field, select the field in the table and select or deselect the check box in the Enabled column of the options displayed in the
SWIFT Field Info (Non-Generic) panel below the table.
See Also:
Creating a SWIFT Format from an empty message format Entering the SWIFT Specification Exporting a SWIFT Message Format to Library

Creating a SWIFT Format from an empty message format

1. Right-click the Cartridge node in Designer and select the New External Message menu item from the context menu to create a SWIFT external format.
2. In the New External Message dialog that appears, enter the Transformation Name and select SWIFT from the External Message listbox. Click OK.
3. In the New Swift Message Format dialog that appears, select Create empty message format radio button. Click Next.
4. In the next dialog box that appears see that the “Validation Options” and “Edit Options” pane are disabled as they are not applicable in this case. You have the option to include specific Header/Trailer (SWIFT Input/SWIFT Output/SWIFt Input/Output/FICC Header(custom) or no Header/Trailer as shown in the following picture. (Note that if you choose SWIFT Input or SWIFT Output, the Basic Header and Application Header appearing in the Header section UI of the message are set as mandatory. The Header/Trailer fields cannot be modified/removed from UI).
5. After selecting the required Header/Trailer from the list box, click Finish button.
6. An empty message format is created as shown below.
See Also:
Creating a SWIFT Format based on an existing SWIFT message format Entering the SWIFT Specification Exporting a SWIFT Message Format to Library

Entering the SWIFT Specification

A SWIFT message is composed of sequences and fields. A sequence is a group of related information made up of one or more fields and/or sub-sequences. A field may be either generic or non-generic. The user can construct a SWIFT message in the External Format UI by adding sequences/fields and specifying properties for them.
See Also:
Terminology SWIFT External Format UI SWIFT Sequence Adding a SWIFT Sequence Adding a SWIFT Field Updating a SWIFT Field Customize Field Removing a SWIFT Field Adding Copy of Fields Adding validations for a sub-field
Removing validations from a sub field

SWIFT Sequence

A Sequence is a group of related information, delimited in most of SWIFT message formats. However, there are a few formats, which have sequences without delimiters. The Designer provides for creating sequences with or without delimiters. Furthermore, the sequences with delimiters either have only the start delimiter, or both the start and end delimiters, depending on the format’s specification. An example of each of the three cases is as follows.
See Also:
Sequence Without Delimiters Sequence With Start and End Delimiters Sequence With Start Delimiter
Sequence Without Delimiters
Consider the message MT101. An extract of the format is given below.
Status Tag Field Name Content/Options
Mandatory Sequence A General Information
M 20 Sender's Reference 16x
……. …….
O 25 Authorisation 35x
----->Mandatory Repetitive Sequence B Transaction Details
M 21 Transaction Reference 16x
O 21F F/X Deal Reference 16x
…… ……
O 36 Exchange Rate 12d
-----|
Note sequences A and B of this format. They have neither the start delimiter nor the end delimiter. To add such a sequence, see Delimiters.
See Also:
Sequence With Start and End Delimiters Sequence With Start Delimiter
Add a SWIFT Sequence without
Sequence With Start and End Delimiters
Consider the message MT543. An extract of the format is given below.
Status Tag Qual
ifier
Mandatory Sequence A General Information
M 16R Start of Block GENL
M 20C SEME Reference Sender's
…… …… ……
-----> Repetitive Optional Subsequence A1 Linkages
M 16R Start of Block LINK
O 22F LINK Indicator Linkage Type
O 13A LINK Number Identification Linked Transaction :4!c//3!c
Generic Field Name
Detailed Field Name
Reference
Indicator
Content/Options
:4!c//16x
:4!c/[8c]/4!c
M 20C 4!c Reference (see qualifier
description)
M 16S End of Block LINK
:4!c//16x
-----| End of Subsequence A1 Linkages
M 16S End of
Block
End of Sequence A General Information Mandatory Sequence B Trade Details
M 16R Start
of Block
O 94B TRAD Place Place
of Trade
----->
…… …… ……
Note that in the above format, the sequences A and A1 have the ‘Start of Block’ field 16R and the ‘End of Block’ field 16S to indicate a sequence. To add such a sequence, see
See Also:
Adding a SWIFT Sequence with Start and End Delimiters.
GENL
TRADDET
:4!c/[8c]/4!c[/30x]
Sequence Without Delimiters Sequence With Start Delimiter
Sequence With Start Delimiter
Consider the message MT300. An extract of the format is given below.
Status Tag Field Name Content/Options
Mandatory Sequence A General Information
M 15A New Sequence (CrLf)
M 20 Sender's Reference 16x
Status Tag Field Name Content/Options
O 21 Related Reference 16x
…… …… ……
Mandatory Sequence B Transaction Details
M 15B New Sequence (CrLf)
M 30T Trade Date 8!n
M 30V Value Date 8!n
M 36 Exchange Rate 12d
…… …… ……
Optional Sequence C Optional General Information
M 15C New Sequence (CrLf)
O 29A Contact Information 4*35x
…… …… …..
Note that the above message has the start indicator field 15X – New Sequence for the sequences A, B, C, etc. But there is no end indicator. To add such a sequence, see
Adding a SWIFT Sequence with Start Delimiter.
See Also:
Sequence Without Delimiters Sequence With Start and End Delimiters

Adding a SWIFT Sequence

A sequence is a group of related information made up of one or more fields and/or sub-sequences. A sequence may or may not be delimited. Three types of SWIFT sequences can be added. They are
Sequence Without Delimiters Sequence With Start and End Delimiters Sequence With Start Delimiter
See Also:
Adding a SWIFT Sequence without Delimiters Adding a SWIFT Sequence with Start and End Delimiters Adding a SWIFT Sequence with Start Delimiter Adding a SWIFT Field Adding Copy of Fields
Adding a SWIFT Sequence without Delimiters
1. Click the Add New Sequence
- SWIFT UI.
2. The SWIFT Sequence dialog appears. Enter the Sequence Name and Description.
button in the toolbar of the External Format
3. Select None in Sequence Delimiter. Select the Mandatory and Repeating properties of the sequence as required.
4. For this case, the last section about the delimiters and their format is not required and hence disabled. Click OK.
5. The new sequence is added to the format as shown below.
See Also:
Sequence Without Delimiters Adding a SWIFT Sequence with Start and End Delimiters Adding a SWIFT Sequence with Start Delimiter
Adding a SWIFT Sequence with Start and End Delimiters
1. Click the Add New Sequence
- SWIFT UI.
2. The SWIFT Sequence dialog appears. Enter the Sequence Name and Description.
button in the toolbar of the External Format
3. Select Block Delimited in Sequence Delimiter. Select the Mandatory and Repeating properties of the sequence as per the specification.
4. The Start Of Block and End Of Block text fields are automatically populated with values 16R and 16S and the corresponding formats are populated with value 16c when the Sequence Delimiter is specified in the step above. They can be modified if required.
5. Enter the code (In case of block delimited sequence, only if you give Code you will be able to add the sequence, so Code is mandatory not optional) in the Code text field. Click OK.
6. The sequence is added to the format as below.
See Also:
Sequence With Start and End Delimiters Adding a SWIFT Sequence without Delimiters Adding a SWIFT Sequence with Start Delimiter
Adding a SWIFT Sequence with Start Delimiter
1. Click the Add New Sequence button
- SWIFT UI.
2. The SWIFT Sequence dialog appears. Enter the Sequence Name and Description.
in the toolbar of the External Format
3. Select New Sequence Indicator in Sequence Delimiter. Select the Mandatory and Repeating properties of the sequence as per the specification.
4. The Start Of Block text field is automatically populated with value 15A when the Sequence Delimiter is specified in the step above. This can be changed to your requirement. The End Of Block and Code are not relevant for this case and hence disabled. Click OK.
5. The sequence is added to the format as in the previous cases.
See Also:
Sequence With Start Delimiter Adding a SWIFT Sequence without Delimiters Adding a SWIFT Sequence with Start and End Delimiters

Adding a SWIFT Field

Two types of SWIFT fields can be added in the SWIFT External Format UI.
Generic Field- It is used to describe group of business data that are common
throughout the messages. It is then made unique by the addition of a qualifier.
Non Generic Field- Unlike a generic field, is used for one purpose only.
See Also:
Terminology Adding a new Generic Field Adding a Non-Generic Field Updating a SWIFT Field Removing a SWIFT Field Customize Field Adding validations for a sub-field Removing validations from a sub field Adding Copy of Fields Adding a SWIFT Sequence
Adding a New Generic Field
Generic fields are used to describe the groups of business data that are common throughout the messages. A generic field value always starts with a colon (:), followed by a Qualifier (of format 4!c), followed by zero or more sub-fields. To add a generic field to the format follow the steps given below.
1. Click the Add New SWIFT Field button Format - SWIFT UI. The Create Field dialog appears.
2. Enter the field tag in the Tag combo box and press Enter. The toolbar buttons of the options and qualifiers table are now enabled.
in the toolbar of the External
Loading...
+ 83 hidden pages