Reference : Getting Started with SWIFTStandards, Primer to SWIFT Messaging (http://www.swiftcommunity.net/)
- What is SWIFT ? The acronym stands for Society for Worldwide Interbank Financial Telecommunication (a cooperative society).
- SWIFT developed its original messaging service, FIN, based on proprietary message standards. Later, support for standards on FIN was extended to include ISO 15022 standards and the service name was changed to SWIFTNet FIN. Message types that operate on SWIFTNet FIN are referred to as MTs. More information on ISO 15022 can be found on www.iso15022.org.
- In 1997 SWIFT launched SWIFTNet, an IP-based secure network. This network allows the exchange of message types represented in XML format. It provides support for message standards ISO 20022 and for FpML (for more information, please refer respectively to www.iso20022.org and www.isda.org). Messages Types of standard ISO 20022 are referred to as MXs.
: A4SWIFT provides message communication and connectivity to SWIFT Network using the SWIFTNet Link(SNL). SWIFT Provides multiple ways of connecting to the SWIFTNet Link and one of the important connectivity options is the SWIFT Alliance Access(SAA).
- As financial products and services grew dramatically over the last few decades, there was a major need for additional message standards. In the late 90s, the SWIFTStandards MX messages (MXs), were introduced.
- Today the network traffic of MT still represents the majority of SWIFT traffic.
- At the highest level, an MX message is categorised by its Business Area, represented by four (rather meaningful) letters. For example, ‘camt’ stands for the ‘Cash Management’ Business Area. The table bellow gives an overview of some MX Business Areas:
One level deeper, three digits are identifying the Message Functionality.
At the next level, another three digits identify the Variant ID (often, but certainly not always, ’001′).
Finally, the last two digits identify the Version Number.
Note: Each level is separated by a dot. Hence, the regular expression of an MX Message Type is: [a-z]{4,4}\.[0-9]{3,3}\.[0-9]{3,3}\.[0-9]{2,2}
For example, a pain.001.001.02 MX message identifies a ‘CustomerCreditTransferInitiationV02′ message.
- An MX message contains the business area specific payload. It has the structure defined by the corresponding XML Schema. On www.iso20022.org/index.cfm?item_id=42790 one can download the Schemas as well as samples of the corresponding documents. In addition, the SWIFTSolutions section of the User Handbook (www.swift.com/uhbonline/books/home/index.htm) has more information on message structure but also on message scope and usage, rules and guidelines etc. Note that this requires a subscription.
- The MX message is wrapped as the RequestPayload within the XML envelope. As depicted in the picture below, this request payload contains also the ApplicationHeader. This application header contains general information, its usage is specific to the context of the service.
The following picture represents the request payload:
– SWIFTNet InterAct is SWIFT’s interactive messaging service supporting the exchange of messages between two parties. Both MTs and MXs are sent over SWIFTNet using SWIFTNet InterAct.
Messages exchanged over SWIFTNet InterAct must be in XML format. In order to send MTs or MXs over SWIFTNet InterAct, the MT or MX message must be wraped in an XML message, also named XML envelope, The MT or MX message becomes the business payload of the XML envelope.
The XML envelope is then sent by invoking a SWIFTNet primitive.
The structure is depicted below by means of an example (in this case containing an MX AdditionalPaymentInformation message (camt.028.001.01)).
– SWIFTNet FileAct allows secure and reliable transfer of files and is typically used to exchange batches of structured financial messages and large reports
SWIFTNet FileAct supports tailored solutions for market infrastructure communities, closed user groups and financial institutions. SWIFTNet FileAct is particularly suitable for bulk payments, New Global Note certificates and associated documents, securities value-added information and reporting, and for other purposes, such as central-bank reporting and intra-institution reporting.
More information on using FileAct can be found on www.swift.com/index.cfm?Item_id=1048. FileAct works for the end user through a set of XML primitives, exactly like InterAct.
- XML Schema for MX Application Header
– Users can connect to SWIFT in one of two ways – directly, or indirectly. Direct Connectivity requires a physical connection to SWIFT’s secure IP network (SIPN) as well as the installation and configuration of a set of software products. With Indirect Connectivity, messaging can be established by sharing the connection of another SWIFT user or by outsourcing the day-to-day operation of the connection to a third-party, called a Service Bureau.
- The model for integrating SWIFT services into back office applications is composed of three basic layers:
• the Business application,
• the Messaging Interface,
• the Communication interface.
The Business application implements the functionality that supports an institution’s business. This layer will need to map against a message standard and send it to, or receive it from, the Messaging interface.
The Messaging interface will typically store the message, validate it and finally route it to the Communication interface. In addition to verifying if the structure of a message is according to the standard, validation also includes aspects such as verifying business relationships and security. A Messaging interface also logs all actions applied to the messages being transmitted and monitors traffic.
The Communication interface provides the functionality to connect the Messaging interface with the network. This includes security (it is the only software accessing SWIFTNet directly, and can be installed in a demilitarised zone); higher resilience (depending on the implementation, the availability of multiple Connection interfaces can support the automatic switching from one path to the other); and cost reduction (traffic of multiple Messaging interfaces can be concentrated in one Communication interface, sharing the same SWIFTNet connection – this is also called Single Window).
———————————————–
https://www.swiftcommunity.net/communities/63/forum/3011/forumPostDetail/19573
- XMLv2 was introduced with Alliance Access release 6.0
As it was new, it did not contain a Revision element.
- The next release of Alliance Access, release 6.2 contained enhancements that impacted the XMLv2 structure (e.g. native MQ host adapter).
This enhanced XMLv2 envelope was called Revision 1. In this respect the XML v2 Revision 1 XSD contains an additional element called Revision.
The Revision element has to contain the value 2.0.1.
- Now release 6.3 of AA is available, which supports FileAct. The XMLv2 envelope has been enhanced again, the revision is now 2.
———————————————–
For example, the business content of a DataPDU (10£ > 5£) can have this XML representation using the character set ISO-8859-1 and a CDATA section:
<A><![CDATA[10£ > 5£]]> <!– A comment –></A>
This can be transformed to this XML representation using US-ASCII and escaped characters:
<A>10Á > 5Á</A>
The business content is not changed, but the bit stream of the DataPDU is totally different.
———————————————–