SR 2017 MT103

MT103 Block 3 fields mapping details

Status Tag Field Name Content/Options Sub-Field Semantic MTXML Inbound Mapping Rule Outbound Mapping Rule F ISF Path Database
O 121 End-to-end transaction reference. 36!x   To support Intermediary Agent scenario and cater for end-to-end tracking across several message types FinMessage.Block3.F121 Truncate the right most 35 characters of the field and then map the value to target field.     CreditTransfer/EndToEndIdentification  

MT103 Block 4 fields mapping details

Status Tag Field Name Content/Options Sub-Field Semantic MTXML Inbound Mapping Rule Outbound Mapping Rule F ISF Path Database
M 20 Sender's Reference 16x   This field specifies the reference assigned by the Sender to unambiguously identify the message.         CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/Identification TXN_PAYMENT_V.CID
----->             Repeat for each instance of 13C        
O 13C Time Indication /8c/4!n1!x4!n   This repetitive field specifies one or several time indication(s) related to the processing of the payment instruction. Document/MT103/F13a/F13C          
        Code   Document/MT103/F13a/F13C/Code Combine the values of the subfields Time Indication HHMM Sign +/- Time Offset HHMM use 00 for SS use 000 for nnn and date from field 32A, and transform to datetime representation CCYY-MM-DDThh:mm:ss.nnn[+/-]hh:mm Apply the following rules with the resulting datetime value:        
        Time Indication   Document/MT103/F13a/F13C/TimeIndication        
        Sign   Document/MT103/F13a/F13C/Sign        
        Time Offset   Document/MT103/F13a/F13C/TimeOffset        
            Document/MT103/F13a/F13C IF Code subfield = 'CLSTIME' THEN map datetime value to target     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/SettlementTimeRequest/CLSTime  
            Document/MT103/F13a/F13C IF Code subfield = 'RNCTIME' THEN map datetime value to target     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/CreditDateTimeIndication  
            Document/MT103/F13a/F13C IF Code subfield = 'SNDTIME' THEN map datetime value to target     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/DebitDateTimeIndication  
-----|                      
M 23B Bank Operation Code 4!c   This field identifies the type of operation.         CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/ProcessingInstructions/ServiceLevel/Other  
----->             Repeat for each instance of 23E        
O 23E Instruction Code 4!c[/30x]   This field specifies an instruction. Document/MT103/F23a_2/F23E Apply the following rules for the InstructionCode and AdditionalInformation subfield values.
Note: Each InstructionCode should be mapped to separate instances of InstructionForCreditorAgent or InstructionForNextAgent.
       
        Instruction Code   Document/MT103/F23a_2/F23E/InstructionCode        
        Additional Information   Document/MT103/F23a_2/F23E/AdditionalInformation        
            Document/MT103/F23a_2/F23E IF InstructionCode="REPA"/"PHON"/"TELE"/"PHOI"/"TELI" THEN Map InstructionCode string to target     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/InstructionForNextAgent/Code  
            Document/MT103/F23a_2/F23E IF InstructionCode="REPA"/"PHON"/"TELE"/"PHOI"/"TELI" THEN Map AdditionalInformation string to target     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/InstructionForNextAgent/InstructionInformation  
            Document/MT103/F23a_2/F23E IF InstructionCode="CHQB" THEN Map InstructionCode string to target IF InstructionCode="HOLD"/"PHOB"/"TELB" THEN Map InstructionCode string to target     CreditTransfer/InstructionForCreditorAgent/Code  
            Document/MT103/F23a_2/F23E IF InstructionCode="CHQB" THEN Do not map target IF InstructionCode="HOLD"/"PHOB"/"TELB" THEN Map AdditionalInformation string to target     CreditTransfer/InstructionForCreditorAgent/InstructionInformation  
            Document/MT103/F23a_2/F23E IF InstructionCode="SDVA" THEN Map InstructionCode string to target     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/ProcessingInstructions/ServiceLevel/ServiceLevel  
            Document/MT103/F23a_2/F23E IF InstructionCode="INTC"/"CORT" THEN Map InstructionCode string to target     CreditTransfer/CategoryPurpose  
-----|                      
O 26T Transaction Type Code 3!c   This field identifies the nature of, purpose of, and/or reason for the individual transaction, for example, salaries, pensions, dividends. Document/MT103/F26a/F26T          
        Type   Document/MT103/F26a/F26T       CreditTransfer/PaymentObligation/Purpose  
            Document/MT103/F26a/F26T Set CodeIssuer to "Swift26T"     CreditTransfer/PaymentObligation/Purpose/CodeIssuer  
M 32A Value Date/Currency/Interbank Settled Amount 6!n3!a15d   This field specifies the value date, the currency and the settlement amount. The settlement amount is the amount to be booked/reconciled at interbank level.            
        Date   Document/MT103/F32a/F32A/Date Transform the Date subfield format YYMMDD to datetime representation CCYY-MM-DDThh:mm:ss The time portion hh:mm:ss may be set to 00:00:00     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/InterbankSettlementDate TXN_PAYMENT_V.VALUE_DATE TXN_PAYMENT_V.SETTLE_DATE
        Currency The codes XAU, XAG, XPD, and XPT are not allowed. Document/MT103/F32a/F32A/Currency       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/InterbankSettlementAmount/Currency TXN_PAYMENT_V.CURRENCY
        Amount   Document/MT103/F32a/F32A/Amount The "," comma in the Amount value should be replaced with "." dot as a decimal separator     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/InterbankSettlementAmount TXN_PAYMENT_V.AMOUNT
