auth.072.001.01
The SettlementInternaliserReport message is sent by the settlement internalisers to the relevant competent authority to report aggregated information on all securities transactions that they settle outside securities settlement systems, on a quarterly basis. The report contains aggregated information on the value and volume of all internalised settlement instructions (settled and failed) that have been performed during the period covered by the report, for financial instruments, types of transactions, types of clients and cash transfers.
Usage: This report may be used by settlement internalisers to provide aggregated information (volume and value) on internalised settlement instructions (settled and failed) to their competent authorities.
Message Construction
Every ISO20022 message has at the highest level what we call ‘building blocks’. Because the message is constructed as immutable records, the association is by composition. Below you can see the relationship between the message and its constituent building blocks: For comparison, see the ISO20022 official specification
classDiagram direction LR %% SettlementInternaliserReportV01 recursion level 0 with max 0 SettlementInternaliserReportV01 *-- "1..1" SettlementInternaliserReportHeader1 : ReportHeader SettlementInternaliserReportV01 *-- "1..1" SettlementInternaliser1 : SettlementInternaliser SettlementInternaliserReportV01 *-- "1..1" IssuerCSDReport1 : IssuerCSD SettlementInternaliserReportV01 *-- "0..1" SupplementaryData1 : SupplementaryData
Now, we will zero-in one-by-one on each of these building blocks.
ReportHeader building block
Specifies parameters of the report. Specifies parameters of the report For comparison, see the ISO20022 official specification
classDiagram direction tb %% SettlementInternaliserReportHeader1 recursion level 0 with max 1 class SettlementInternaliserReportHeader1{ CreationDateTime IsoISODateTime ReportingDate IsoISODate Currency ActiveCurrencyCode ReportStatus TransactionOperationType4Code }
SettlementInternaliserReportHeader1 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
CreationDateTime | Provides the reporting timestamp, when the report was submitted from the Settlement Internaliser to the Competent Authority. | IsoISODateTime - Required 1..1 |
ReportingDate | Last day of the reporting period. | IsoISODate - Required 1..1 |
Currency | Specifies the currency of the reported transactions. | ActiveCurrencyCode - Required 1..1 |
ReportStatus | Provides the status of the report. | TransactionOperationType4Code - Required 1..1 |
SettlementInternaliser building block
Identifies the settlement internaliser for which data is reported. Identifies the submitting entity and Settlement Internaliser of the report. For comparison, see the ISO20022 official specification
classDiagram direction tb %% SettlementInternaliser1 recursion level 0 with max 1 SettlementInternaliser1 *-- "1..1" SettlementInternaliserIdentification1 : Identification SettlementInternaliser1 *-- "1..1" InternalisationData1 : OverallTotal SettlementInternaliser1 *-- "1..1" SettlementInternaliserFinancialInstrument1 : FinancialInstrument SettlementInternaliser1 *-- "1..1" SettlementInternaliserTransactionType1 : TransactionType SettlementInternaliser1 *-- "1..1" SettlementInternaliserClientType1 : ClientType SettlementInternaliser1 *-- "1..1" InternalisationData1 : TotalCashTransfer %% SettlementInternaliserIdentification1 recursion level 1 with max 1 class SettlementInternaliserIdentification1{ LEI IsoLEIIdentifier Country CountryCode BranchIdentification IsoExact2UpperCaseAlphaText } SettlementInternaliserIdentification1 *-- "1..1" ContactDetails4 : ResponsiblePerson %% InternalisationData1 recursion level 1 with max 1 InternalisationData1 *-- "1..1" InternalisationData2 : Aggregate InternalisationData1 *-- "1..1" InternalisationDataRate1 : FailedRate %% SettlementInternaliserFinancialInstrument1 recursion level 1 with max 1 SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : Equity SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : SovereignDebt SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : Bond SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : OtherTransferableSecurities SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : ExchangeTradingFunds SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : CollectiveInvestmentUndertakings SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : MoneyMarketInstrument SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : EmissionAllowance SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : OtherFinancialInstruments %% SettlementInternaliserTransactionType1 recursion level 1 with max 1 SettlementInternaliserTransactionType1 *-- "1..1" InternalisationData1 : SecuritiesBuyOrSell SettlementInternaliserTransactionType1 *-- "1..1" InternalisationData1 : CollateralManagementOperation SettlementInternaliserTransactionType1 *-- "1..1" InternalisationData1 : SecuritiesLendingOrBorrowing SettlementInternaliserTransactionType1 *-- "1..1" InternalisationData1 : RepurchaseAgreement SettlementInternaliserTransactionType1 *-- "1..1" InternalisationData1 : OtherTransactions %% SettlementInternaliserClientType1 recursion level 1 with max 1 SettlementInternaliserClientType1 *-- "1..1" InternalisationData1 : Professional SettlementInternaliserClientType1 *-- "1..1" InternalisationData1 : Retail %% InternalisationData1 recursion level 1 with max 1 InternalisationData1 *-- "1..1" InternalisationData2 : Aggregate InternalisationData1 *-- "1..1" InternalisationDataRate1 : FailedRate
SettlementInternaliser1 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
Identification | Identifies the submitting entity and settlement Internaliser of the report. | SettlementInternaliserIdentification1 - Required 1..1 |
OverallTotal | Overall aggregated total value and volume of - settled and failed and total of internalised settlement instructions, and - failed rate of internalised settlement instructions performed during the period covered by the report, for all financial instruments, types of transactions, types of clients and cash transfers. | InternalisationData1 - Required 1..1 |
FinancialInstrument | Classification of a financial instrument according to the categories defined in the relevant legislation. | SettlementInternaliserFinancialInstrument1 - Required 1..1 |
TransactionType | Classification of securities movements according to the categories defined in the relevant legislation. | SettlementInternaliserTransactionType1 - Required 1..1 |
ClientType | Classification of a settlement internaliser’s clients as referred to in the relevant legislation. | SettlementInternaliserClientType1 - Required 1..1 |
TotalCashTransfer | Covers cash payments related to securities transactions. | InternalisationData1 - Required 1..1 |
IssuerCSD building block
Identifies each issuer CSD (central securities depository) included in the report. Identifies each issuer CSD (central securities depository) included in the report. For comparison, see the ISO20022 official specification
classDiagram direction tb %% IssuerCSDReport1 recursion level 0 with max 1 IssuerCSDReport1 *-- "1..1" IssuerCSDIdentification1 : Identification IssuerCSDReport1 *-- "1..1" InternalisationData1 : OverallTotal IssuerCSDReport1 *-- "1..1" SettlementInternaliserFinancialInstrument1 : FinancialInstrument IssuerCSDReport1 *-- "1..1" SettlementInternaliserTransactionType1 : TransactionType IssuerCSDReport1 *-- "1..1" SettlementInternaliserClientType1 : ClientType IssuerCSDReport1 *-- "1..1" InternalisationData1 : TotalCashTransfer %% IssuerCSDIdentification1 recursion level 1 with max 1 class IssuerCSDIdentification1{ LEI IsoLEIIdentifier FirstTwoCharactersInstrumentIdentification IsoExact2UpperCaseAlphaText Country CountryCode } %% InternalisationData1 recursion level 1 with max 1 InternalisationData1 *-- "1..1" InternalisationData2 : Aggregate InternalisationData1 *-- "1..1" InternalisationDataRate1 : FailedRate %% SettlementInternaliserFinancialInstrument1 recursion level 1 with max 1 SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : Equity SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : SovereignDebt SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : Bond SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : OtherTransferableSecurities SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : ExchangeTradingFunds SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : CollectiveInvestmentUndertakings SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : MoneyMarketInstrument SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : EmissionAllowance SettlementInternaliserFinancialInstrument1 *-- "1..1" InternalisationData1 : OtherFinancialInstruments %% SettlementInternaliserTransactionType1 recursion level 1 with max 1 SettlementInternaliserTransactionType1 *-- "1..1" InternalisationData1 : SecuritiesBuyOrSell SettlementInternaliserTransactionType1 *-- "1..1" InternalisationData1 : CollateralManagementOperation SettlementInternaliserTransactionType1 *-- "1..1" InternalisationData1 : SecuritiesLendingOrBorrowing SettlementInternaliserTransactionType1 *-- "1..1" InternalisationData1 : RepurchaseAgreement SettlementInternaliserTransactionType1 *-- "1..1" InternalisationData1 : OtherTransactions %% SettlementInternaliserClientType1 recursion level 1 with max 1 SettlementInternaliserClientType1 *-- "1..1" InternalisationData1 : Professional SettlementInternaliserClientType1 *-- "1..1" InternalisationData1 : Retail %% InternalisationData1 recursion level 1 with max 1 InternalisationData1 *-- "1..1" InternalisationData2 : Aggregate InternalisationData1 *-- "1..1" InternalisationDataRate1 : FailedRate
IssuerCSDReport1 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
Identification | Identification of the issuer CSD (central securities depository) for which data is reported. | IssuerCSDIdentification1 - Required 1..1 |
OverallTotal | Overall aggregated total value and volume of - settled and failed and total of internalised settlement instructions, and - failed rate of internalised settlement instructions performed during the period covered by the report, for all financial instruments, types of transactions, types of clients and cash transfers. | InternalisationData1 - Required 1..1 |
FinancialInstrument | Classification of financial instrument covering the types of financial instruments as defined in the relevant regulation. | SettlementInternaliserFinancialInstrument1 - Required 1..1 |
TransactionType | Classification of securities movements according to the categories defined in the relevant legislation. | SettlementInternaliserTransactionType1 - Required 1..1 |
ClientType | Classification of a settlement internaliser’s clients as referred to in the relevant legislation. | SettlementInternaliserClientType1 - Required 1..1 |
TotalCashTransfer | Covers cash payments related to securities transactions. | InternalisationData1 - Required 1..1 |
SupplementaryData building block
Additional information that cannot be captured in the structured elements and/or any other specific block. Additional information that can not be captured in the structured fields and/or any other specific block. For comparison, see the ISO20022 official specification
classDiagram direction tb %% SupplementaryData1 recursion level 0 with max 1 class SupplementaryData1{ PlaceAndName IsoMax350Text } SupplementaryData1 *-- "1..1" IsoSupplementaryDataEnvelope1 : Envelope %% IsoSupplementaryDataEnvelope1 recursion level 1 with max 1
SupplementaryData1 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
PlaceAndName | Unambiguous reference to the location where the supplementary data must be inserted in the message instance. In the case of XML, this is expressed by a valid XPath. | IsoMax350Text - Optional 0..1 |
Envelope | Technical element wrapping the supplementary data. | IsoSupplementaryDataEnvelope1 - Required 1..1 |
Extensibility and generalization considerations
To facilitate generalized design patterns in the system, the SettlementInternaliserReportV01 implementation follows a specific implementaiton pattern. First of all, SettlementInternaliserReportV01 impleemnts IOuterRecord indicating it is the outermost logical part of the message definition. Like all message wrappers, SettlementInternaliserReportV01Document implements IOuterDocument. Because SettlementInternaliserReportV01 implements IOuterDocument, it is a suitable template parameter for IOuterDocument, and causes the internal ‘Message’ to be of type SettlementInternaliserReportV01.
classDiagram class IOuterRecord SettlementInternaliserReportV01 --|> IOuterRecord : Implements SettlementInternaliserReportV01Document --|> IOuterDocument~SettlementInternaliserReportV01~ : Implements class IOuterDocument~SettlementInternaliserReportV01~ { SettlementInternaliserReportV01 Message }
Document wrapper for serialization
The only real purpose SettlementInternaliserReportV01Document serves is to cause the document to be serialized into the ‘urn:iso:std:iso:20022:tech:xsd:auth.072.001.01’ namespace. Therefore, it will probably be the usual practice to build the message and construct this wrapper at the last minute using SettlementInternaliserReportV01.ToDocument() method. The returned SettlementInternaliserReportV01Document value will serialize correctly according to ISO 20022 standards.
classDiagram SettlementInternaliserReportV01Document *-- SettlementInternaliserReportV01 : Document
Sample of message format
This is an abbreviated version of what the message should look like.
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:auth.072.001.01">
<SttlmIntlrRpt>
<RptHdr>
<!-- ReportHeader inner content -->
</RptHdr>
<SttlmIntlr>
<!-- SettlementInternaliser inner content -->
</SttlmIntlr>
<IssrCSD>
<!-- IssuerCSD inner content -->
</IssrCSD>
<SplmtryData>
<!-- SupplementaryData inner content -->
</SplmtryData>
</SttlmIntlrRpt>
</Document>
Data from ISO specification
This is the technical data from the specification document.
<messageDefinition
xmi:id="_m9MVgO3jEeaWjpoyrnG6Rw"
name="SettlementInternaliserReportV01"
definition="The SettlementInternaliserReport message is sent by the settlement internalisers to the relevant competent authority to report aggregated information on all securities transactions that they settle outside securities settlement systems, on a quarterly basis. The report contains aggregated information on the value and volume of all internalised settlement instructions (settled and failed) that have been performed during the period covered by the report, for financial instruments, types of transactions, types of clients and cash transfers.

