Microservices
13.2 13.1 13.0 12.2 12.1 12.0 11.0
13.2 13.1 13.0 12.2 12.1 12.0 11.0

XML2MT

XML2MT transforms XML instances conforming to the schemas issued by SWIFT in SWIFT Standards Developer Kit (SDK) to SWIFT Message Type (MT) messages.

Configuration and Testing

Component Configuration

image2014-7-31 11:2:13.png
Figure 1: XML2MT Configuration

Attributes

For information about the below attributes, please refer to the respective sections in MT2XML page.

  • Error Handling Configuration

  • Standard Release MT Year

  • Message Schema File

Testing

Input and Output

Sample Input

A sample XML message is as below (please expand).

XML
<?xml version="1.0" encoding="UTF-8"?>
<FinMessage xmlns="urn:swift:xsd:mtmsg.2012"><!--line=0-->
   <Block1>
      <ApplicationIdentifier>F</ApplicationIdentifier>
      <ServiceIdentifier>01</ServiceIdentifier>
      <LogicalTerminalAddress>BNKACHZZBIC0</LogicalTerminalAddress>
      <SessionNumber>0000</SessionNumber>
      <SequenceNumber>000000</SequenceNumber>
   </Block1><!--line=0-->
   <Block2>
      <InputIdentifier>I</InputIdentifier>
      <MessageType>101</MessageType>
      <DestinationAddress>BNKBBEBBXBIC</DestinationAddress>
      <MessagePriority>U</MessagePriority>
      <DeliveryMonitoring>3</DeliveryMonitoring>
      <ObsolescencePeriod>005</ObsolescencePeriod>
   </Block2><!--line=0-->
   <Block3><!--line=0-->
      <F113>XXXX</F113>
   </Block3><!--line=0-->
   <Block4>
      <Document xmlns="urn:swift:xsd:fin.102.2012">
         <MT102>
            <SeqA>
               <F20a><!--line=1-->
                  <F20>5362/MPB</F20>
               </F20a>
               <F23a><!--line=2-->
                  <F23>CREDIT</F23>
               </F23a>
               <F50a><!--line=3-->
                  <F50K>
                     <Account>1234567890</Account>
                     <NameAndAddress>
                        <Line>CONSORTIA PENSION SCHEME</Line>
                        <Line>FRIEDRICHSTRASSE, 27</Line>
                        <Line>8022-ZURICH</Line>
                     </NameAndAddress>
                  </F50K>
               </F50a>
               <F71a><!--line=7-->
                  <F71A>OUR</F71A>
               </F71a>
               <F36a><!--line=8-->
                  <F36>1,6</F36>
               </F36a>
            </SeqA>
            <SeqB>
               <F21a><!--line=9-->
                  <F21>ABC/123</F21>
               </F21a>
               <F32a><!--line=10-->
                  <F32B>
                     <Currency>EUR</Currency>
                     <Amount>1250,</Amount>
                  </F32B>
               </F32a>
               <F59a><!--line=11-->
                  <F59>
                     <Account>001161685134</Account>
                     <NameAndAddress>
                        <Line>JOHANN WILLEMS</Line>
                        <Line>RUE JOSEPH II, 19</Line>
                        <Line>1040 BRUSSELS</Line>
                     </NameAndAddress>
                  </F59>
               </F59a>
               <F70a><!--line=15-->
                  <F70>
                     <Narrative>
                        <Line>PENSION PAYMENT SEPTEMBER 2009</Line>
                     </Narrative>
                  </F70>
               </F70a>
               <F33a><!--line=16-->
                  <F33B>
                     <Currency>CHF</Currency>
                     <Amount>2000,</Amount>
                  </F33B>
               </F33a>
               <F71a_3><!--line=17-->
                  <F71G>
                     <Currency>EUR</Currency>
                     <Amount>5,</Amount>
                  </F71G>
               </F71a_3>
            </SeqB>
            <SeqB>
               <F21a><!--line=18-->
                  <F21>ABC/124</F21>
               </F21a>
               <F32a><!--line=19-->
                  <F32B>
                     <Currency>EUR</Currency>
                     <Amount>1875,</Amount>
                  </F32B>
               </F32a>
               <F59a><!--line=20-->
                  <F59>
                     <Account>510007547061</Account>
                     <NameAndAddress>
                        <Line>JOAN MILLS</Line>
                        <Line>AVENUE LOUISE 213</Line>
                        <Line>1050 BRUSSELS</Line>
                     </NameAndAddress>
                  </F59>
               </F59a>
               <F70a><!--line=24-->
                  <F70>
                     <Narrative>
                        <Line>PENSION PAYMENT SEPTEMBER 2003</Line>
                     </Narrative>
                  </F70>
               </F70a>
               <F33a><!--line=25-->
                  <F33B>
                     <Currency>CHF</Currency>
                     <Amount>3000,</Amount>
                  </F33B>
               </F33a>
               <F71a_3><!--line=26-->
                  <F71G>
                     <Currency>EUR</Currency>
                     <Amount>5,</Amount>
                  </F71G>
               </F71a_3>
            </SeqB>
            <SeqC>
               <F32a><!--line=27-->
                  <F32A>
                     <Date>090828</Date>
                     <Currency>EUR</Currency>
                     <Amount>3135,</Amount>
                  </F32A>
               </F32a>
               <F19a><!--line=28-->
                  <F19>3125,</F19>
               </F19a>
               <F71a><!--line=29-->
                  <F71G>
                     <Currency>EUR</Currency>
                     <Amount>10,</Amount>
                  </F71G>
               </F71a>
            </SeqC>
         </MT102>
      </Document>
   </Block4>
</FinMessage>
Output

Output of the component for the above sample input.

{1:F01BNKACHZZBIC00000000000}{2:I101BNKBBEBBXBICU3005}{3:{113:XXXX}}{4:
:20:5362/MPB
:23:CREDIT
:50K:/1234567890
CONSORTIA PENSION SCHEME
FRIEDRICHSTRASSE, 27
8022-ZURICH
:71A:OUR
:36:1,6
:21:ABC/123
:32B:EUR1250,
:59:/001161685134
JOHANN WILLEMS
RUE JOSEPH II, 19
1040 BRUSSELS
:70:PENSION PAYMENT SEPTEMBER 2009
:33B:CHF2000,
:71G:EUR5,
:21:ABC/124
:32B:EUR1875,
:59:/510007547061
JOAN MILLS
AVENUE LOUISE 213
1050 BRUSSELS
:70:PENSION PAYMENT SEPTEMBER 2003
:33B:CHF3000,
:71G:EUR5,
:32A:090828EUR3135,
:19:3125,
:71G:EUR10,
-}


An exception is thrown if the input is not a valid SWIFT MT message.