O 33B Currency/Instructed Amount 3!a15d   This field specifies the currency and amount of the instruction. This amount is provided for information purposes and has to be transported unchanged through the transaction chain. Document/MT103/F33a          
        Currency   Document/MT103/F33a/F33B/Currency       CreditTransfer/InstructedAmount/Currency  
        Amount   Document/MT103/F33a/F33B/Amount The "," comma in the Amount value should be replaced with "." dot as a decimal separator     CreditTransfer/InstructedAmount  
O 36 Exchange Rate 12d   This field specifies the exchange rate used to convert the instructed amount specified in field 33B. Document/MT103/F36a/F36          
        Rate   Document/MT103/F36a/F36 The "," comma in the Rate value should be replaced with "." dot as a decimal separator     CreditTransfer/ExchangeRateInformation/ExchangeRate TXN_PAYMENT_V.FX_RATE
                       
  50a Ordering Customer A, F, or K   This field specifies the customer ordering the transaction.         CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]  
  50A   [/34x] 4!a2!a2!c[3!c]     Document/MT103/F50a/F50A       CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]  
    (Account)       Document/MT103/F50a/F50A/Account See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Account'.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole] TXN_PAYMENT_V.ACCOUNT
    (Identifier Code)       Document/MT103/F50a/F50A/IdentifierCode       CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Party]/Identification[xsi:type=isf:OrganisationIdentification]/AnyBIC  
  50F   35x 4*35x     Document/MT103/F50a/F50F       CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]  
    Line 1 (Party Identifier) /34x     Document/MT103/F50a/F50F/PartyIdentifier If Line 1 (Party Identifier) starts with '/' it contains the Account subfield. Apply the following rules for the Account value.        
        Account   Document/MT103/F50a/F50F/PartyIdentifier/Account See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Account'.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole] TXN_PAYMENT_V.ACCOUNT
    OR                  
    Line 1 (Party Identifier) 4!a/2!a/27x     Document/MT103/F50a/F50F/PartyIdentifier If Line 1 (Party Identifier) does not start with '/' it contains the Code, Country Code, and Identifier subfields. Apply the following rules for these subfields.        
        Code   Document/MT103/F50a/F50F/PartyIdentifier/Code       CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/OtherIdentification[xsi:type=isf:GenericIdentification]/Scheme/NameShort  
        Country Code   Document/MT103/F50a/F50F/PartyIdentifier/CountryCode In the case of Code values 'CUST', 'DRLC' and 'EMPL', An additional 'Issuer' subfield follows 'Country Code'. Extract the issuer number (from characters 9 till the next slash) from the source field. Concatenate 'Country Code' and 'Issuer' along with a separating slash "/" . Map the result to the target field.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/OtherIdentification[xsi:type=isf:GenericIdentification]/PartyRole/OwnerCode  
        Identifier   Document/MT103/F50a/F50F/PartyIdentifier/Identifier Map Identifier string to target, and apply the following rules.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/OtherIdentification[xsi:type=isf:GenericIdentification]/Identification  
          The code ARNU followed by a slash, '/' must be followed by the ISO country code, a slash, '/' and the Alien Registration Number. Document/MT103/F50a/F50F/PartyIdentifier/Identifier IF Code = ARNU, THEN Map Identifier string to target     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/AlienRegistrationNumber  
          The code CCPT followed by a slash, '/' must be followed by the ISO country code, a slash, '/' and the Passport Number. Document/MT103/F50a/F50F/PartyIdentifier/Identifier IF Code = CCPT, THEN Map Identifier string to target     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/PassportNumber  
          The code CUST followed by a slash, '/' must be followed by the ISO country code of the issuer of the number, a slash, '/', the issuer of the number, a slash, '/' and the Customer Identification Number.            
          The code DRLC followed by a slash, '/' must be followed by the ISO country code of the issuing authority, a slash, '/', the issuing authority, a slash, '/' and the Driver's License Number. Document/MT103/F50a/F50F/PartyIdentifier/Identifier IF Code = DRLC, THEN Map Identifier string to target     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/DriversLicenseNumber  
          The code EMPL followed by a slash, '/' must be followed by the ISO country code of the registration authority, a slash, '/', the registration authority, a slash, '/' and the Employer Number. Document/MT103/F50a/F50F/PartyIdentifier/Identifier IF Code = EMPL, THEN Map Identifier string to target     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/EmployerIdentificationNumber  
          The code NIDN followed by a slash, '/' must be followed by the ISO country code, a slash, '/' and the National Identity Number. Document/MT103/F50a/F50F/PartyIdentifier/Identifier IF Code = NIDN, THEN Map Identifier string to target     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/NationalRegistrationNumber  
          The code SOSE followed by a slash, '/' must be followed by the ISO country code, a slash, '/' and the Social Security Number. Document/MT103/F50a/F50F/PartyIdentifier/Identifier IF Code = SOSE, THEN Map Identifier string to target     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/SocialSecurityNumber  
          The code TXID followed by a slash, '/' must be followed by the ISO country code, a slash, '/' and the Tax Identification Number. Document/MT103/F50a/F50F/PartyIdentifier/Identifier IF Code = TXID, THEN Map Identifier string to target     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/TaxIdentificationNumber  
    Lines 2-5 (Name & Address) 4*35x     Document/MT103/F50a/F50F/NameAndAddress/Line2to5 Apply the following rules for each occurrence of Lines 2-5 (Name & Address)        
        Number   Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Number          
        Details   Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail          
          1 :Name of the Ordering Customer The number followed by a slash, '/' must be followed by the Name of the ordering customer Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail Number subfield = 1 Number = 1 can occur on more than 1 line. Concatenate the Details string from each occurrence with Number = 1, adding a space as a delimiter. And map the result to the target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/PartyName/Name  
          2 :Address Line The number followed by a slash, '/' must be followed by an Address Line (Address Line can be used to provide for example, street Name and number, or building Name). Number 2 must not be used without number 3 Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail Number subfield = 2 Number = 2 can occur on more than 1 line. Map the Details string from each occurrence with Number = 2 to a separate occurrence of the target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine  
         