Usage: 
This report may be used by settlement internalisers to provide aggregated information (volume and value) on internalised settlement instructions (settled and failed) to their competent authorities."
registrationStatus="Registered"
messageSet="_bU-YYAjCEeerFLIYEaxeJw"
xmlTag="SttlmIntlrRpt"
rootElement="Document"
xmlns:xmi="http://www.omg.org/XMI">
<messageBuildingBlock
xmi:id="_jW2EcO3kEeaWjpoyrnG6Rw"
name="ReportHeader"
definition="Specifies parameters of the report."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="RptHdr"
complexType="_rJ-pkO3kEeaWjpoyrnG6Rw" />
<messageBuildingBlock
xmi:id="_lNkVgO3kEeaWjpoyrnG6Rw"
name="SettlementInternaliser"
definition="Identifies the settlement internaliser for which data is reported."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="SttlmIntlr"
complexType="_x6_YcO3mEeaWjpoyrnG6Rw" />
<messageBuildingBlock
xmi:id="_pgDeYO3kEeaWjpoyrnG6Rw"
name="IssuerCSD"
definition="Identifies each issuer CSD (central securities depository) included in the report."
registrationStatus="Provisionally Registered"
minOccurs="1"
xmlTag="IssrCSD"
complexType="_2_qZ9-3rEeaWjpoyrnG6Rw" />
<messageBuildingBlock
xmi:id="_D1rv0X9xEeiuTa5SlOUnYg"
name="SupplementaryData"
definition="Additional information that cannot be captured in the structured elements and/or any other specific block."
registrationStatus="Provisionally Registered"
minOccurs="0"
xmlTag="SplmtryData"
complexType="_Qn0zC9p-Ed-ak6NoX_4Aeg_468227563" />
<messageDefinitionIdentifier
businessArea="auth"
messageFunctionality="072"
flavour="001"
version="01" />
</messageDefinition>
ISO Building Blocks
The following items are used as building blocks to construct this message.