Equivalence Between ISO 15022 and ISO 20022

Download as xlsx, pdf, or txt
Download as xlsx, pdf, or txt
You are on page 1of 93

ISO 20022 Mess Message description ISO15022 Equivalent if relevant

sese 032.001.05 Securities Settlement Transaction Generation Notification MT548 (Instruction creation)
sese 023.001.05 Securities Settlement Transaction Instruction MT54X (NEWM)
sese 020.001.04 Securities Settlement Cancellation Request MT54x (CANC) , MT578 (CANC)
sese 030.001.05 Securities Settlement Condition Modification Request MT530
sese 025.001.05 Securities Settlement Transaction Confirmation MT54Y
sese 033.001.05 Securities Financing Instruction MT541 (REPO), MT543 (REPO)
sese 034.001.04 Securities Financing Status Advice MT548 (REPO)
sese 024.001.05 Securities SettlementTransaction Status Advice MT548 Transaction status advice
sese 027.001.03 Securities Transaction Cancellation Request Status Advice MT548 Cancellation request status advic
sese 031.001.05 Securities Settlement Condition Modification Status Advice MT548 Modification request status advice
semt 001.001.02 Securities Message Rejection MT548 Message rejection
sese 028.001.04 Securities Settlement Transaction Allegement Notification MT578 (NEWM)
sese 029.001.03 Securities Settlement Allegement Removal Advice MT578 (REMO)
semt 019.001.03 Securities Settlement Transaction Allegement Report MT586
semt.002.001.05 Custody Statement Of Holdings MT535
semt 017.001.05 Securities Transaction Posting Report MT536
semt 018.001.05 Securities Transaction Holdings Report MT537
seev 031.001.05 Corporate Action Notification MT564 (NEWM)
seev 039.001.05 Corporate Action Cancellation Advice MT564 (CANC)
seev.035.001.05 Corporate Action Movement Preliminary Advice MT564 (REPE)
seev.033.001.05 Corporate Action Instruction MT565 (NEWM)
seev.040.001.05 Corporate Action Instruction Cancellation Request MT565 (CANC)
seev 036.001.05 Corporate Action Movement Confirmation MT566 (NEWM)
seev.037.001.05 Corporate Action Movement Reversal Advice MT566 (REVR)
seev.034.001.05 Corporate Action Instruction Status Advice MT567 (INST)
seev.041.001.04 Corporate Action Instruction Cancellation Request Status AdvMT567 (CAST)
seev 038.001.03 Corporate Action Narrative MT568
/ / MT508
/ / MT524
reda.009.001.01 SecurityReportV01 -
​reda.017.001.01 ​PartyReportV01 -
​reda.021.001.01 ​SecuritiesAccountReportV01 -
Functional Area Impact T2S Requirement
Settlement Generation of SCI Yes
Settlement Creation of SCI Yes
Settlement Cancellation of SCI Yes
Settlement Amendement of SCI Yes
Settlement Settle SCI Yes
Settlement Creation of SCI Yes
Settlement Status update SCI Yes
Settlement Status update SCI Yes
Settlement Status update SCI Yes
Settlement Status update SCI Yes
Settlement Status update SCI Yes
Settlement Creation of allegement Yes
Settlement Update of allegement Yes
Settlement Statement of allegement Yes
Statement Statement of holding Yes
Statement Statement of Settled transaction Yes
Statement Statement of Holdings transaction Yes
Corporate Action Create CA No
Corporate Action Cancel
triggers CA
a process of reconciliation between internally calculated No
Corporate Action entitlements and the ones received from market. No
Corporate Action Create instruction No
Corporate Action Cancel instruction No
Corporate Action Create Market Payment No
Corporate Action Reverse payment No
Corporate Action Out: message reporting an instruction status (Accepted; Rejected; ifNo
Corporate Action Out: message reporting a Cancellation request. No
Corporate Action Narrative No
Settlement No
Settlement No
Static Data
Static Data
Static Data
Status Responsible
Not implemented Fadoua
Mapping exist in MegaBroker but the message is outdated Yasser
Mapping exist in MegaBroker but the message is outdated Yasser
Mapping exist in MegaBroker but the message is outdated Ibtissem
Mapping exist in MegaBroker but the message is outdated Ibtissem
Not implemented Yasser
Not implemented Ibtissem
Mapping exist in MegaBroker but the message is outdated Ibtissem
Not implemented Ibtissem
Not implemented Ibtissem
Not implemented Ibtissem
Mapping exist in MegaBroker but the message is outdated Fadoua
Not Implemented Fadoua
Not implemented Fadoua
Mapping exist in MegaBroker but the message is outdated Yasser
Mapping exist in MegaBroker but the message is outdated Yasser
Mapping exist in MegaBroker but the message is outdated Yasser
Mapping exist in MegaBroker but the message is outdated Nadia
Not implemented Nadia
Not implemented Nadia
Mapping exist in MegaBroker but the message is outdated Fadoua
Not implemented Fadoua
Mapping exist in MegaBroker
Not implemented: MT566 REVRbutisthe
notmessage is MegaCor
impacting outdated process. When received, it is just throwing an alert Nadia
in MegaCor Nadia
Mapping exist in MegaBroker but the message is outdated Fadoua
Not implemented Fadoua
Not implemented Fadoua
Not implemented Ali
Not implemented Ali
Ali
Must Have Release Progress Estimation Expected delivery date
IN Megara 10.7 90%
OUT Megara 10.7 100%
OUT Megara 10.7 0% 0.25 8/29/2014
OUT Megara 10.8 80% 0.75 9/5/2014
IN Megara 10.7 100%
OUT Megara 10.7 100%
IN Megara 10.7 0% 0.5 9/5/2014
IN Megara 10.7 60% 0.75 8/29/2014
IN Megara 10.7 90% 0.5 9/5/2014
IN Megara 10.7 0% 0.75 9/5/2014
IN Megara 10.7 0% 0.5 9/5/2014
IN Megara 10.7 100% 0.75 8/26/2014
IN Megara 10.7 100% 0.25 8/26/2014
IN Megara 10.8 80% 0.5 8/29/2014
IN Megara 10.7 0% 1 8/29/2014
IN Megara 10.7 0% 1 8/29/2014
IN Megara 10.7 0% 1 8/29/2014
IN / OUT (Version 10.8) Megara 10.8 0% 2 8/29/2014
IN / OUT (Version 10.8) Megara 10.8 0% 0.25 8/29/2014
IN / OUT (Version 10.8) Megara 10.8 0% 0.5 8/29/2014
IN / OUT (Version 10.8) Megara 10.8 100% 0.75 4188000%
IN / OUT (Version 10.8) Megara 10.8 100% 0.25 4188000%
IN / OUT (Version 10.8) Megara 10.8 0% 1 8/29/2014
IN / OUT (Version 10.8) Megara 10.8 0% 0.5 8/29/2014
IN / OUT (Version 10.8) Megara 10.8 100% 0.25 4188000%
IN / OUT (Version 10.8) Megara 10.8 100% 0.25 4188000%
IN / OUT (Version 10.8) Megara 10.8 90% 0.25 8/29/2014
IN / OUT (Version 10.8) Megara 10.8 0% 0.5 /
IN / OUT (Version 10.8) Megara 10.8 0% 0.5 /
IN / OUT (Version 10.8) Megara 10.8 0% 0.75 9/5/2014
IN / OUT (Version 10.8) Megara 10.8 0%
IN / OUT (Version 10.8) Megara 10.8 0%
ISO 15022
Message Message Type
MT540 NEWM
MT540 CANC
MT540 PREA
MT541 NEWM
MT541 CANC
MT541 PREA
MT541 REPO
MT542 NEWM
MT542 CANC
MT542 PREA
MT543 NEWM
MT543 CANC
MT543 PREA
MT543 REPO
MT544
MT546
MT545
MT547
/
MT548 Transaction status advice
MT548 Cancellation request status advice
MT548 Modification request status advice
MT548 Message rejection
MT548 REPO
MT578 NEWM
MT578 CANC
MT578 REMO
/
ISO 20022
Message Message Type
total number of SWIFT enabled customers using your application. FREE, RECE
Securities SettlementCancellation Request (sese 020.001.04) FREE, RECE
Securities SettlementCondition Modification Request (sese 030.001.05)
SecuritiesSettlementTransactionInstructionV05 (sese 023.001.05) APMT, RECE
Securities SettlementCancellation Request (sese 020.001.04) APMT, RECE
Securities SettlementCondition Modification Request (sese 030.001.05)
Securities Financing Instruction (sese 033.001.05)
SecuritiesSettlementTransactionInstructionV05 (sese 023.001.05) FREE, DELI
Securities SettlementCancellation Request (sese 020.001.04) FREE, DELI
Securities SettlementCondition Modification Request (sese 030.001.05)
SecuritiesSettlementTransactionInstructionV05 (sese 023.001.05) APMT, #=0
Securities SettlementCancellation Request (sese 020.001.04) APMT, #=0
Securities SettlementCondition Modification Request (sese 030.001.05)
Securities Financing Instruction (sese 033.001.05)

Securities Settlement Transaction Confirmation (sese 025.001.05)

SecuritiesSettlementTransactionGenerationNotification (sese.032.001.05)
Securities SettlementTransaction Status Advice (sese 024.001.05)
Securities Transaction Cancellation Request Status Advice (sese 027.001.03)
Securities SettlementCondition Modification Status Advice (sese 031.001.05)
Securities Message Rejection (semt 001.001.02)
Securities Financing Status Advice (sese 034.001.04)
Securities SettlementTransaction Allegement Notification (sese 028.001.04)
Securities MessageCancellation Advice (semt 020.001.04)
Securities SettlementAllegement Removal Advice (sese 029.001.03)
Securities Settlement Transaction Allegement Report (semt 019.001.03)
ISO 15022 ISO 20022
Message Message
MT535 Statement of holdings Custody Statement Of Holdings (semt 002.001.07)
MT536 Statement of transactions Securities Transaction Posting Report (semt 017.001.05)

MT537 Statement of Holdings transacti Securities Transaction Holdings Report (semt 018.001.05)
ISO 15022 ISO 20022
Message Message Type Message
MT564 NEWM Corporate Action Notification (seev 031.001.05)
MT564 CANC Corporate Action Cancellation Advice (seev 039.001.05)
MT564 REPE CorporateActionMovementPreliminaryAdvice (seev.035.001.05 )
MT565 NEWM CorporateActionInstructionV05 (seev.033.001.05)
MT565 CANC CorporateActionInstructionCancellationRequestV05 (seev.040.001.05)
MT566 NEWM Corporate Action Movement Confirmation (seev 036.001.05)
MT566 REVR CorporateActionMovementReversalAdviceV05 (seev.037.001.05)
MT567 (OUT) INST CorporateActionInstructionStatusAdviceV05 (seev.034.001.05)
MT567 (OUT) CAST CorporateActionInstructionCancellationRequestStatusAdviceV04 (seev.041.001.04)
MT568 NEWM Corporate Action Narrative (seev 038.001.03)
SCI Creation
List of messages:

sese 023.001.05
sese 033.001.05

className=com.vermeg.services.clearingInst.inst.SimpleClientInstructi
Megara
<TxId>clientReference</TxId> sese 023.001.05
clientReference
<SctiesSttlmTxInstr>
<SttlmTpAndAddtlParams>

<SctiesMvmntTp>SettlementNature</SctiesMvmntTp>
<Pmt>settlementMode</Pmt>
</SttlmTpAndAddtlParams>

transactionType
client <Id>clientSecAccount</Id>
</SfkpgAcct>
clientSecAccount </QtyAndAcctDtls>
</CshAcct>
clientCashAcc </QtyAndAcctDtls>
clientCashAccCurrency
tradableAsset <ISIN>tradableAsset.isin</ISIN>
tradableAsset.isin </FinInstrmId>
tradableAsset.description
settlementCurrency <SctiesSttlmTxInstr>
<SttlmAmt>
<AcrdIntrstInd>true</AcrdIntrstInd>
<Amt Ccy="GBP">4047151.3</Amt>
<CdtDbtInd>DBIT</CdtDbtInd>
</SttlmAmt>
</Qty>
incomingQuantity </SttlmQty>
<Qty>
incomingQuantityType
<FaceAmt>4000000</FaceAmt>
<Unit>4000000</Unit>
</Qty>
</SttlmQty>
<Dt>tradeDateYYYY-MM-DD</Dt>
tradeDate </Dt>
</TradDt>
<Dt>settlementDateYYYY-MM-DD</Dt>
settlementDate </Dt>
</SttlmDt>
<Id>
<AnyBIC>BICPlaceOfSettlement</AnyBIC>
</Id>
placeOfSettlement </Dpstry></RcvgSttlmPties>
custodian
nostroSecAccount
nostroCashAccount
counterpart
beneficiary
beneficiarySecAccount
price
comment
applyMarketFees
applyCommunicationFees
applyTransactionFees
marketFees
communicationFees
transactionFees
grossAmount
<AcrdIntrstInd>true</AcrdIntrstInd>
settlementAmount <Amt Ccy="GBP">settlementAmount</Amt>
<CdtDbtInd>DBIT</CdtDbtInd>
</SttlmAmt>
netAmount
<Id>
counterpartSettChain.settChainParty.settPartyType <AnyBIC>BICPlaceOfSettlement</AnyBIC>
</Id>
</Dpstry></RcvgSttlmPties>
counterpartSettChain.settChainParty.defaultSettPartyId
counterpartSettChain.settChainParty.account </Dpstry>
counterpartSettChain.settChainParty.bIC </RcvgSttlmPties>
counterpartSettChain.settChainParty.nameAndAddress
counterpartSettChain.settChainParty.dataSourceScheme
counterpartSettChain.settChainParty.proprietaryCode
counterpartSettChain.settChainParty.countryCode
counterpartSettChain.settChainParty.narrativeType
counterpartSettChain.settChainParty.narrative
<AnyBIC>BICReceivingAgent</AnyBIC>
</Id>
</Pty1>
counterpartSettChain.settChainParty.settPartyType </RcvgSttlmPties>
counterpartSettChain.settChainParty.defaultSettPartyId </SfkpgAcct>
counterpartSettChain.settChainParty.account </Pty1>
</RcvgSttlmPties>
</Pty1>
counterpartSettChain.settChainParty.bIC </RcvgSttlmPties>
counterpartSettChain.settChainParty.nameAndAddress
counterpartSettChain.settChainParty.dataSourceScheme
counterpartSettChain.settChainParty.proprietaryCode
counterpartSettChain.settChainParty.countryCode
counterpartSettChain.settChainParty.narrativeType
counterpartSettChain.settChainParty.narrative
<AnyBIC>BICDeliveringAgent</AnyBIC>
counterpartSettChain.settChainParty.settPartyType </Id>
</Pty1>
</DlvrgSttlmPties>
counterpartSettChain.settChainParty.defaultSettPartyId </SfkpgAcct>
counterpartSettChain.settChainParty.account </Pty1>
</DlvrgSttlmPties>
</Pty1>
counterpartSettChain.settChainParty.bIC </DlvrgSttlmPties>
counterpartSettChain.settChainParty.nameAndAddress
counterpartSettChain.settChainParty.dataSourceScheme
counterpartSettChain.settChainParty.proprietaryCode
counterpartSettChain.settChainParty.countryCode
counterpartSettChain.settChainParty.narrativeType
counterpartSettChain.settChainParty.narrative
additionalData.settDetailsIndicators.setDetQualifier <Cd>TRAD</Cd>
additionalData.settDetailsIndicators.setDetIndicator </SctiesTxTp>
</SttlmParams>
entInstruction
1.05 sese 033.001.05
<SctiesFincgInstr>
Use TransactionTypeSLA to find the appropriate <TxId>ClientReference</TxId>
<SctiesFincgInstr>
tansactionType. The context should include <TxTpAndAddtlParams>
- settlement nature <SctiesFincgTxTp>SettlementNature</SctiesFincgTxTp>
(<SttlmTpAndAddtlParams><SctiesMvmntTp>) <Pmt>settlementMode</Pmt>
- settlement mode </TxTpAndAddtlParams>
(<SttlmTpAndAddtlParams><Pmt>)
- Contract type (<SctiesTxTp><Cd>)

Autopopulated (no changes)


- clientSecAccount between balise <SctiesFincgInstr>
<SfkpgAcct><Id> <QtyAndAcctDtls>
-If empty => Autopopulated (no changes) <SfkpgAcct>
Autopopulated (no changes)
Identifier of the tradableAsset.isin <ISIN>tradableAsset.isin</ISIN>
tradableAsset.isin </FinInstrmId>
Description of the tradableAsset.isin
Use the balise <Amt Ccy ="Currency"> for <SctiesFincgInstr>
settlement currency <OpngSttlmAmt>
<Amt Ccy="EUR">9900000</Amt>
<CdtDbtInd>CRDT</CdtDbtInd>
</OpngSttlmAmt>

Incoming Quantity between the balise <Qty> <SctiesFincgInstr>


<Qty>
- If balise <FaceAmt> is used then quantity type is <QtyAndAcctDtls>
<FaceAmt>4000000</FaceAmt>
FAMT
<Unit>4000000</Unit>
- If balise <Unit> is used then quantity type is Unit
</Qty>
</SttlmQty>
<Dt>tradeDateYYYY-MM-DD</Dt>
- Use the date between the balise <TradDt> </Dt>
- The format is YYYY-MM-DD </TradDt>
- Use the date between the balise <SttlmDt> <SctiesSttlmTxInstr>
- The format is YYYY-MM-DD <TradDtls>
<Id>
<OpngSttlmDt>
Autopopulated From the BIC received between <AnyBIC>BICPlaceOfSettlement</AnyBIC>
this balise <Dpstry><Id><AnyBIC> </Id>
</Dpstry>
Autopopulated
Autopopulated
Autopopulated
Calculated (No changes)

Calculated (No changes)


Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
SettlementAmount should be populated form the <SctiesFincgInstr>
balise (<SttlmAmt><Amt <OpngSttlmAmt>
Ccy="GBP">settlementAmount</Amt> <Amt Ccy="EUR">9900000</Amt>
<CdtDbtInd>CRDT</CdtDbtInd>
<Id>
- <Dpstry> correspond to the Place of settlement <AnyBIC>BICPlaceOfSettlement</AnyBIC>
in the settlement chain. </Id>
=> Place Of Settlement </Dpstry></RcvgSttlmPties>
- The value for T2S messages is BIC
</Dpstry>
- BICPlaceOfSettlement </RcvgSttlmPties>

<AnyBIC>BICReceivingAgent</AnyBIC>
- If there is <RcvgSttlmPties> + <Pty1> then </Id>
settPartyType is: </Pty1>
=> ReceivingAgent </RcvgSttlmPties>
- The value for T2S messages is BIC </SfkpgAcct>
- The account is between the balise <Pty1> </Pty1>
<SfkpgAcct> <Id>Account </RcvgSttlmPties>
</Pty1>
- BICReceivingAgent </RcvgSttlmPties>

<AnyBIC>BICDeliveringAgent</AnyBIC>
- If there is <DlvrgSttlmPties> + <Pty1> then </Id>
settPartyType is: </Pty1>
=> DeliveringAgent </DlvrgSttlmPties>
- The value for T2S messages is BIC </SfkpgAcct>
- The account is between the balise <Pty1> </Pty1>
<SfkpgAcct> <Id>Account </DlvrgSttlmPties>
</Pty1>
BICDeliveringAgent </DlvrgSttlmPties>
- The value of setDetIndicator is defined in the
balise <SttlmParams><SctiesTxTp> <Cd>
33.001.05

Use TransactionTypeSLA to find the appropriate


tansactionType. The context should include
- settlement nature
(<TxTpAndAddtlParams><SctiesFincgTxTp>)
- settlement mode (<TxTpAndAddtlParams><Pmt>)

Autopopulated (no changes)


- clientSecAccount between balise <SfkpgAcct><Id>

-If empty => Autopopulated (no changes)


Autopopulated (no changes)
Identifier of the tradableAsset.isin

Description of the tradableAsset.isin


Use the balise <Amt Ccy ="Currency"> for settlement
currency

Incoming Quantity between the balise <Qty> <Amt Ccy="EUR">9900000</Amt>


- If balise <FaceAmt> is used then quantity type is FAMT
- If balise <Unit> is used then quantity type is Unit

<CdtDbtInd>CRDT</CdtDbtInd>
- Use the date between the balise <TradDt>
- The format is YYYY-MM-DD </OpngSttlmAmt>
- Use the date between the balise <SttlmDt>
- The format is YYYY-MM-DD
Autopopulated From the BIC received between this balise
<Dpstry><Id><AnyBIC>

Autopopulated <Dpstry>
Autopopulated <Id>
Autopopulated
</Id>
</Dpstry>

Calculated (No changes)

Calculated (No changes)


Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
SettlementAmount should be populated form the balise
(<SttlmAmt><Amt Ccy="GBP">settlementAmount</Amt>

- <Dpstry> correspond to the Place of settlement in the


settlement chain.
=> Place Of Settlement
- The value for T2S messages is BIC

- BICPlaceOfSettlement

- If there is <RcvgSttlmPties> + <Pty1> then settPartyType


is:
=> ReceivingAgent
- The value for T2S messages is BIC
- The account is between the balise <Pty1> <SfkpgAcct>
<Id>Account
- BICReceivingAgent

- If there is <DlvrgSttlmPties> + <Pty1> then


settPartyType is:
=> DeliveringAgent
- The value for T2S messages is BIC
- The account is between the balise <Pty1> <SfkpgAcct>
<Id>Account
BICDeliveringAgent
<AnyBIC>NCSDXX21</AnyBIC>
Cancellation Request

Source Mapping from


<Id> sese.020.001.02
<Id>
<Dtls>
<AcctOwnrTxId>
When the message number is sese.020, the field MsgFunction at the level
of the notification should be filled with the value "CANC".
<SctiesSttlmTxId>
</SctiesSttlmTxId>
<SctiesMvmntTp>DELI</SctiesMvmntTp>
<Id>SfkpgAcct</Id>
</SfkpgAcct>
</FinInstrmId>
<ISIN>ISIN00000001</ISIN>
</FinInstrmId>
<TxDtls>
</Qty>
<SttlmAmt>
</SttlmQty>
</Qty>
</SttlmQty>
</Dt>
</TradDt>
</Dt>
</SttlmDt>
<Id>

<CdtDbtInd>CRDT</CdtDbtInd>
</SttlmAmt>
Mapping from sese.020.001.02 to Instruction notification
Message item definition
Unique identifier of the document (message) assigned by the sender of the document.
Unambiguous identification of the transaction as known by the account owner (or the instructing party managing the

Specifies how the transaction is to be settled, for example, against payment.


Specifies if the movement on a securities account results from a deliver or a receive instruction.
Account to or from which a securities entry is made.
Financial instruments representing a sum of rights of the investor vis-a-vis the issuer.

Date expressed as a ISO date.


Date expressed as a ISO date.
Target
com.vermeg.services.settlementNotification.clearingSwift.Instruction
messageReference
linkedMsgRef
MsgFunction
<Pmt>APMT</Pmt> and <CdtDbtInd>CRDT</CdtDbtInd> then the field settlementMode=="ReceivePayment"
<Pmt>APMT</Pmt> and <CdtDbtInd>DEBT</CdtDbtInd> then the field settlementMode=="DeliverPayment"
settlement nature
clientSecAccount
tradableAssetCode
iSIN
settlementCurrencyCode
incomingQuantity
incomingQuantityType
tradeDate
settlementDate
Depending on the settlement nature (Receive or Deliver), the value od the balise "Dpstry" should be mapped in the field
"placeOfSettlement".
custodian
nostroSecAccount
nostroCashAccount
counterpart
beneficiary
beneficiarySecAccount
price
settlementAmount
c

Source Mapping from sese.027.001.02 t


sese.027.001.02
<Id>
<CxlReqRef>

<SctiesMvmntTp>
<Pmt>
<PrcgSts>
<PdgCxl>
<Cd>

<TxDtls>
<AcctOwnr>
<TxDtls>
<TxDtls>
<SfkpgAcct>
<FinInstrmId>
<ISIN>
<TxDtls>
<SttlmQty>
<TxDtls>
<SttlmAmt>
<TradDt>
<SttlmDt>
Mapping from sese.027.001.02 to SettlementStatusAndProcessingAdvice notification
Message item defintion
Unique identifier of a document.
Reference to the unambiguous identification of the cancellation request as per the account owner.

Specifies if the movement on a securities account results from a deliver or a receive instruction.
Specifies how the transaction is to be settled, for example, against payment.
Provides details on the processing status of the request.
The cancellation is pending processing.
Specifies the reason why a cancellation request sent for the related instruction is pending.
Party that legally owns the account.
Account to or from which a securities entry is made.
Financial instruments representing a sum of rights of the investor vis-a-vis the issuer.
International Securities Identification Number (ISIN). A numbering system designed by the United Nation's International
Organisation
Total quantityfor
of Standardisation (ISO). The ISIN is composed of a 2-character prefix representing the country of issue
securities to be settled.
Total amount of money to be paid or received in exchange for the securities.
Specifies the date/time on which the trade was executed.
Date and time at which the securities are to be delivered or received.
ification Target
om.vermeg.services.settlementNotification.clearingSwift.SettlementStatusAndProcessingAdvice
messageReference
linkedMsgRef
MsgFunction
settlement mode
settlement nature
status.messageStatus
status.msgStatusCodeWord
status.Reason.msgReasonCodeWord
Client
ClientsecAccount
tradableAsset
Isin
incomingQuantity
settlementAmount
tradeDate
settlementDate
nostroSecAccount
nostroCashAccount
counterpart
beneficiary
beneficiarySecAccount
Hold/Release Request

Source Mapping from MT530 to Transaction processing co


MT530 Message item definition
20C Reference assigned by the Sender to unambiguously identify the messag
23G Function of the message.
97a Account where financial instruments are maintained.
95a Party that legally owns the account

Mandatory Repetitive
Optional Repetitive Sequence BB1
Subsequence Request
Linkages

Source Mapping from sese.030.001.02 to Instruction


sese.030.001.02
<SctiesSttlmCondsModReq> Message item definition
<Id>...</Id> Reference assigned by the Sender to unambiguously identify the messag
Function of the message.
<SctiesSttlmCondsModReq><AcctOwnr> Party that legally owns the account
<AnyBIC>PRTYBBICXXX</AnyBIC>
<SctiesSttlmCondsModReq>
<SfkpgAcct>
<Id>222S</Id>
</SfkpgAcct>
Account where financial instruments are maintained.
<AcctOwnrTxId>FRTJ123REC2</AcctOwnrTxId>securities settlement condition modification is
</Ref> requested.
cessing command notification Target
com.vermeg.services.settlementNotification.clearingSwift.transactionProcessingCommand
messageReference
msgFunction
securitiesAccount
client
22F: IndicatorCodeWord

Instruction notification Target


com.vermeg.services.settlementNotification.clearingSwift.transactionProcessingCommand
messageReference
msgFunction
client

securitiesAccount
Settlement instruction rejection

Mapping from semt.001.001.02 to SettlementStat


Source
semt.001.001.02
<MsgId>
<Id>SecMsgReject001</Id>
<RltdRef>
<Ref>TrsfrINCxlIns001</Ref>
<RltdRef>
<MsgNm>sese.006.001.02</MsgNm>
<Rsn>
<Rsn>REFE</Rsn>
Mapping from semt.001.001.02 to SettlementStatusAndProcessingAdvice notification
Message item defintion
Unique identifier of a document.
Reference of the message previously sent and that will be rejected.
Message type number or message identifier of the message referenced in the related reference.
Rejection reason.
e notification
Target
com.vermeg.services.settlementNotification.clearingSwift.SettlementStatusAndProcessingAdvice
messageReference
linkedMsgRef
linkedMsgNbr
Settlement confirmation
List of messages:

sese 025.001.05

Megara
sese 023.001.05
clientReference
transactionType <TxIdDtls>
client
<AcctOwnrTxId>FRTJ123REC2</AcctOwnrTxId>
clientSecAccount
clientCashAcc
clientCashAccCurrency
tradableAsset <ISIN>GB0987654321</ISIN>
tradableAsset.isin </FinInstrmId>
tradableAsset.description <SttldAmt>
settlementCurrency <Amt
</Qty>Ccy="GBP">4047151.3</Amt>
incomingQuantity </SttldQty>
</Qty>
incomingQuantityType </SttldQty>
</Dt>
tradeDate </TradDt>
</Dt>
settlementDate </SttlmDt>
</Dt>
realSettlementDate </FctvSttlmDt>
</Id>
placeOfSettlement </Dpstry></RcvgSttlmPties>
custodian <Id>222S</Id>
nostroSecAccount </SfkpgAcct>
<Id>222S</Id>
nostroCashAccount </CshAcct>
counterpart
beneficiary
beneficiarySecAccount
price
comment
applyMarketFees
applyCommunicationFees
applyTransactionFees
marketFees
communicationFees
transactionFees
grossAmount <SttldAmt>
settlementAmount <Amt Ccy="GBP">4047151.3</Amt>
<SttldAmt>
Amount sign <CdtDbtInd>DBIT</CdtDbtInd>
netAmount </Id>
counterpartSettChain.settChainParty </Dpstry></RcvgSttlmPties>
counterpartSettChain.settChainParty.defaultSettPartyId
counterpartSettChain.settChainParty.account
</Dpstry>
counterpartSettChain.settChainParty</RcvgSttlmPties>
counterpartSettChain.settChainParty.nameAndAddress
counterpartSettChain.settChainParty.dataSourceScheme
counterpartSettChain.settChainParty.proprietaryCode
counterpartSettChain.settChainParty.countryCode
counterpartSettChain.settChainParty.narrativeType
counterpartSettChain.settChainParty.narrative
</Pty1>
counterpartSettChain.settChainParty </RcvgSttlmPties>
counterpartSettChain.settChainParty.defaultSettPartyId
</Pty1>
counterpartSettChain.settChainParty </RcvgSttlmPties>
</Pty1>
counterpartSettChain.settChainParty</RcvgSttlmPties>
counterpartSettChain.settChainParty.nameAndAddress
counterpartSettChain.settChainParty.dataSourceScheme
counterpartSettChain.settChainParty.proprietaryCode
counterpartSettChain.settChainParty.countryCode
counterpartSettChain.settChainParty.narrativeType
counterpartSettChain.settChainParty.narrative
</Pty1>
counterpartSettChain.settChainParty </DlvrgSttlmPties>
counterpartSettChain.settChainParty.defaultSettPartyId
</Pty1>
counterpartSettChain.settChainParty </DlvrgSttlmPties>
</Pty1>
counterpartSettChain.settChainParty </DlvrgSttlmPties>
counterpartSettChain.settChainParty.nameAndAddress
counterpartSettChain.settChainParty.dataSourceScheme
counterpartSettChain.settChainParty.proprietaryCode
counterpartSettChain.settChainParty.countryCode
counterpartSettChain.settChainParty.narrativeType
counterpartSettChain.settChainParty.narrative
additionalData.settDetailsIndicators.setDetQualifier
</SctiesTxTp>
additionalData.settDetailsIndicators. </SttlmParams>
sese 023.001.05

Identifier of the tradableAsset.isin


tradableAsset.isin
Description of the tradableAsset.isin
Use the balise <Amt Ccy ="Currency">to deduce the settlement currency.
Incoming Quantity between the balise <Qty>
- If balise <FaceAmt> is used then quantity type is FAMT
-- If balise
Use the <Unit> is usedthe
date between then quantity
balise type is UNIT
<TradDt>
-- The
Use format
the dateis between
YYYY-MM-DD
the balise <SttlmDt>
- The format is YYYY-MM-DD
Autopopulated From the BIC received between this balise <Dpstry><Id><AnyBIC>
Autopopulated

Calculated (No changes)

Calculated (No changes)


Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
SettlementAmount should be populated form the balise (<SttlmAmt><Amt
Ccy="GBP">settlementAmount</Amt>
This field doesn't exist actually in the clearing instruction.

- <Dpstry> correspond to the Place of settlement in the settlement chain.


=> Place
- The Offor
value Settlement
T2S messages is BIC

- BICPlaceOfSettlement
- If there is <RcvgSttlmPties> + <Pty1> then settPartyType is:
=>
- TheReceivingAgent
value for T2S messages is BIC
- The account is between the balise <Pty1> <SfkpgAcct> <Id>Account
- BICReceivingAgent

- If there is <DlvrgSttlmPties> + <Pty1> then settPartyType is:


=>
- TheDeliveringAgent
value for T2S messages is BIC
- The account is between the balise <Pty1> <SfkpgAcct> <Id>Account
BICDeliveringAgent

- The value of setDetIndicator is defined in the balise <SttlmParams><SctiesTxTp> <Cd>


Instruction status update

Megara
sese 024.001.05
clientReference
transactionType <TxDtls>
client
<SctiesMvmntTp>RECE</SctiesMvmntTp>
clientSecAccount
clientCashAcc
clientCashAccCurrency
tradableAsset
<ISIN>GB0987654321</ISIN>
tradableAsset.isin </FinInstrmId>
tradableAsset.description
settlementCurrency <SttlmAmt>
</Qty>
incomingQuantity <Amt Ccy="GBP">4047151.3</Amt>
</SttlmQty>
incomingQuantityType <SttlmQty>
tradeDate <Qty>
<TxDtls>
</Dt>
settlementDate <TradDt>
</SttlmDt>
</Id>
placeOfSettlement </Dpstry>
custodian <Id>222S</Id>
nostroSecAccount </SfkpgAcct>
nostroCashAccount
counterpart
beneficiary
beneficiarySecAccount
price
comment
applyMarketFees
applyCommunicationFees
applyTransactionFees
marketFees
communicationFees
transactionFees
grossAmount <SttlmAmt>
settlementAmount <Amt Ccy="GBP">4047151.3</Amt>
Amount sign
netAmount </Id>
counterpartSettChain.settChainParty.sett </Dpstry></RcvgSttlmPties>
counterpartSettChain.settChainParty.defaultSettPartyId
counterpartSettChain.settChainParty.account </Dpstry>
counterpartSettChain.settChainParty.bIC </RcvgSttlmPties>
counterpartSettChain.settChainParty.nameAndAddress
counterpartSettChain.settChainParty.dataSourceScheme
counterpartSettChain.settChainParty.proprietaryCode
counterpartSettChain.settChainParty.countryCode
counterpartSettChain.settChainParty.narrativeType
counterpartSettChain.settChainParty.narrative</Pty1>
counterpartSettChain.settChainParty.sett </RcvgSttlmPties>
counterpartSettChain.settChainParty.defaultSettPartyId
</Pty1>
counterpartSettChain.settChainParty.acco </RcvgSttlmPties>
</Pty1>
counterpartSettChain.settChainParty.bIC </RcvgSttlmPties>
counterpartSettChain.settChainParty.nameAndAddress
counterpartSettChain.settChainParty.dataSourceScheme
counterpartSettChain.settChainParty.proprietaryCode
counterpartSettChain.settChainParty.countryCode
counterpartSettChain.settChainParty.narrativeType
counterpartSettChain.settChainParty.narrative</Pty1>
counterpartSettChain.settChainParty.sett </DlvrgSttlmPties>
counterpartSettChain.settChainParty.defaultSettPartyId
</Pty1>
counterpartSettChain.settChainParty.acco </DlvrgSttlmPties>
</Pty1>
counterpartSettChain.settChainParty.bIC </DlvrgSttlmPties>
counterpartSettChain.settChainParty.nameAndAddress
counterpartSettChain.settChainParty.dataSourceScheme
counterpartSettChain.settChainParty.proprietaryCode
counterpartSettChain.settChainParty.countryCode
counterpartSettChain.settChainParty.narrativeType
counterpartSettChain.settChainParty.narrative
additionalData.settDetailsIndicators.setDetQualifier </SctiesTxTp>
additionalData.settDetailsIndicators.setDe </SttlmParams>
sese 024.001.05

The transaction type is deduced from the settlement mode and settlement nature and also the sign
of the settlement

Identifier of the tradableAsset.isin


tradableAsset.isin
Description of the tradableAsset.isin
Use the balise <Amt Ccy ="Currency"> for settlement currency
Incoming Quantity between the balise <Qty>
- If balise <FaceAmt> is used then quantity type is FAMT
-- If balise
Use the <Unit> is usedthe
date between then quantity
balise type is UNIT
<TradDt>
-- The
Use format
the dateis between
YYYY-MM-DD
the balise <SttlmDt>
- The format is YYYY-MM-DD

This field doesn't exist actually in the clearing instruction.

- <Dpstry> correspond to the Place of settlement in the settlement chain.


=> Place
- The Offor
value Settlement
T2S messages is BIC

- BICPlaceOfSettlement
- If there is <RcvgSttlmPties> + <Pty1> then settPartyType is:
=>
- TheReceivingAgent
value for T2S messages is BIC
- The account is between the balise <Pty1> <SfkpgAcct> <Id>Account
- BICReceivingAgent

- If there is <DlvrgSttlmPties> + <Pty1> then settPartyType is:


=>
- TheDeliveringAgent
value for T2S messages is BIC
- The account is between the balise <Pty1> <SfkpgAcct> <Id>Account
BICDeliveringAgent

- The value of setDetIndicator is defined in the balise <SttlmParams><SctiesTxTp> <Cd>


sese 033.001.05
<SctiesFincgInstr>
<TxId>ClientReference</TxId>
<SctiesFincgInstr> Use
Autopopulated
<TxTpAndAddtlParams> TransactionType
(no changes)
<SctiesFincgInstr> -
<QtyAndAcctDtls> clientSecAccoun
-If empty =>
Autopopulated
Autopopulated
(no changes)
tradableAsset.isi
<ISIN>tradableAsset.isin</ISIN> n
</FinInstrmId> tradableAsset.isi
n
<SctiesFincgInstr> Use the balise
<OpngSttlmAmt>
<SctiesFincgInstr> <Amt Ccy
Incoming
</Qty>
<QtyAndAcctDtls>
</SttlmQty> Quantity
- If balise
</Dt>
</TradDt> <FaceAmt>
- Use the dateis
<SctiesSttlmTxInstr></Id> between
- Use thethedate
<TradDtls>
</Dpstry> between the
Autopopulated
From the BIC
Autopopulated
Autopopulated
Autopopulated

Calculated (No
changes)
Calculated (No
changes)
Calculated (No
changes)
Calculated (No
changes)
Calculated (No
changes)
Calculated (No
changes)
Calculated (No
changes)
Calculated (No
changes)
<SctiesFincgInstr> SettlementAmou
<OpngSttlmAmt> nt should be

</Id>
</Dpstry></RcvgSttlmPties> -T2S
<Dpstry>
messages
correspond
is BIC to

</Dpstry>
</RcvgSttlmPties> -
BICPlaceOfSettl
</Pty1>
</RcvgSttlmPties> -T2S
If there is
messages
<RcvgSttlmPties
is BIC
</Pty1>
</RcvgSttlmPties>
</Pty1> - The account is
</RcvgSttlmPties> between
- the
BICReceivingAg

</Pty1>
</DlvrgSttlmPties> -T2S
If there is
messages
<DlvrgSttlmPties
is BIC
</Pty1>
</DlvrgSttlmPties>
</Pty1> - The account is
</DlvrgSttlmPties> between the
BICDeliveringAg
ent
SCI Generation
List of messages:

sese 032.001.05

className=com.vermeg.services.clearingInst.inst.SimpleClientInstructi
sese
Megara
Message
<TxIdDtls>
Reference (Mandatory) <AcctOwnrTxId>Reference???Max length 35</AcctOwnrTxId>

<TxIdDtls>
marketReference (optional) <MktInfrstrctrTxId>marketReference</MktInfrstrctrTxId>

<SctiesSttlmTxGnrtnNtfctn>
<TxIdDtls>
<SctiesMvmntTp>Settlement Nature</SctiesMvmntTp>
<Pmt>Settlement Mode</Pmt>
<CorpActnEvtId>related corporate action event</CorpActnEvtId>
transactionType </TxIdDtls>
<SctiesSttlmTxGnrtnNtfctn>
<TradDtls>
<TradDt>
<Dt><Dt>TradeDate</Dt></Dt>
</TradDt>
tradeDate </TradDtls>
<SctiesSttlmTxGnrtnNtfctn>
<TradDtls>
<SttlmDt>
<Dt><Dt>SettlementDate</Dt></Dt>
</SttlmDt>
settlementDate </TradDtls>
</DealPric>
price </TradDtls>

<SctiesSttlmTxGnrtnNtfctn>
<QtyAndAcctDtls>
<SttlmQty>
<Qty><FaceAmt>incomingQuantity</FaceAmt></Qty>
</SttlmQty>

incomingQuantity
nostroSecAccount
clientCashAccCurrency
tradableAsset <Desc>Description</Desc>
tradableAsset.isin </FinInstrmId>
<FinInstrmId>
tradableAsset.description <Desc>Description</Desc>
additionalData.settDetailsIndicators.setDetIndicator <SttlmParams>
<SctiesTxTp>
<Cd>Settlement details Indicator</Cd>
</SctiesTxTp>
</SttlmParams>

counterpartSettChain.settChainParty.settPartyType

<RcvgSttlmPties>
<Dpstry>
<Id><AnyBIC>BICPlaceOfSettlement</AnyBIC></Id>
</Dpstry>
<RcvgSttlmPties>
counterpartSettChain.settChainParty.settPartyType <Pty1>
<Id><AnyBIC>BICReceivingAgent</AnyBIC></Id>
</Pty1>
<Id><AnyBIC>BICBuyer</AnyBIC></Id>
Buyer </Pty2>
Buyer sec account <RcvgSttlmPties>
<Pty2>
<SfkpgAcct><Id>BuyerAccountId</Id></SfkpgAcct>
accruedInterestIndicator

<SttlmAmt>
<AcrdIntrstInd>true</AcrdIntrstInd>
</SttlmAmt>

<SttlmAmt>
settlementAmount <Amt Ccy="EUR">50850000</Amt>
<SttlmAmt>
amountSign (addition in process in megara) <CdtDbtInd>CRDT</CdtDbtInd>
custodian
nostroSecAccount
nostroCashAccount
counterpart
beneficiary
beneficiarySecAccount
price
comment
applyMarketFees
applyCommunicationFees
applyTransactionFees
marketFees
communicationFees
transactionFees
grossAmount
<AcrdIntrstInd>true</AcrdIntrstInd>
settlementAmount <Amt Ccy="GBP">settlementAmount</Amt>
<CdtDbtInd>DBIT</CdtDbtInd>
</SttlmAmt>
netAmount
entInstruction
sese 032.001.05
SettlementStatusAndProcessingAdvice Simple Client Instruction
<AcctOwnrTxId> is a mandatory reference but ???
rTxId> what kind of reference it is? to be reviewed
Market instruction reference is provided by T2S:
<MktInfrstrctrTxId>T2SREF0734</
MktInfrstrctrTxId>

Use TransactionTypeSLA to find the appropriate


tansactionType. The context should include
- settlement nature
(<SttlmTpAndAddtlParams><SctiesMvmntTp>)
- settlement mode
(<SttlmTpAndAddtlParams><Pmt>)
Use client instruction in order to determine

tnEvtId>

Date And Date Time Choice


Use the date between the balise <TradDt>
Use balise <DtTm> in order to specify time for
trade.

Date And Date Time Choice


Use the date between the balise <SttlmDt>
Use balise <DtTm> in order to specify time for
settlement.

* If balise <FaceAmt> is used then quantity type is


FAMT
* If balise <Unit> is used then quantity type is
UNIT
* If balise <AmtsdVal> is used then quantity type is
AMOR

Incoming Quantity between the balise <Qty>

Autopopulated (no changes)


Identifier of the tradableAsset.isin
tradableAsset.isin
Description of the tradableAsset.isin
Type of settlement transaction indicator. Info
mapped under Additional data related to a
respective client instruction
with values: TRAD; COLO; COLI...

- <Dpstry> correspond to the Place of settlement


in the settlement chain.
=> Place Of Settlement
- Autopopulated From the BIC received between
this balise <Dpstry><Id><AnyBIC>

- If there is <RcvgSttlmPties> + <Pty1> then


settPartyType is:
=> ReceivingAgent

- The account is between the balise <Pty1>


<SfkpgAcct> <Id>Account
<SfkpgAcct><Id>AccuntId</Id></SfkpgAcct>
not managed in MegaCustody. We have only the
following fields: accInterest (accrued interest
amount) and accInterestCurrency(accrued interest
currency)

settlement amount and Currency.


SettlementAmount should be populated form the
balise (<Amt Ccy="EUR">50850000</Amt>)

Credit/debit indicator ==> not yet managed.


Amount sign to be added
Autopopulated
Autopopulated
Autopopulated

Calculated (No changes)

Calculated (No changes)


Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
Calculated (No changes)
SettlementAmount should be populated form the
balise (<SttlmAmt><Amt
Ccy="GBP">settlementAmount</Amt>
messageReference

linkedMsgRef

MsgFunction

settlement mode
settlement nature

status.messageStatus
status.msgStatusCodeWord
status.Reason.msgReasonCodeWord
Client
ClientsecAccount
tradableAsset
Isin

incomingQuantity

settlementAmount

tradeDate

settlementDate

nostroSecAccount

nostroCashAccount

counterpart
beneficiary
beneficiarySecAccount
Allegement Creation

List of messages:

sese028.001.04

ClassName: com.vermeg.services.clearingInst.inst.Allegement

Megara
Message
<SctiesSttlmTxAllgmtNtfctn>
allegementReference <TxId>A4321BCD1SA1</TxId>
transactionType <SttlmTpAndAddtlParams>
<Dt><Dt>2010-01-05</Dt></Dt>
tradeDate <SctiesMvmntTp>DELI</SctiesMvmntTp>
</TradDt>
<Dt><Dt>2010-01-08</Dt></Dt>
settlementDate </SttlmDt>
<ISIN>GB0000054321</ISIN>
tradableAsset.ISIN </FinInstrmId>
</SttlmQty>
incomingQuantity
Nostro sec account <Cd>TRAD</Cd>
Settlement details indicator </SctiesTxTp>
</Id>
Place Of Settlement </Dpstry>
</PrtryId>
</Id>
Delivering Agent </Pty1>
issuer
<Id>
<AnyBIC>BICSeller</AnyBIC>
</Id>
seller </Pty2>
Receiving Agent
issuer
<AnyBIC>BuyerBIC</AnyBIC>
</Id>
</Pty2>
Buyer </RcvgSttlmPties>

<RcvgSttlmPties>
<Pty2>
<SfkpgAcct><Id>111S</Id></SfkpgAcct>
</Pty2>
Buyer account </RcvgSttlmPties>
End of the message
nt
sese028.001.04
SettlementAllegement Allegement
messageReference This field will contain the account servicer
transactionType (counterpart transaction type) message
Use reference
- UseTransactionTypeSLA
the date between thetobalise
find the appropriate
<TradDt>
tradeDate tansactionType. The context
- The format is YYYY-MM-DD should include
settlementDate
tradableAssetCode - Use the date between the balise <SttlmDt>
incomingQuantity & quantityType tradableAsset.isin
Incoming Quantity between the balise <Qty>
nostroSecAccountCode -nostro
If balise
sec<FaceAmt> is used then quantity type is
account information
??? <SfkpgAcct><Id>Nostro
- clientSecAccount between sec balise
placeOfSettlementCode <SfkpgAcct><Id>

counterPartCode
??? ???

Autopopulated From the BIC received between


beneficiary this balise <Dpstry><Id><AnyBIC>
Main entity (client custodian)
???

Autopopulated From the BIC received between


client this balise <AnyBIC>MGTCDE55</AnyBIC>

clientSecAccount between balise <SfkpgAcct><Id>


When settlement nature is deliver; (578 is received
from seller's custodian so the party to be alleged is
the buyer/ receiving agent which is megara client
ClientSecAccount and vice versa)
To be reviewed

To be reviewed
Update Allegement
List of messages:

sese 029.001.03

ClassName: com.vermeg.services.clearingInst.inst.Allegement
sese 029.001.03
Megara
Message
<TxId>allegement reference</TxId>
allegement Reference
<SctiesSttlmAllgmtRmvlAdvc>
<AcctSvcrTxId>
<TxId>accountServicerReference</TxId>
marketReference

<SctiesSttlmAllgmtRmvlAdvc>
<SctiesMvmntTp>DELI</SctiesMvmntTp>
<Pmt>FREE</Pmt>

transactionType <Id>222S</Id>
nostro sec account </SfkpgAcct>
<ISIN>GB0000054321</ISIN>
Tradable asset </FinInstrmId>
<TradDt>
<Dt><Dt>2010-01-05</Dt></Dt>
tradeDate </TradDt>
<SttlmDt>
<Dt><Dt>2010-01-08</Dt></Dt>
settlementDate </SttlmDt>

<TxDtls>
<SttlmQty>
<Qty><Unit>10000</Unit></Qty>
incomingQuantity and incomingQuantityType </SttlmQty>
</Id>
placeOfSettlement </Dpstry>
<PrtryId>
<Id>456</Id>

deliveringAgent identifier
issuerAgent <DlvrgSttlmPties>
<Pty1>
<Id>
<PrtryId>
<Issr>CRST</Issr>

Seller <DlvrgSttlmPties>
<Pty2>
<Id>
<AnyBIC>BICOfSeller</AnyBIC>
</Id>
</Pty2>
<Id>
Receiving agent identifier
<PrtryId>
<Id>123</Id>

<PrtryId>
issuerAgent <Issr>CRST</Issr>

Buyer (client)
<RcvgSttlmPties>
<Pty2>
<Id>
<AnyBIC>BICOfBuyer</AnyBIC>
</Id>

<Id>111S</Id>
Client sec account </SfkpgAcct>
</Pty2>
End Of Message
nt
1.03
SettlementAllegement Allegement
messageReference
account servicer reference
<TxId>A4321BCD1SA1</TxId>

Use TransactionTypeSLA to find the appropriate


tansactionType. The context should include
- settlement nature
(<SctiesMvmntTp>DELI</SctiesMvmntTp>)
- settlement mode (<Pmt>FREE</Pmt>)
transactionType (counterpart transaction type)
nostroSecAccountCode nostro sec account
tradableAssetCode tradableAsset.isin
- Use the date between the balise <TradDt>
tradeDate - The format is YYYY-MM-DD
- Use the date between the balise <SttlmDt>
settlementDate - The format is YYYY-MM-DD

Incoming Quantity between the balise <Qty>


- If balise <FaceAmt> is used then quantity type is
FAMT
incomingQuantity & quantityType - If balise <Unit> is used then quantity type is Unit
placeOfSettlementCode
- <Dpstry> correspond to the Place of settlement in the settlement chain.
- If there is <DlvrgSttlmPties> + <Pty1> then
settPartyType is:
counterPartCode => DeliveringAgent
- If there is <DlvrgSttlmPties> + <Pty1> then
settPartyType is:
=> DeliveringAgent

???
- If there is <DlvrgSttlmPties> + <Pty2> then
settPartyType is:
=> Seller

BIC of seller:
<AnyBIC>CPFIDEFF</AnyBIC>
beneficiary
- If there is <RcvgSttlmPties> + <Pty1> then
settPartyType is:
=> ReceivingAgent
Main entity (client custodian)
- If there is <RcvgSttlmPties> + <Pty1> then
settPartyType is:
??? => ReceivingAgent
- If there is <RcvgSttlmPties> + <Pty2> then
settPartyType is:
=> Buyer

Autopopulated From the BIC received between


this balise <AnyBIC>MGTCDE55</AnyBIC>

client

ClientSecAccount Buyer account: client sec account


hain.
Statement Of Allegement
List of messages:

semt 019.001.03

com.vermeg.services.settlementNotification.clearingSwift.StatementOfS
Megara
Message
page number
<SctiesSttlmTxAllgmtRpt>
<Pgntn>
<LastPgInd>true</LastPgInd>

last page number


<SctiesSttlmTxAllgmtRpt>
<StmtGnlDtls>
<RptNb>
<Shrt>021</Shrt>
</RptNb>

settlementDate <Frqcy><Cd>WEEK</Cd></Frqcy>

frequency
activity indicator <Id>222S</Id>
nostro sec account </SfkpgAcct>

<AllgmtDtls>
<SctiesMvmntTp>DELI</SctiesMvmntTp>
transactionType <Pmt>FREE</Pmt>
</Dt>
</TradDt>

tradeDate
<AllgmtDtls>
<SttlmDt>
<Dt><Dt>2010-01-15</Dt></Dt>
settlementDate </SttlmDt>
<FinInstrmId>
<ISIN>GB0000054321</ISIN>
tradableAsset </FinInstrmId>
<QtyAndAcctDtls>
<SttlmQty>
<FaceAmt>10000</FaceAmt>
</SttlmQty>
incomingQuantity and incomin </QtyAndAcctDtls>
</SctiesTxTp>
settlementDetailsIndicator </SttlmParams>
<Dpstry>
<Id>
<AnyBIC>BICPlaceOfSettlement</AnyBIC>
</Id>
Place Of Settlement </Dpstry>
<DlvrgSttlmPties>
<Pty1>
deliveringAgentIdentifier <Id>
<PrtryId>
Delivering agent issuer <DlvrgSttlmPties>
Seller <Pty1>
<DlvrgSttlmPties>
<Pty2>
<Id>
<AnyBIC>CPFIDEFF</AnyBIC>
</Id>
</Pty2>

receivingAgentIdentifier
<Id>
ReceivingAgentIssuer
<PrtryId>
<Issr>CRST</Issr>

<Id>
Buyer <AnyBIC>BuyerBIC</AnyBIC>

receivingCustodian

<RcvgSttlmPties>
<Pty3>
<Id>
<AnyBIC>MGTCDE55</AnyBIC>

receivingCustodianAccount
<RcvgSttlmPties>
<Pty3>
<Id>
</Id><SfkpgAcct><Id>111S</Id>

End Of Message
aringSwift.StatementOfSettlementAllegements
semt 019.001.03
StatementOfSettlementAllegement SettlementAllegement

Swift Time;
Statement Date.??? settlementDate

statementFrequency statementOfSettlementAllegements.statementFrequency
activityFlag statementOfSettlementAllegements.activityFlag
safeKeepingAccount nostroSecAccountCode

??? transactionType
Swift Date; tradeDate
Swift Time;
Statement Date.???
Swift Date; settlementDate
Swift Time;
Statement Date.???

tradableAssetCode

incomingQuantity & quantityType


???? settlementDetailsIndicators or typeOfSettTransactionIndica

placeOfSettlementCode
counterPartCode
??? ????
beneficiary

custodianCode
????

???
client
Allegement
messageReference

????
????

Use TransactionTypeSLA to find the appropriate


tansactionType. The context should include
- settlement nature
(<SctiesMvmntTp>DELI</SctiesMvmntTp>)
- settlement mode (<Pmt>FREE</Pmt>)
???

- Use the date between the balise <TradDt>


- The format is YYYY-MM-DD

- Use the date between the balise <SttlmDt>


- The format is YYYY-MM-DD

tradableAsset.isin ???

Incoming Quantity between the balise <Qty>


- If balise <FaceAmt> is used then quantity type is FAMT
- If balise <Unit> is used then quantity type is Unit
- The value of setDetIndicator is defined in the balise <SttlmParams>
Main entity (client custodian)
<SctiesTxTp> <Cd>
- If there is <DlvrgSttlmPties> + <Dpstry> then
settPartyType is:
=> Place of settlement
<AnyBIC>CRSTGB22</AnyBIC> ???
- If there is <DlvrgSttlmPties> + <Pty1> then
settPartyType is:
=> DeliveringAgent
???? ClientSecAccount
- If there is <DlvrgSttlmPties> + <Pty2> then
settPartyType is:
=> Seller

BIC of seller:
<AnyBIC>CPFIDEFF</AnyBIC>

- If there is <RcvgSttlmPties> + <Pty1> then


settPartyType is:
=> ReceivingAgent
- If there is <RcvgSttlmPties> + <Pty1> then
settPartyType is:
=> ReceivingAgent
If there is <RcvgSttlmPties> + <Pty3> then settPartyType
is:
=> Receiving Custodian

Autopopulated From the account id received between this


balise: <AnyBIC>MGTCDE55</AnyBIC>

- If there is <RcvgSttlmPties> + <Pty3> then


settPartyType is:
=> Receiving Custodian

Autopopulated From the account id received between this


balise: <SfkpgAcct><Id>111S</Id>
Corporate action instruction creation

seev.033.001.05

com.vermeg.services.swiftConnector.caProcessing.cainst.SwiftInstruct
Megara

Document ID

previous message number MT564

mainReference
officialCorporateActionEventReference
Corporate action code

tradableAsset
tradableAssetDescription
Client sec account

shortLongPositionIndicator
eligibleQuantity
option number
option label

instructedQuantity
NB: The system will& deduce
quantitythe
typeremaining quantity after each instruction computed initially according to the following formula
"totalEligibleQuantity-instructedQuantity" and set it in the field "remainingQuantity" under client instruction.
tConnector.caProcessing.cainst.SwiftInstruction
seev.033.001.05
message received in megara (source)
<CorpActnInstr>
<OthrDocId>
<Id>
<AcctSvcrDocId>1997189-012</AcctSvcrDocId>
</Id>
<DocNb>
<LngNb>seev.031.001.05</LngNb>
</DocNb>

<CorpActnEvtId>DIVGLAX123</CorpActnEvtId>

<ISIN>GB0007123466</ISIN>

<AcctDtls>
<SfkpgAcct>98-0112441-05</SfkpgAcct>
<AcctDtls>
<Bal>
<TtlElgblBal>
<QtyChc>
<SgndQty>
<ShrtLngPos>LONG</ShrtLngPos>

<Nb>002</Nb>
</OptnNb>
<Unit>10000</Unit>

y after each instruction computed initially according to the following formula


t it in the field "remainingQuantity" under client instruction.
eev.033.001.05
Swift Instruction (target1) ClientInst (target2)
not available an entity Document has a relation with
block <OthrDocId> is optional in the seev033, "ClientInst" with field mandatory field "Document
so we can decide not to add these fields. ID".

not available in megara. no field available under entity Document


block <OthrDocId> is optional in the seev033, referring to this field.
so we can decide not to add these fields.

mainReference Main Reference of the event: mainReference


???? cA.cAofficialCAReference
eventCode cA.caCode
ISIN of the CA entitled security:
Security cA.entitledSecurity
securityDescription cA.entitledSecurity.description
secAccount securitiesAccount

not managed in megara not managed in megara


"shortLongPositionIndicator" enum to be added "shortLongPositionIndicator" enum to be added
in Megara with the values below: in Megara with the values below:
-Short -Short
-Long -Long
==> This value will be deduced from client ==> This value will be deduced from client
available position. available position.
eligiblePosition totalEligibleQuantity
optionNumber option.optionNumber
optionCode option.optionCode
instructedQuantity quantity
quantityType quantityType
Corporate action instruction cancellation request

seev.040.001.05

com.vermeg.services.swiftConnector.caProcessing.cainst.SwiftInstruct
seev.0
Megara
message received in megara (source)
clientReference <CorpActnInstrCxlReq>
corporateActionEventReference
<InstrId>
<CorpActnGnlInf>
officialCorporateActionEventReference
<CorpActnEvtId>DIVGLAX123</CorpActnEvtId>
<CorpActnGnlInf>
corporate action code
<OffclCorpActnEvtId>BI01593212345</OffclCorpActnEvtId>
<CorpActnGnlInf>
tradable asset
<EvtTp>
<CorpActnGnlInf>
tradable asset description <FinInstrmId>
<CorpActnGnlInf>
client sec account
<FinInstrmId>
<AcctDtls>
option number
<SfkpgAcct>98-0112441-05</SfkpgAcct>
<CorpActnInstr>
option label <OptnNb>
<CorpActnInstr>
instructed quantity & quantity type
<OptnTp>
<CorpActnInstr>
<InstdOrQtyToRcv>
ftInstruction
seev.040.001.05
Swift Instruction (target1) ClientInst (target2)
clientReference Client reference of the client instruction:
mainReference clientReference
Main Reference of the event: mainReference
???? cA.cAofficialCAReference
eventCode cA.caCode
ISIN of the CA entitled security:
Security cA.entitledSecurity
securityDescription cA.entitledSecurity.description
secAccount securitiesAccount
optionNumber option.optionNumber
optionCode
instructedQuantity option.optionCode
quantity
quantityType quantityType
Corporate action narrative

seev 038.001.03

com.vermeg.services.swiftConnectorCa.caSwiftConnector.ca.canarrativ
seev 038.001.03
Megara
CA Narrativ
message
client sec account secAcc
"shortLongPositionIndicator" doe
shortLongPositionIndicator <Unit>80000</Unit> CANarrative.
quantity and quantityType <ISIN>GB0007123466</ISIN> not found under MegaCor notific
tradableAsset </UndrlygScty>
<Desc>GLAXO HOLDINGS</Desc> mainSec
tradableAsset description </UndrlygScty> mainSecDesc
corporateActionEvent reference mainReference
it is an optional field. Field name:
officialCorporateActionEvent reference "relatedCAOfficialReference".
Corporate action narrative type <AddtlInf>Registration information are described extensively field name: "qualifier"
SwiftCANarrative
here.</AddtlInf> having a relatio
additionalInformation </AddtlInf> field name: "text"
anarrativ.CANarrative

CA Narrative
nIndicator" does not exist under

MegaCor notification

ld. Field name:


Reference".
fier" a relation with CANarrative.
having
Corporate action instruction status advice

seev.034.001.05

com.vermeg.services.swiftConnector.caProcessing.castatus.CAStatus
seev.034.001.05
Megara
message to be generated from megara
<Id>987-654-32</Id>
Client reference </InstrId>
corporate action reference <CorpActnGnlInf>
event code
<CorpActnEvtId>DIVGLAX123</
<CorpActnGnlInf>
Reason <EvtTp>
<Nb>002</Nb>
optionNumber </OptnNb>
<Cd>SECU</Cd>
optionCode </OptnTp>
quantity and quantityType
castatus.CAStatus
seev.034.001.05
CA status (target) ClientInst (source)
clientReference clientReference
mainReference mainReference
eventCode cA.caCode
"instructionNotifReason" or "reason"
optionNumber option.optionNumber
optionCode option.optionCode
quantity quantity
quantityType quantityType
We can use "statusCode" under CA status for
Corporate Action Instruction Cancellation Request Status Advice

seev.041.001.04

com.vermeg.services.swiftConnector.caProcessing.castatus.CAStatus
seev.041.001.04
Megara
message to be generated from megara
<Id>987-654-35</Id>
ClientReference </InstrCxlReqId>
<CorpActnGnlInf>
<CorpActnEvtId>DIVGLAX123</
CorpActnEvtId>

corporateActionEventReference
<CorpActnGnlInf>
<OffclCorpActnEvtId>BI01593212345</
OffclCorpActnEvtId>

officialCorporateActionEventReference
<CorpActnGnlInf>
<EvtTp>
<Cd>DVOP</Cd>

eventCode

<InstrCxlReqSts>
<CxlCmpltd>
<NoSpcfdRsn>NORE</NoSpcfdRsn>

reasonCode
optionNumber <Cd>SECU</Cd>

optionCode <Unit>80000</Unit>

quantity and quantityType


tus.CAStatus
seev.041.001.04
CA Status (target) Client Inst (source)
clientReference clientReference
mainReference mainReference

???
May be a field to be added cA.officialCAReference
"officialCAReference"

eventCode

cA.caCode
"instructionNotifReason"
or "reason"

"instructionNotifReasonCode"
optionNumber option.optionNumber

optionCode option.optionCode
quantity quantity
quantityType quantityType
We can use "statusCode" under CA status for Instruction processing status.
InstructionProcessingStatus15Choice:
<xs:choice>
<xs:element name="Canc" type="CancelledStatus3Choice"/><xs:element name="AccptdForFrthrPrcg" type="AcceptedStatus3Choice"/><
</xs:choice>
oice"/><xs:element name="Rjctd" type="RejectedStatus9Choice"/><xs:element name="Pdg" type="PendingStatus32Choice"/><xs:elemen
lement name="DfltActn" type="NoSpecifiedReason1"/><xs:element name="StgInstr" type="NoSpecifiedReason1"/><xs:element name="P
me="PrtrySts" type="ProprietaryStatusAndReason1"/>
Statement Of Transactions
List of messages:

semt.017.001.03

com.vermeg.services.statementNotification.StatementOfTransactionsNo

Megara

StatementOfTransaction.pageNumer
StatementOfTransaction.isLastPage

StatementOfTransaction.startDate
StatementOfTransaction.startTime

StatementOfTransaction.endDate
StatementOfTransaction.endTime

StatementOfTransaction.statementFrequency

StatementOfTransaction.isComplete
isComplete == true ?COMP; DELT

StatementOfTransaction.statementBasis

StatementOfTransaction.ActivityFlag

StatementOfTransaction.isSubSafeHoldingsReport

StatementOfTransactionNorification.accountOwner

StatementOfTransaction.accountIdentifier

TransfinancialInstrument.identifier

StatementOfTransactionNotiffication.Linkage.relatedMessageReference
StatementOfTransactionNotification.Linkage.accountServicerRef
StatementOfTransactionNotification.TransactionBloc.CA Eevenet Indicator
StatementOfTransactionNotification.TransactionBloc.MarketInfrastrcutre ID
StatementOfTransactionNotification.TransactionBloc.Common Reference
TransactionBloc.transactionIndicator
TransactionBloc.settTransConditionIndicator
TransactionBloc.typeSettTransIndicator
TransactionBloc.postingQuantity
TransactionBloc.postingQuantityType
TransactionBloc.postingAmount
TransactionBloc.tradeDateDate
TransactionBloc.effectiveSettlementDate
TransactionBloc.settlementDate

http://www.iso20022.org/message_archive.page#third_version_snr

http://www.bundesbank.de/Redaktion/EN/Documentation/4zb/HtmlDoc/v1.2.1/CR/semt.017.001.03_T2S.xsd
http://www.bundesbank.de/Redaktion/EN/Documentation/4zb/HtmlDoc/v1.2.1/CR/semt.017.001.03_T2S.pdf
http://www.bundesbank.de/Redaktion/EN/Documentation/4zb/HtmlDoc/v1.2.1/CR/semt.017.001.03_T2S_StatementTransactions_Example
cation

<Pgntn> semt.017.001.03
<PgNb>1</PgNb>
<LastPgInd>true</LastPgInd>
<StmtPrd>
<FrDtTmToDtTm>
<FrDtTm>2015-01-05</FrDtTm>
<FrDtTmToDtTm>
<FrDtTm>2015-01-05T09:00:00-00:00</FrDtTm>

<ToDtTm>2015-01-05T23:59:59-00:00</ToDtTm>
<ToDtTm>2015-01-05T23:59:59-00:00</ToDtTm>

<Frqcy>
<Cd>DAIL</Cd>
</Frqcy>

<UpdTp>
<Cd>COMP</Cd>
</UpdTp>>
<StmtBsis>
<Cd>SETT</Cd>
</StmtBsis>

<ActvtyInd>1</ActvtyInd>
<SubAcctInd>1</SubAcctInd>

<AcctOwnr>
<AnyBIC>ABCDEF23251</AnyBIC>
</AcctOwnr>
</SfkpgAcct>
<FinInstrmId>
<ISIN>ISIN01234567</ISIN>
</FinInstrmId>

<AcctOwnrTxId>NONREF</AcctOwnrTxId>
<AcctSvcrTxId>REFEFG</AcctSvcrTxId>
CorpActnEvtId
<MktInfrstrctrTxId>T567</MktInfrstrctrTxId>
<CmonId>
<Cd>SETT</Cd>
</TxActvty>
<SctiesMvmntTp>DELI</SctiesMvmntTp>
<Pmt>APMT</Pmt>
</Qty>

</Dt>
</TradDt>
<DtTm>2015-01-05</DtTm>
</FctvSttlmDt>
<Dt>
<Dt>2015-01-05</Dt>
</Dt>
semt.017.001.03
Page number.
Indicates the last page.
- Use the date between the balise <Fr DtTm>
- The format is YYYY-MM-DD
-Use the Time between the balise <Fr DtTm>
- Use the date between the balise <To DtTm>
- The format is YYYY-MM-DD
-Use the Time between the balise <To DtTm>
Possible Values :
ADHO
DAIL
INDA
MNTH
WEEK
YEAR

Possible Values :
COMP
DELT
Poosible Values:
SETT
TRAD

<ActvtyInd>1</ActvtyInd> ? yes ;No

<SubAcctInd>1</SubAcctInd>? yes ;No

Not supported in Megara Now ,it takes the BIC of the account Owner

Not supported ,must be added for T2S


Not supported ,must be added for T2S
the quantity between the balise <unit>
TxDtls.PstngQty.Qty.Unit.Unit!=null?"UNIT":(TxDtls.PstngQty.Qty.FaceAmt.FaceAmt!=null?"FAMT":"AMOR")
Statement Of Holdings Transactions

List of messages:

semt.018.001.03

com.vermeg.services.statementNotification.StatementOfHoldingsNotific

Megara

StatementOfHoldingsNotification.pageNumer
StatementOfHoldingsNotification.isLastPage
StatementOfHoldingsNotificationsTransaction.statementDate
StatementOfHoldingsNotificationsTransaction.statementTime
StatementOfHoldingsNotification.statementFrequency
StatementOfHoldingsNotification.isComplete
isComplete == true ?COMP; DELT
StatementOfHoldingsNotificationsNotification.isSortedByTransactions
StatementOfHoldingsNotification.ActivityFlag
StatementOfHoldingsNotification.isSubSafeHoldingsReport

StatementOfTransactionNorification.accountOwner

StatementOfHoldingsNotification.accountIdentifier

com.vermeg.services.statementNotification.Status.Satus

com.vermeg.services.statementNotification.Reason.Reason

com.vermeg.services.statementNotificationTransactionByStatus.Linkage.Related MessageReference
com.vermeg.services.statementNotificationTransactionByStatus.Linkage.AccountServicerReference
com.vermeg.services.statementNotificationTransactionByStatus.CA Eevenet Indicator
com.vermeg.services.statementNotificationTransactionByStatus.MarketInfrastrcutre ID
com.vermeg.services.statementNotificationTransactionByStatus.Common Reference
com.vermeg.services.statementNotificationTransactionByStatus.transactionIndicator
com.vermeg.services.statementNotificationTransactionByStatus.TypeOfSettlementtransactionIndicator
com.vermeg.services.statementNotificationTransactionByStatus.isDeliver
com.vermeg.services.statementNotificationTransactionByStatus.isFree
com.vermeg.services.statementNotificationTransactionByStatus.FinancialInstrumentIdentifier
com.vermeg.services.statementNotificationTransactionByStatus.postingQuantity
com.vermeg.services.statementNotificationTransactionByStatus.postingQuantityType
com.vermeg.services.statementNotificationTransactionByStatus.tradeDateDate
com.vermeg.services.statementNotificationTransactionByStatus.settlementDate
onsNofitication

<Pgntn> semt.018.001.03
<PgNb>1</PgNb>
<LastPgInd>true</LastPgInd>
<Dt>2010-01-15</Dt>
</StmtDtTm>>
<StmtDtTm>
<StmtDtTm>2015-01-05T09:00:00-00:00</StmtDtTm >
<Cd>COMP</Cd>
</UpdTp>>
<StmtStr>STAT</StmtStr>
<ActvtyInd>1</ActvtyInd>

<AcctOwnr>
<AnyBIC>ABCDEF23251</AnyBIC>
</AcctOwnr>
</SfkpgAcct>

<Sts>
<StsAndRsn>

<Sts>
<StsAndRsn>

<AcctOwnrTxId>FRTJ123DEL1</AcctOwnrTxId>

<Cd>SETT</Cd>
</TxActvty>
<Cd>TRAD</Cd>
</SctiesTxTp>
<SctiesMvmntTp>DELI</SctiesMvmntTp>
<Pmt>FREE</Pmt>
<ISIN>GB0000000123</ISIN>
</FinInstrmId>
</Qty>
</PstngQty>
</Qty>
</PstngQty>
</Dt>
</TradDt>
<Dt>
<Dt>2015-01-05</Dt>
</Dt>
semt.018.001.03
Page number.
Indicates
- Use the the
datelast page. the balise <Fr DtTm>
between
- The format is YYYY-MM-DD
-Use the Time between the balise <Fr DtTm>
Possible Values :
ADHO
Possible Values :
COMP
StmtStr.StmtStr=="STAT"?"True":"False"

<ActvtyInd>1</ActvtyInd> ? yes ;No


<SubAcctInd>1</SubAcctInd>? yes ;No

Not supported in Megara Now ,it takes the BIC of the account Owner

<Sts>
<StsAndRsn>
<MtchgSts>
<Umtchd>
<Rsn>
<Cd>
<Cd>DQUA</Cd>
</Cd>
</Rsn>
</Umtchd>
</MtchgSts>
</StsAndRsn>

<Sts>
<StsAndRsn>
<MtchgSts>
<Umtchd>
<Rsn>
<Cd>
<Cd>DQUA</Cd>
</Cd>
</Rsn>
</Umtchd>
</MtchgSts>
</StsAndRsn>
SctiesMvmntTp.SctiesMvmntTp=="DELI"?"True":"False"
<Pmt>FREE</Pmt>?"Yes":"No"
Statement Of Holdings Transactions

List of messages:

semt.002.001.05

com.vermeg.services.statementNotification.StatementOfHoldingsNofitic

Megara

StatementOfHoldingsNotification.pageNumer
StatementOfHoldingsNotification.isLastPage
StatementOfHoldingsNotifications.statementDate
StatementOfHoldingsNotifications.statementTime
StatementOfHoldingsNotification.statementFrequency
StatementOfHoldingsNotification.isComplete
isComplete == true ?COMP; DELT
StatementOfHoldingsNotification.statementBasis
StatementOfHoldingsNotification.ActivityFlag
StatementOfHoldingsNotification.isSubSafeHoldingsReport

statementNotificationSubSafeKeepingAccount.AccountOwner
statementNotificationSubSafeKeepingAccount.AccountIdentifier
SubSafeKeepingAccount.FinancialInstrument.financialInstrumentIdentifier
SubSafeKeepingAccount.FinancialInstrument.financialInstrumentDescription

SubSafeKeepingAccount.FinancialInstrument.AggregateBalanceType
SubSafeKeepingAccount.FinancialInstrument.AggregateBalance
SubSafeKeepingAccount.FinancialInstrument.availableBalanceType.availableBalanceType=="UNIT":availableBalance.availableBalance:nul
SubSafeKeepingAccount.FinancialInstrument.availableBalanceType.availableBalanceType=="FAMT":availableBalance.availableBalance:nu
isMarketPrice.isMarketPrice=="false"? "INDC" : "MRKT"
priceAmountType.priceAmountType=="Amount"?price.price:null

priceAmountType.priceAmountType=="Amount"?price.price:null

priceCurrency.priceCurrency
firstCurrency.firstCurrency
secondCurrency.secondCurrency
exchangeRate.exchangeRate

holdingValue.holdingValue

holdingValueCurrency.holdingValueCurrency
holdingValue.holdingValue>0?"+":(holdingValue.holdingValue<0?"-")
balance.balance
balanceQuantityType.balanceQuantityType=="UNIT"?balanceQuantity.balanceQuantity:null
balanceQuantityType.balanceQuantityType=="FAMT"?balanceQuantity.balanceQuantity:null
ementOfHoldingsNofitication

<Pgntn> semt.002.001.05
<PgNb>1</PgNb>
<LastPgInd>true</LastPgInd>
<Dt>2010-01-15</Dt>
</StmtDtTm>>
<StmtDtTm>
<StmtDtTm>2015-01-05T09:00:00-00:00</StmtDtTm >
<Cd>COMP</Cd>
</UpdTp>>

<ActvtyInd>1</ActvtyInd>

<AcctOwnr>
<Id>222S</Id>
</SfkpgAcct>
<FinInstrmId>
<ISIN>GB0987654321</ISIN>
<FinInstrmId>
</FinInstrmId>
<Desc>tradable asset </Desc>
</FinInstrmId>
<ShrtLngInd>SHOR</ShrtLngInd>

<FaceAmt>4000000</FaceAmt>
"UNIT":availableBalance.availableBalance:null
"FAMT":availableBalance.availableBalance:null

ll
semt.002.001.05
Page number.
Indicates
- Use the the
datelast page. the balise <Fr DtTm>
between
- The format is YYYY-MM-DD
-Use the Time between the balise <Fr DtTm>
Possible Values :
ADHO
Possible Values :
COMP
Possible Values
SETT
<ActvtyInd>1</ActvtyInd> ? yes ;No
<SubAcctInd>1</SubAcctInd>? yes ;No

aggregateBalance>0?"LONG":(aggBalanceQuantity<0?"SHORT":"")
aggBalanceQuantityType.aggBalanceQuantityType=="UNIT"?aggBalanceQuantity.aggBalanceQuantity:null
aggBalanceQuantityType.aggBalanceQuantityType=="FAMT"?aggBalanceQuantity.aggBalanceQuantity:null

Document.SctiesBalCtdyRpt.AvlblBal.Qty.Qty.Qty.FaceAmt
Document.SctiesBalCtdyRpt.AvlblBal.Qty.Qty.Qty.Unit
Document.SctiesBalCtdyRpt.BalForAcct.PricDtls.Tp.Cd.Cd
Document.SctiesBalCtdyRpt.BalForAcct.PricDtls.Val.Rate.Rate
Document.SctiesBalCtdyRpt.BalForAcct.PricDtls.Val.Amt.ActiveOrHistoricCurrencyAnd13DecimalAmo
unt_SimpleType.ActiveOrHistoricCurrencyAnd13DecimalAmount_SimpleType
Document.SctiesBalCtdyRpt.BalForAcct.PricDtls.Val.Amt.Ccy.Ccy
Document.SctiesBalCtdyRpt.BalForAcct.FXDtls.UnitCcy.UnitCcy
Document.SctiesBalCtdyRpt.BalForAcct.FXDtls.QtdCcy.QtdCcy
Document.SctiesBalCtdyRpt.BalForAcct.FXDtls.XchgRate.XchgRate
Document.SctiesBalCtdyRpt.BalForAcct.AcctBaseCcyAmts.HldgVal.Amt.ActiveOrHistoricCurrencyAnd
Amount_SimpleType.ActiveOrHistoricCurrencyAndAmount_SimpleType
Document.SctiesBalCtdyRpt.BalForAcct.AcctBaseCcyAmts.HldgVal.Amt.Ccy.Ccy
Document.SctiesBalCtdyRpt.BalForAcct.AcctBaseCcyAmts.HldgVal.Sgn.Sgn
Document.SctiesBalCtdyRpt.BalForAcct.BalBrkdwn.SubBalTp.Cd.Cd
Document.SctiesBalCtdyRpt.BalForAcct.BalBrkdwn.Qty.Qty.Unit.Unit
Document.SctiesBalCtdyRpt.BalForAcct.BalBrkdwn.Qty.Qty.FaceAmt.FaceAmt

You might also like