3 :Country and Town
The first occurrence of number 3 must be followed by a slash "/", the ISO country code, and optionally a slash "/" followed by additional details.
Other occurrence(s) of number 3 must be followed by a slash "/" and the continuation of additional details.
Additional details can contain town, which can be complemented by postal code (for example, ZIP) and country subdivision (for example, state, province, or country).
It is preferred that the country code and town indicate the country and town of residence.
Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail
Number subfield = 3
Number = 3 can occur on more than 1 line.

Extract the code (character 1) from the source field and read it . If it is 3 then..

For the first line, map country code(character 3-4) to Path 1
and if country code is followed by '/' (position 5) then map remainder of line (from position 6) to Path 2

For each additional line with code (character 1) equals 3
   If TownName (Path 2) has not been mapped, them map line from position 3 to Path 2
   else  map line from position 3 to next available instance of Path 3
   
Path 1
CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Country/Code
Path 2
CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/ContactPoint[xsi:type=isf:ISFPostalAddress]/TownName
Path 3
CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured:/AddressLine
 
         
First occurrence - Country code
 
Extract the country code (characters 3-4) from the source field and map it to the target field as it is.
    CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Country/Code  
          Extract the value from character 6 onwards, and map it to the target field.         CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/ContactPoint[xsi:type=isf:ISFPostalAddress]/TownName  
          Extract the value from character 3 onwards, and map it to the target field.         CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/ContactPoint[xsi:type=isf:ISFPostalAddress]/TownName  
          4 :Date of Birth The number followed by a slash, '/' must be followed by the Date of Birth in the YYYYMMDD format. Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail Number subfield = 4 The Details string contains a date of birth as YYYYMMDD format. Transform to datetime representation CCYY-MM-DDThh:mm:ss The time portion hh:mm:ss may be set to 00:00:00 Map resulting value to target     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/BirthDate  
          5 :Place of Birth The number followed by a slash, '/' must be followed by the ISO country code, a slash '/' and the Place of Birth. Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail Number subfield = 5 The Details string contains a country code and town separated by the '/' character. Extract the country code and map to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/PlaceOfBirth/Address/Country/Code  
          5 :Place of Birth The number followed by a slash, '/' must be followed by the ISO country code, a slash '/' and the Place of Birth. Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail Number subfield = 5 The Details string contains a country code and town separated by the '/' character. Extract the town and map to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/PlaceOfBirth/Address/TownName  
          6 :Customer Identification Number The number followed by a slash, '/' must be followed by the ISO country code of the issuer of the number, a slash, '/', the issuer of the number, a slash, '/' and the Customer Identification Number. Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail Number subfield = 6 The Details string contains a country code, Issuer and the Customer Identification number separated by the '/' character. Extract the country code, and issuer. Concatenate these with a separating '/' and map to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/OtherIdentification[xsi:type=isf:GenericIdentification]/PartyRole/OwnerCode  
          6 :Customer Identification Number The number followed by a slash, '/' must be followed by the ISO country code of the issuer of the number, a slash, '/', the issuer of the number, a slash, '/' and the Customer Identification Number. Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail Number subfield = 6 The Details string contains a country code, Issuer and the Customer Identification number separated by the '/' character. Extract the Customer Identification number and map to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/OtherIdentification[xsi:type=isf:GenericIdentification]/Identification  
          6 :Customer Identification Number The number followed by a slash, '/' must be followed by the ISO country code of the issuer of the number, a slash, '/', the issuer of the number, a slash, '/' and the Customer Identification Number. Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail Number subfield = 6 Map the value "CUST" to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/OtherIdentification[xsi:type=isf:GenericIdentification]/Scheme/NameShort  
          7 :National IdentityNumber The number followed by a slash, '/' must be followed by the ISO country code, a slash, '/' and the National Identity Number. Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail Number subfield = 7 The Details string contains a country code, and the National Identity number separated by the '/' character. Extract the country code map to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/OtherIdentification[xsi:type=isf:GenericIdentification]/PartyRole/OwnerCode  
              Number subfield = 7 The Details string contains a country code, and the National Identity number separated by the '/' character. Extract the National Identity number and map to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/OtherIdentification[xsi:type=isf:GenericIdentification]/Identification  
              Number subfield = 7 The Details string contains a country code, and the National Identity number separated by the '/' character. Extract the National Identity number and map to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/NationalRegistrationNumber  
              Number subfield = 7 Map the value "NIDN" to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Person]/Identification[xsi:type=isf:PersonIdentification]/OtherIdentification[xsi:type=isf:GenericIdentification]/Scheme/NameShort  
          8 :Additional Information • the Identifier provided in subfield 1 (Party Identifier) used with the(Code)(Country Code)(Identifier) format. • the Customer Identification Number provided in subfield 2 (Name and Address) with number 6. Document/MT103/F50a/F50F/NameAndAddress/Line2to5/Detail Number subfield = 8 If Line 1 option provides a 'PartyIdentifier' (Code)(Country Code)(Identifier), and a) Line 1 contains maximum of 35 characters, then the Details string from Lines 2-5 (Name & Address) - Number = 8 should be treated as a continuation of the identifier and appended to the target ISF path(s) of Line 1 'Identifier' b) If the value is available in Lines 2-5 (Name & Address) Number = 7 --- Then the Details string from Number = 8 will be treated as an extension to Number = 7 and the value will get appended to the target ISF path(s) for the 'National Identity Number' subfield. c) If the value is not available for Lines 2-5 (Name & Address) Number = 7 and the value is available for Number = 6 – Then the Details string from Number = 8 will be treated as an extension of Number = 6 and the value will get appended to the target ISF path for the 'Customer Identification Number' subfield.        
                       
                       
  50K   [/34x] 4*35x     Document/MT103/F50a/F50K       CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]  
    (Account)       Document/MT103/F50a/F50K/Account See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Account'.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole] TXN_PAYMENT_V.ACCOUNT
    (Name & Address)       Document/MT103/F50a/F50K/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map the first occurrence (Name) to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Party]/Identification[xsi:type=isf:OrganisationIdentification]/PartyName/Name  
            Document/MT103/F50a/F50K/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map occurrences 2-4, if present (Address line) to separate occurrences of target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorRole]/Player[xsi:type=isf:Party]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine  
O 51A Sending Institution [/1!a][/34x] 4!a2!a2!c[3!c]   This field identifies the Sender of the message. Document/MT103/F51a/F51A       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/AgentRole[xsi:type=isf:InstructingAgentRole]  
    (Party Identifier)       Document/MT103/F51a/F51A/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/AgentRole[xsi:type=isf:InstructingAgentRole]  
    (Identifier Code)       Document/MT103/F51a/F51A/IdentifierCode       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/AgentRole[xsi:type=isf:InstructingAgentRole]/Player[xsi:type=isf:FinancialInstitution]/identification[xsi:type=isf:OrganisationIdentification]/BICFI  
O 52a Ordering Institution A or D   This field specifies the financial institution of the ordering customer, when different from the Sender, even if field 50a contains an IBAN. Document/MT103/F52a       CreditTransfer/PartyRole[xsi:type=isf:DebtorAgentRole]  
  52A   [/1!a][/34x] 4!a2!a2!c[3!c]     Document/MT103/F52a/F52A          
    (Party Identifier)       Document/MT103/F52a/F52A/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PartyRole[xsi:type=isf:DebtorAgentRole]  
    (Identifier Code)       Document/MT103/F52a/F52A/IdentifierCode       CreditTransfer/PartyRole[xsi:type=isf:DebtorAgentRole]/Player[xsi:type=isf:FinancialInstitution]/identification[xsi:type=isf:OrganisationIdentification]/BICFI TXN_PAYMENT_V.BANK_CODE
  52D   [/1!a][/34x] 4*35x     Document/MT103/F52a/F52D          
    (Party Identifier)       Document/MT103/F52a/F52D/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PartyRole[xsi:type=isf:DebtorAgentRole]  
    (Name & Address)       Document/MT103/F52a/F52D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map the first occurrence (Name) to target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorAgentRole]/Player[xsi:type=isf:FinancialInstitution]/Identification[xsi:type=isf:OrganisationIdentification]/PartyName/Name  
            Document/MT103/F52a/F52D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map occurrences 2-4, if present (Address line) to separate occurrences of target.     CreditTransfer/PartyRole[xsi:type=isf:DebtorAgentRole]/Player[xsi:type=isf:FinancialInstitution]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine  
O 53a Sender's Correspondent A, B, or D   Where required, this field specifies the account or branch of the Sender or another financial institution through which the Sender will reimburse the Receiver. Document/MT103/F53a       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructingReimbursementAgent]  
  53A   [/1!a][/34x] 4!a2!a2!c[3!c]     Document/MT103/F53a/F53A          
    (Party Identifier)       Document/MT103/F53a/F53A/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructingReimbursementAgent]  
    (Identifier Code)       Document/MT103/F53a/F53A/IdentifierCode       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructingReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/identification[xsi:type=isf:OrganisationIdentification]/BICFI  
  53B   [/1!a][/34x] [35x]     Document/MT103/F53a/F53A          
    (Party Identifier) [/1!a][/34x]   Line 1 (Party Identifier) (PartyIdentifier) can be an (Account) optionally prefixed by a (CreditDebitIndicator) Document/MT103/F53a/F53B/PartyIdentifier IF the CreditDebitIndicator is present in 53B = /C THEN Map the value "INGA" to target. IF the CreditDebitIndicator is present in 53B = /D OR the CreditDebitIndicator is not present in 53B THEN Map the value "INDA" to target IF 53B is not present and 53A/53D OR 54a is present (with or without CreditDebitIndicator) THEN Map the value "COVE" to target IF none of above rules applies THEN Map the value "INDA" to target     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/SettlementMethod  
            Document/MT103/F53a/F53B/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Account'.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/SettlementAccount  
    (Location)       Document/MT103/F53a/F53A/Location       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/SettlementAccount/PartyRole[xsi:type=isf:AccountServicerRole]/Player[xsi:type=isf:FinancialInstitution]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Identification[xsi:type=isf:GenericIdentification]/Identification  
  53D   [/1!a][/34x] 4*35x     Document/MT103/F53a/F53D          
    (Party Identifier)       Document/MT103/F53a/F53D/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructingReimbursementAgent]  
    (Name & Address)       Document/MT103/F53a/F53D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map the first occurrence (Name) to target.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructingReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/Identification[xsi:type=isf:OrganisationIdentification]/PartyName/Name  
            Document/MT103/F53a/F53D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map occurrences 2-4, if present (Address line) to separate occurrences of target.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructingReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine  
O 54a Receiver's Correspondent A, B, or D   This field specifies the branch of the Receiver or another financial institution at which the funds will be made available to the Receiver. Document/MT103/F54a       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructedReimbursementAgent]  
  54A   [/1!a][/34x] 4!a2!a2!c[3!c]     Document/MT103/F54a/F54A          
    (Party Identifier)       Document/MT103/F54a/F54A/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructedReimbursementAgent]  
    (Identifier Code)       Document/MT103/F54a/F54A/IdentifierCode       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructedReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/identification[xsi:type=isf:OrganisationIdentification]/BICFI  
  54B   [/1!a][/34x] [35x]     Document/MT103/F54a/F54A          
    (Party Identifier)       Document/MT103/F54a/F54B/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructedReimbursementAgent]  
    (Location)       Document/MT103/F54a/F54A/Location       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructedReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Identification[xsi:type=isf:GenericIdentification]/Identification  
  54D   [/1!a][/34x] 4*35x     Document/MT103/F54a/F54D          
    (Party Identifier)       Document/MT103/F54a/F54D/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructedReimbursementAgent]  
    (Name & Address)       Document/MT103/F54a/F54D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map the first occurrence (Name) to target.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructedReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/Identification[xsi:type=isf:OrganisationIdentification]/PartyName/Name  
            Document/MT103/F54a/F54D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map occurrences 2-4, if present (Address line) to separate occurrences of target.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:InstructedReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine  
O 55a Third Reimbursement Institution A, B, or D   This field specifies the Receiver's branch, when the funds are made available to this branch through a financial institution other than that indicated in field 53a. Document/MT103/F55a       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:ThirdReimbursementAgent]  
  55A   [/1!a][/34x] 4!a2!a2!c[3!c]     Document/MT103/F55a/F55A          
    (Party Identifier)       Document/MT103/F55a/F55A/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:ThirdReimbursementAgent]  
    (Identifier Code)       Document/MT103/F55a/F55A/IdentifierCode       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:ThirdReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/identification[xsi:type=isf:OrganisationIdentification]/BICFI  
  55B   [/1!a][/34x] [35x]     Document/MT103/F55a/F55A          
    (Party Identifier)       Document/MT103/F55a/F55B/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:ThirdReimbursementAgent]  
    (Location)       Document/MT103/F55a/F55A/Location       CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:ThirdReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Identification[xsi:type=isf:GenericIdentification]/Identification  
  55D   [/1!a][/34x] 4*35x     Document/MT103/F55a/F55D          
    (Party Identifier)       Document/MT103/F55a/F55D/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:ThirdReimbursementAgent]  
    (Name & Address)       Document/MT103/F55a/F55D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map the first occurrence (Name) to target.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:ThirdReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/Identification[xsi:type=isf:OrganisationIdentification]/PartyName/Name  
            Document/MT103/F55a/F55D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map occurrences 2-4, if present (Address line) to separate occurrences of target.     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/SettlementInstruction/PartyRole[xsi:type=isf:ThirdReimbursementAgent]/Player[xsi:type=isf:FinancialInstitution]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine  
O 56a Intermediary Institution A, C, or D   This field specifies the financial institution through which the transaction must pass to reach the account with institution. Document/MT103/F56a       CreditTransfer/PartyRole[xsi:type=isf:IntermediaryAgentRole]  
  56A   [/1!a][/34x] 4!a2!a2!c[3!c]     Document/MT103/F56a/F56A          
    (Party Identifier)       Document/MT103/F56a/F56A/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PartyRole[xsi:type=isf:IntermediaryAgentRole]  
    (Identifier Code)       Document/MT103/F56a/F56A/IdentifierCode       CreditTransfer/PartyRole[xsi:type=isf:IntermediaryAgentRole]/Player[xsi:type=isf:FinancialInstitution]/identification[xsi:type=isf:OrganisationIdentification]/BICFI  
  56C   [/1!a][/34x] [35x]     Document/MT103/F56a/F56A          
    (Party Identifier)       Document/MT103/F56a/F56B/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PartyRole[xsi:type=isf:IntermediaryAgentRole]  
  56D   [/1!a][/34x] 4*35x     Document/MT103/F56a/F56D          
    (Party Identifier)       Document/MT103/F56a/F56D/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PartyRole[xsi:type=isf:IntermediaryAgentRole]  
    (Name & Address)       Document/MT103/F56a/F56D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map the first occurrence (Name) to target.     CreditTransfer/PartyRole[xsi:type=isf:IntermediaryAgentRole]/Player[xsi:type=isf:FinancialInstitution]/Identification[xsi:type=isf:OrganisationIdentification]/PartyName/Name  
            Document/MT103/F56a/F56D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map occurrences 2-4, if present (Address line) to separate occurrences of target.     CreditTransfer/PartyRole[xsi:type=isf:IntermediaryAgentRole]/Player[xsi:type=isf:FinancialInstitution]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine  
O 57a Account With Institution A, B, C, or D   This field specifies the financial institution which services the account for the beneficiary customer. This is applicable even if field 59 or 59A contains an IBAN. Document/MT103/F57a       CreditTransfer/PartyRole[xsi:type=isf:CreditorAgentRole]  
  57A   [/1!a][/34x] 4!a2!a2!c[3!c]     Document/MT103/F57a/F57A          
    (Party Identifier)       Document/MT103/F57a/F57A/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PartyRole[xsi:type=isf:CreditorAgentRole]  
    (Identifier Code)       Document/MT103/F57a/F57A/IdentifierCode       CreditTransfer/PartyRole[xsi:type=isf:CreditorAgentRole]/Player[xsi:type=isf:FinancialInstitution]/identification[xsi:type=isf:OrganisationIdentification]/BICFI TXN_PAYMENT_V.DEST_BANK_CODE
  57B   [/1!a][/34x] [35x]     Document/MT103/F57a/F57A          
    (Party Identifier)       Document/MT103/F57a/F57B/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PartyRole[xsi:type=isf:CreditorAgentRole]  
    (Location)       Document/MT103/F57a/F57A/Location       CreditTransfer/PartyRole[xsi:type=isf:CreditorAgentRole]/Player[xsi:type=isf:FinancialInstitution]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Identification[xsi:type=isf:GenericIdentification]/Identification  
  57C   /34x]     Document/MT103/F57a/F57C          
    (Party Identifier)       Document/MT103/F57a/F57C/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PartyRole[xsi:type=isf:CreditorAgentRole]  
  57D   [/1!a][/34x] 4*35x     Document/MT103/F57a/F57D          
    (Party Identifier)       Document/MT103/F57a/F57D/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Party Identifier'.     CreditTransfer/PartyRole[xsi:type=isf:CreditorAgentRole]  
    (Name & Address)       Document/MT103/F57a/F57D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map the first occurrence (Name) to target.     CreditTransfer/PartyRole[xsi:type=isf:CreditorAgentRole]/Player[xsi:type=isf:FinancialInstitution]/Identification[xsi:type=isf:OrganisationIdentification]/PartyName/Name  
            Document/MT103/F57a/F57D/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map occurrences 2-4, if present (Address line) to separate occurrences of target.     CreditTransfer/PartyRole[xsi:type=isf:CreditorAgentRole]/Player[xsi:type=isf:FinancialInstitution]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine  
M 59a Beneficiary Customer No letter option or A   This field specifies the customer which will be paid. Document/MT103/F59a       CreditTransfer/PartyRole[xsi:type=isf:CreditorRole]  
  59   /34x 4*35x     Document/MT103/F59a/F59          
    (Account)       Document/MT103/F59a/F59/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Account'.     CreditTransfer/PartyRole[xsi:type=isf:CreditorRole] TXN_PAYMENT_V.DEST_ACCOUNT
    (Name & Address)       Document/MT103/F59a/F59/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map the first occurrence (Name) to target.     CreditTransfer/PartyRole[xsi:type=isf:CreditorRole]/Player[xsi:type=isf:Party]/Identification[xsi:type=isf:OrganisationIdentification]/PartyName/Name  
            Document/MT103/F59a/F59/NameAndAddress/Line (Name & Address) may occur 1-4 times. Map occurrences 2-4, if present (Address line) to separate occurrences of target.     CreditTransfer/PartyRole[xsi:type=isf:CreditorRole]/Player[xsi:type=isf:Party]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine  
  59A   [/1!a][/34x] 4!a2!a2!c[3!c]     Document/MT103/F59a/F59A          
    (Party Identifier)       Document/MT103/F59a/F59A/PartyIdentifier See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Account'.     CreditTransfer/PartyRole[xsi:type=isf:CreditorRole] TXN_PAYMENT_V.DEST_ACCOUNT
    (Identifier Code)       Document/MT103/F59a/F59A/IdentifierCode       CreditTransfer/PartyRole[xsi:type=isf:CreditorRole]/Player[xsi:type=isf:Party]/identification[xsi:type=isf:OrganisationIdentification]/BICFI  
  59F   [/34x] 4*(1!n/33x)     Document/MT103/F59a/F59F          
    Line 1 (Account) [/34x]     Document/MT103/F59a/F59F/Account See separate sheet "Party Identifier and Account" for detailed mapping, using rules for 'Account'.     CreditTransfer/PartyRole[xsi:type=isf:CreditorRole] TXN_PAYMENT_V.DEST_ACCOUNT
    Line 2-5 (Name and Address Details) 4*(1!n/33x)     Document/MT103/F59a/F59F/NumberNameAndAddressDetails Apply the following rules for each occurrence of Lines 2-5 (Name & Address)        
        Number   Document/MT103/F59a/F59F/NumberNameAndAddressDetails/Number          
        Details   Document/MT103/F59a/F59F/NumberNameAndAddressDetails/Details          
          1 :Name of the Beneficiary Customer The number followed by a slash, '/' must be followed by the Name of the ordering customer Document/MT103/F59a/F59F/NumberNameAndAddressDetails/Details Number subfield = 1 Number = 1 can occur on more than 1 line. Concatenate the Details string from each occurrence with Number = 1, adding a space as a delimiter. And map the result to the target.
In order to map name and address Path 1 must be present 
Create line of 59F using the Path 1 with Line code 1.
  CreditTransfer/PartyRole[xsi:type=isf:CreditorRole]/Player[xsi:type=isf:Party]/Identification[xsi:type=isf:OrganisationIdentification]/PartyName/Name  
          2 :Address Line The number followed by a slash, '/' must be followed by an Address Line (Address Line can be used to provide for example, street Name and number, or building Name). Number 2 must not be used without number 3 Document/MT103/F59a/F59F/NumberNameAndAddressDetails/Details Number subfield = 2 Number = 2 can occur on more than 1 line. Map the Details string from each occurrence with Number = 2 to a separate occurrence of the target.
If there is no occurrences of Path 2, the field should be mapped to 59 no letter option
  CreditTransfer/PartyRole[xsi:type=isf:CreditorRole]/Player[xsi:type=isf:Party]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine  
         
3 :Country and Town
The first occurrence of number 3 must be followed by a slash "/", the ISO country code, and optionally a slash "/" followed by additional details.
Other occurrence(s) of number 3 must be followed by a slash "/" and the continuation of additional details.
Additional details can contain town, which can be complemented by postal code (for example, ZIP) and country subdivision (for example, state, province, or country).
It is preferred that the country code and town indicate the country and town of residence.
Document/MT103/F59a/F59F/NumberNameAndAddressDetails/Details
Number subfield = 3
Number = 3 can occur on more than 1 line.

Extract the code (character 1) from the source field and read it . If it is 3 then..

For the first line, map country code(character 3-4) to Path 1
and if country code is followed by '/' (position 5) then map remainder of line (from position 6) to Path 2

For each additional line with code (character 1) equals 3
   If TownName (Path 2) has not been mapped, them map line from position 3 to Path 2
   else  map line from position 3 to next available instance of Path 3
If  Path 1  is present then create lines of 59F
‧using Path 3 with line code 2 ,
‧using Path 1 and Path 2 with Line code 3
‧if Path 2 has more than 30 chars Then map it to the second Line of code 3, otherwise map it to the first Line of code 3.

Note, the number of occurrences of line code 2 (zero to 2) that can be output
‧will depend on the number of occurrences of line code 3
‧remain within the limit of 4 lines.
‧if code 2 is present, the first occurrence of code 3 must include the town in the additional details
 
Path 1
CreditTransfer/PartyRole[xsi:type=isf:CreditorRole]/Player[xsi:type=isf:Party]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Country/Code
Path 2
CreditTransfer/PartyRole[xsi:type=isf:CreditorRole]/Player[xsi:type=isf:Party]/ContactPoint[xsi:type=isf:ISFPostalAddress]/TownName
Path 3
CreditTransfer/PartyRole[xsi:type=isf:CreditorRole]/Player[xsi:type=isf:Party]/ContactPoint[xsi:type=isf:ISFPostalAddress]/Unstructured/AddressLine
 
O 70 Remittance Information 4*35x   This field specifies either the details of the individual transaction or a reference to another message containing the details which are to be transmitted to the beneficiary customer. Document/MT103/F70a/F70          
    (Narrative)       Document/MT103/F70a/F70/Narrative/Line Concatenate each occurrence of Narrative Line, adding a space as delimiter, and map result to target.     CreditTransfer/PaymentObligation/AssociatedDocument[xsi:type=isf:Document]/ContentDescription  
M 71A Details of Charges 3!a   This field specifies which party will bear the charges for the transaction. Document/MT103/F71a_1/F71A          
    (Code)       Document/MT103/F71a_1/F71A IF Code = 'BEN' THEN Map the value 'CRED' to target IF Code = 'OUR' THEN Map the value 'DEBT' to target IF Code = 'SHA' THEN Map the value 'SHAR' to target     CreditTransfer/ChargeBearer  
----->             For each instance of 71F, map to a separate instance of Charges        
O 71F Sender's Charges 3!a15d   This repetitive field specifies the currency and amount of the transaction charges deducted by the Sender and by previous banks in the transaction chain. Document/MT103/F71a_2/F71F          
    (Currency)       Document/MT103/F71a_2/F71F/Currency       CreditTransfer/Charges/Amount/Currency  
    (Amount)       Document/MT103/F71a_2/F71F/Amount The "," comma in the Amount value should be replaced with "." dot as a decimal separator     CreditTransfer/Charges/Amount  
            Document/MT103/F71a_2/F71F/Amount Map the value 'CRED' to target     CreditTransfer/Charges/Bearertype  
-----|                      
O 71G Receiver's Charges 3!a15d   This field specifies the currency and amount of the transaction charges due to the Receiver. Document/MT103/F71a_2/F71G          
    (Currency)       Document/MT103/F71a_2/F71G/Currency       CreditTransfer/Charges/Amount/Currency  
    (Amount)       Document/MT103/F71a_2/F71G/Amount The "," comma in the Amount value should be replaced with "." dot as a decimal separator     CreditTransfer/Charges/Amount  
            Document/MT103/F71a_2/F71G/Amount Map the value 'DEBT' to target     CreditTransfer/Charges/Bearertype  
O 72 Sender to Receiver Information 6*35x   This field specifies additional information for the Receiver or other party specified. Document/MT103/F72a/F72          
    Line 1 (Narrative Structured Format) /8c/[additional information]       Repeat the set of Field 72 mapping rules for each Code that appears in Field 72 rows 1 to 6 (i.e. Line1.Code or Line2to6.Code). First, concatenate (delimited by space) Narrative subfield with immediately following Narrative only lines (removing leading ""//"") (i.e. Line1.Narrative or Line2to6.Narrative2 with immediately following Line2to6.Narrative1). Apply the following rules with the resulting Code and narrative:
Note: Each Code should be mapped to separate instances of InstructionForCreditorAgent or InstructionForNextAgent. Similarly, "INS" should be mapped to a separate instance of AgentRole.
       
        Code   Document/MT103/F72a/F72/NarrativeStructuredFormat/Line1/Code        
        Narrative   Document/MT103/F72a/F72/NarrativeStructuredFormat/Line1/Narrative        
    Lines 2-6 (Narrative Structured Format) [//continuation of additional information]              
        Narrative   Document/MT103/F72a/F72/NarrativeStructuredFormat/Line2to6/Narrative1        
                     
    OR                
    Lines 2-6 (Narrative Structured Format) [/8c/[additional information]]              
        Code   Document/MT103/F72a/F72/NarrativeStructuredFormat/Line2to6/Code        
        Narrative   Document/MT103/F72a/F72/NarrativeStructuredFormat/Line2to6/Narrative2        
            Document/MT103/F72a/F72 IF Code = "INS" and narrative string is a BIC Code (8 or 11 chars) THEN Map narrative string to target Note BIC Code matches pattern: [A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/AgentRole[xsi:type=isf:InstructingAgentRole]/Player[xsi:type=isf:FinancialInstitution]/Identification[xsi:type=isf:OrganisationIdentification]/BICFI  
            Document/MT103/F72a/F72 IF Code = "INS" and narrative string is NOT a BIC Code (8 or 11 chars) THEN Map narrative string to target     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/AgentRole[xsi:type=isf:InstructingAgentRole]/Player[xsi:type=isf:FinancialInstitution]/Identification[xsi:type=isf:OrganisationIdentification]/PartyName/Name  
            Document/MT103/F72a/F72 IF Code = "INS" THEN Set target to true     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/AgentRole[xsi:type=isf:InstructingAgentRole]/previous  
             
Map each occurrence of code INS to a separate instance of AgentRole
       
            Document/MT103/F72a/F72 IF Code = "ACC" THEN Map narrative string to target     CreditTransfer/InstructionForCreditorAgent/InstructionInformation  
            Document/MT103/F72a/F72 IF Code = "REC" THEN Do not map Code to target IF Code is any value not covered by other rules THEN Map Code to target     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/InstructionForNextAgent/Code  
            Document/MT103/F72a/F72 IF Code = "REC" THEN Map narrative string target (Code is not mapped) IF Code is any value not covered by other rules THEN Map narrative string to target (same instance of InstructionForNextAgent as Code)     CreditTransfer/PaymentExecution[xsi:type=isf:ISFPaymentInstruction]/InstructionForNextAgent/InstructionInformation  
O 77B Regulatory Reporting 3*35x   This field specifies the codes for the statutory and/or regulatory information required by the authorities in the country of Receiver or Sender. Document/MT103/F77a_1/F77B          
    (Narrative)       For 103 and 103/STP: Document/MT103/F77a/F77B/Narrative/Line For 103 REMIT: Document/MT103/F77a_1/F77B/Narrative/Line For each instance of Narrative, map to a separate instance of RegulatoryReport in target     CreditTransfer/RegulatoryReport/Description