setr.027.001.04
SCOPE Sent by an executing party to an instructing party directly or through Central Matching Utility (CMU) to provide trade confirmation on a per-account basis based on instructions provided by the instructing party in the SecuritiesAllocationInstruction message.
It may also be used to provide trade confirmation on the trade level from an executing party or an instructing party to the custodian or an affirming party directly or through CMU.
The instructing party is typically the investment manager or an intermediary system/vendor communicating on behalf of the investment manager or of other categories of investors. The executing party is typically the broker/dealer or an intermediary system/vendor communicating on behalf of the broker/dealer. The custodian or the affirming party is typically the custodian, trustee, financial institution, intermediary system/vendor communicating on behalf of them, or their agent.
USAGE Initiator: In local matching, the initiator of this message is always the executing party. In central matching the initiator may be either the executing party or instructing party. Respondent: instructing party, a custodian or an affirming party responds with SecuritiesTradeConfirmationResponse (accept or reject) message.
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
%% SecuritiesTradeConfirmationV04 recursion level 0 with max 0
SecuritiesTradeConfirmationV04 *-- "1..1" TransactiontIdentification4 : Identification
SecuritiesTradeConfirmationV04 *-- "0..1" INumberCount1Choice : NumberCount
SecuritiesTradeConfirmationV04 *-- "0..1" Linkages52 : References
SecuritiesTradeConfirmationV04 *-- "1..1" Order24 : TradeDetails
SecuritiesTradeConfirmationV04 *-- "1..1" SecurityIdentification19 : FinancialInstrumentIdentification
SecuritiesTradeConfirmationV04 *-- "0..1" FinancialInstrumentAttributes124 : FinancialInstrumentAttributes
SecuritiesTradeConfirmationV04 *-- "0..1" UnderlyingFinancialInstrument7 : UnderlyingFinancialInstrument
SecuritiesTradeConfirmationV04 *-- "0..1" FinancialInstrumentStipulations4 : Stipulations
SecuritiesTradeConfirmationV04 *-- "1..1" ConfirmationParties6 : ConfirmationParties
SecuritiesTradeConfirmationV04 *-- "0..1" SettlementDetails213 : SettlementParameters
SecuritiesTradeConfirmationV04 *-- "0..1" StandingSettlementInstruction13 : StandingSettlementInstruction
SecuritiesTradeConfirmationV04 *-- "0..1" SettlementParties59 : DeliveringSettlementParties
SecuritiesTradeConfirmationV04 *-- "0..1" SettlementParties59 : ReceivingSettlementParties
SecuritiesTradeConfirmationV04 *-- "0..1" CashParties33 : CashParties
SecuritiesTradeConfirmationV04 *-- "0..1" Clearing5 : ClearingDetails
SecuritiesTradeConfirmationV04 *-- "0..1" AmountAndDirection28 : SettlementAmount
SecuritiesTradeConfirmationV04 *-- "0..1" OtherAmounts16 : OtherAmounts
SecuritiesTradeConfirmationV04 *-- "0..1" OtherPrices5 : OtherPrices
SecuritiesTradeConfirmationV04 *-- "0..1" OtherParties32 : OtherBusinessParties
SecuritiesTradeConfirmationV04 *-- "0..1" TwoLegTransactionDetails5 : TwoLegTransactionDetails
SecuritiesTradeConfirmationV04 *-- "0..1" RegulatoryStipulations1 : RegulatoryStipulations
SecuritiesTradeConfirmationV04 *-- "0..1" SupplementaryData1 : SupplementaryData
Now, we will zero-in one-by-one on each of these building blocks.
Identification building block
Information that unambiguously identifies an SecuritiesTradeConfirmation message as known by the account owner (or the instructing party acting on its behalf). Transaction identification. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% TransactiontIdentification4 recursion level 0 with max 1
class TransactiontIdentification4{
TransactionIdentification IsoMax35Text
}
TransactiontIdentification4 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| TransactionIdentification | Unambiguous identification of the transaction as known by the instructing party. | IsoMax35Text - Required 1..1 |
NumberCount building block
Count of the number of transactions linked. Choice of number count type. For comparison, see the ISO20022 official specification
classDiagram direction tb %% INumberCount1Choice recursion level 0 with max 1
NumberCount1Choice members
| Member name | Description | Data Type / Multiplicity |
|---|
References building block
Reference to the transaction identifier issued by a business party and/or market infrastructure. It may also be used to reference a previous transaction, for example, a block/allocation instruction, or tie a set of messages together. Information related to a linked transaction. For comparison, see the ISO20022 official specification
classDiagram direction tb %% Linkages52 recursion level 0 with max 1 Linkages52 *-- "0..1" IDocumentNumber17Choice : MessageNumber Linkages52 *-- "1..1" IIdentificationReference8Choice : Reference %% IDocumentNumber17Choice recursion level 1 with max 1 %% IIdentificationReference8Choice recursion level 1 with max 1
Linkages52 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| MessageNumber | Message type number/message identifier of the message referenced in the linkage sequence. | IDocumentNumber17Choice - Optional 0..1 |
| Reference | Reference to the linked transaction. | IIdentificationReference8Choice - Required 1..1 |
TradeDetails building block
Details of the trade. Intention to transfer an ownership of a financial instrument. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% Order24 recursion level 0 with max 1
class Order24{
OrderIdentification IsoMax35Text
ClientOrderIdentification IsoMax35Text
SecondaryClientOrderIdentification IsoMax35Text
ListIdentification IsoMax35Text
Side Side3Code
Payment DeliveryReceiptType2Code
PreAdvice IsoYesNoIndicator
OrderBookingDate IsoISODate
TradeOriginationDate IsoISODateTime
CashMargin CashMarginOrder1Code
NumberOfDaysAccrued IsoMax3Number
GiveUpNumberOfDays IsoMax3Number
InterestType InterestType2Code
AccruedInterestPercentage IsoPercentageRate
TradeRegulatoryConditionsType TradeRegulatoryConditions1Code
OrderOriginatorEligibility Eligibility1Code
PositionEffect PositionEffect2Code
DerivativeCovered IsoYesNoIndicator
CallInType CallIn1Code
AdditionalTradeInstructionProcessingInformation IsoMax350Text
}
Order24 *-- "0..1" IBusinessProcessType2Choice : BusinessProcessType
Order24 *-- "0..1" ITradeType4Choice : TradeTransactionType
Order24 *-- "0..0" ITradeTransactionCondition9Choice : TradeTransactionCondition
Order24 *-- "0..1" MarketIdentification93 : PlaceOfTrade
Order24 *-- "1..1" ITradeDate7Choice : TradeDate
Order24 *-- "0..1" ITradeDate7Choice : ProcessingDate
Order24 *-- "1..1" ISettlementDate16Choice : SettlementDate
Order24 *-- "0..1" IDateAndDateTime1Choice : NAVDate
Order24 *-- "0..0" PartialFill4 : PartialFillDetails
Order24 *-- "1..1" IQuantity6Choice : ConfirmationQuantity
Order24 *-- "0..0" QuantityBreakdown76 : QuantityBreakdown
Order24 *-- "0..1" AmountAndDirection29 : GrossTradeAmount
Order24 *-- "1..1" Price14 : DealPrice
Order24 *-- "0..1" ITypeOfPrice47Choice : TypeOfPrice
Order24 *-- "0..1" Commission24 : Commission
Order24 *-- "0..1" AmountAndDirection29 : AccruedInterestAmount
Order24 *-- "0..1" ICurrencyToBuyOrSell1Choice : CurrencyToBuyOrSell
Order24 *-- "0..1" IChargeTaxBasisType2Choice : ChargeTaxBasisType
Order24 *-- "0..1" IEUCapitalGainType3Choice : CapitalGainType
Order24 *-- "0..1" IMatchingStatus27Choice : MatchStatus
Order24 *-- "0..1" YieldCalculation7 : YieldType
Order24 *-- "0..0" IReporting6Choice : Reporting
Order24 *-- "0..1" RegistrationParameters3 : AdditionalPhysicalOrRegistrationDetails
%% IBusinessProcessType2Choice recursion level 1 with max 1
%% ITradeType4Choice recursion level 1 with max 1
%% ITradeTransactionCondition9Choice recursion level 1 with max 1
%% MarketIdentification93 recursion level 1 with max 1
MarketIdentification93 *-- "0..1" IMarketIdentification3Choice : Identification
MarketIdentification93 *-- "0..1" IMarketType18Choice : Type
%% ITradeDate7Choice recursion level 1 with max 1
%% ITradeDate7Choice recursion level 1 with max 1
%% ISettlementDate16Choice recursion level 1 with max 1
%% IDateAndDateTime1Choice recursion level 1 with max 1
%% PartialFill4 recursion level 1 with max 1
PartialFill4 *-- "1..1" IQuantity6Choice : ConfirmationQuantity
PartialFill4 *-- "1..1" Price14 : DealPrice
PartialFill4 *-- "0..1" ITradeDate7Choice : TradeDate
PartialFill4 *-- "0..1" MarketIdentification97 : PlaceOfTrade
PartialFill4 *-- "1..1" IQuantityOrAmount2Choice : OriginalOrderedQuantity
PartialFill4 *-- "1..1" IQuantityOrAmount2Choice : PreviouslyExecutedQuantity
PartialFill4 *-- "1..1" IQuantityOrAmount2Choice : RemainingQuantity
PartialFill4 *-- "0..1" IQuantityOrAmount2Choice : MatchIncrementQuantity
%% IQuantity6Choice recursion level 1 with max 1
%% QuantityBreakdown76 recursion level 1 with max 1
QuantityBreakdown76 *-- "0..1" GenericIdentification37 : LotNumber
QuantityBreakdown76 *-- "0..1" IFinancialInstrumentQuantity1Choice : LotQuantity
QuantityBreakdown76 *-- "0..1" IDateAndDateTime1Choice : LotDateTime
QuantityBreakdown76 *-- "0..1" Price14 : LotPrice
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% ITypeOfPrice47Choice recursion level 1 with max 1
%% Commission24 recursion level 1 with max 1
class Commission24{
CalculationDate IsoISODate
TotalVATAmount IsoActiveCurrencyAndAmount
VATRate IsoBaseOneRate
}
Commission24 *-- "1..1" ICommissionType6Choice : Type
Commission24 *-- "1..1" IAmountOrRate2Choice : Commission
Commission24 *-- "0..1" PartyIdentification117 : RecipientIdentification
Commission24 *-- "0..1" AmountAndDirection29 : TotalCommission
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% ICurrencyToBuyOrSell1Choice recursion level 1 with max 1
%% IChargeTaxBasisType2Choice recursion level 1 with max 1
%% IEUCapitalGainType3Choice recursion level 1 with max 1
%% IMatchingStatus27Choice recursion level 1 with max 1
%% YieldCalculation7 recursion level 1 with max 1
class YieldCalculation7{
Value IsoPercentageRate
CalculationType CalculationType1Code
ValueDate IsoISODate
CalculationDate IsoISODate
}
YieldCalculation7 *-- "0..1" Price14 : RedemptionPrice
YieldCalculation7 *-- "0..1" IDateTimePeriod1Choice : ValuePeriod
%% IReporting6Choice recursion level 1 with max 1
%% RegistrationParameters3 recursion level 1 with max 1
class RegistrationParameters3{
CertificationIdentification IsoMax35Text
RegistrarAccount IsoMax35Text
}
RegistrationParameters3 *-- "0..1" IDateAndDateTime1Choice : CertificationDateTime
RegistrationParameters3 *-- "0..0" SecuritiesCertificate3 : CertificateNumber
Order24 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| BusinessProcessType | Specifies the type of business process. | IBusinessProcessType2Choice - Optional 0..1 |
| OrderIdentification | Unique identifier for Order as assigned by sell-side. | IsoMax35Text - Unknown 0..0 |
| ClientOrderIdentification | Unique identifier for the order as assigned by the buy-side. Uniqueness must be guaranteed within a single trading day. Firms, particularly those that electronically submit multi-day orders, trade globally or throughout market close periods, should ensure uniqueness across days, for example by embedding a date within the ClientOrderIdentification element. | IsoMax35Text - Unknown 0..0 |
| SecondaryClientOrderIdentification | Assigned by the party that originates the order. Can be used to provide the ClientOrderIdentification used by an exchange or executing system. | IsoMax35Text - Unknown 0..0 |
| ListIdentification | Unique identifier for a list, as assigned by the trading party. The identifier must be unique within a single trading day. | IsoMax35Text - Unknown 0..0 |
| Side | Coded list to specify the side of the order. | Side3Code - Required 1..1 |
| Payment | Specifies how the transaction is to be settled, for example, against payment. | DeliveryReceiptType2Code - Optional 0..1 |
| TradeTransactionType | Specifies the type of transaction of which the order is a component. | ITradeType4Choice - Optional 0..1 |
| TradeTransactionCondition | Indicates the conditions under which the order/trade is to be/was executed. | ITradeTransactionCondition9Choice - Unknown 0..0 |
| PreAdvice | Transaction is a pre-advice, that is, for matching purposes only. | IsoYesNoIndicator - Optional 0..1 |
| PlaceOfTrade | Market in which a trade transaction is to be or has been executed. | MarketIdentification93 - Optional 0..1 |
| OrderBookingDate | Date and time when an entry is posted to an account on the account servicer’s books. | IsoISODate - Optional 0..1 |
| TradeOriginationDate | Indicates the date and time of the agreement in principal between counter-parties prior to actual trade date. | Used with fixed income for municipal new issue markets. |
| TradeDate | Specifies the date/time on which the trade was executed. | ITradeDate7Choice - Required 1..1 |
| ProcessingDate | Processing date of the trading session. | ITradeDate7Choice - Optional 0..1 |
| SettlementDate | Date and time at which the securities are to be delivered or received. | ISettlementDate16Choice - Required 1..1 |
| NAVDate | Valuation point, or valuation date of the portfolio (underlying assets). This is also known as price date. | IDateAndDateTime1Choice - Optional 0..1 |
| PartialFillDetails | Quantity of financial instrument bought or sold which is less than the quantity of financial instrument ordered. | PartialFill4 - Unknown 0..0 |
| ConfirmationQuantity | Quantity of financial instrument that is being confirmed for the account.The quantity of the security to be settled. | IQuantity6Choice - Required 1..1 |
| QuantityBreakdown | Breakdown of a quantity into lots such as tax lots, instrument series, etc. | QuantityBreakdown76 - Unknown 0..0 |
| GrossTradeAmount | Principal amount of a trade (price multiplied by quantity). | AmountAndDirection29 - Optional 0..1 |
| DealPrice | Amount of money for which goods or services are offered, sold, or bought. | Price14 - Required 1..1 |
| TypeOfPrice | Specifies the type of transaction price. | ITypeOfPrice47Choice - Optional 0..1 |
| CashMargin | Identifies whether an order is a margin order or a non-margin order. This is primarily used when sending orders to Japanese exchanges to indicate sell margin or buy to cover. The same tag could be assigned also by buy-side to indicate the intent to sell or buy margin and the sell-side to accept or reject (base on some validation criteria) the margin request. | CashMarginOrder1Code - Optional 0..1 |
| Commission | Amount of money due to a party as compensation for a service. | Commission24 - Optional 0..1 |
| NumberOfDaysAccrued | Number of days on which the interest rate accrues (daily accrual note). | IsoMax3Number - Optional 0..1 |
| GiveUpNumberOfDays | Specifies the number of days from trade date that the counterparty on the other side of the trade should be “given up” or divulged. | IsoMax3Number - Optional 0..1 |
| InterestType | Indicates whether the trade is cum interest or ex interest. | InterestType2Code - Optional 0..1 |
| AccruedInterestAmount | Interest amount that has accrued in between two periods, for example, in between interest payment periods. | AmountAndDirection29 - Optional 0..1 |
| AccruedInterestPercentage | Interest rate that has been accrued in between coupon payment periods. | IsoPercentageRate - Optional 0..1 |
| TradeRegulatoryConditionsType | Specifies the regulatory conditions type of the trade. | TradeRegulatoryConditions1Code - Optional 0..1 |
| CurrencyToBuyOrSell | Account servicer is instructed to buy the indicated currency after the receipt of cash proceeds or to sell the indicated currency in order to obtain the necessary currency to fund the transaction. | ICurrencyToBuyOrSell1Choice - Optional 0..1 |
| OrderOriginatorEligibility | Counterparties eligibility as defined by article 24 of the EU MiFID Directive applicable to transactions executed by investment firms for eligible counterparties. | Eligibility1Code - Optional 0..1 |
| PositionEffect | Indicates whether the resulting position after a trade should be an opening position or closing position. Used for omnibus accounting - where accounts are held on a gross basis instead of being netted together. | PositionEffect2Code - Optional 0..1 |
| DerivativeCovered | Indicates whether the derivative product is covered or not by an underlying financial instrument position. | IsoYesNoIndicator - Optional 0..1 |
| ChargeTaxBasisType | Type of charge/tax basis. | IChargeTaxBasisType2Choice - Optional 0..1 |
| CapitalGainType | Specifies the type of capital gain. | IEUCapitalGainType3Choice - Optional 0..1 |
| MatchStatus | Provides the matching status of the trade confirmation. | IMatchingStatus27Choice - Optional 0..1 |
| CallInType | Specifies the type of pay-in call report. | CallIn1Code - Optional 0..1 |
| YieldType | Type of yield at which the transaction was effected. | YieldCalculation7 - Optional 0..1 |
| Reporting | Specifies that a trade is to be reported to a third party. | IReporting6Choice - Unknown 0..0 |
| AdditionalPhysicalOrRegistrationDetails | Provides information required for the registration or physical settlement. | RegistrationParameters3 - Optional 0..1 |
| AdditionalTradeInstructionProcessingInformation | Provides additional details of the trade process not included within structured fields of this message. | IsoMax350Text - Optional 0..1 |
FinancialInstrumentIdentification building block
Unique and unambiguous identifier of a financial instrument, assigned under a formal or proprietary identification scheme. Identification of a security. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% SecurityIdentification19 recursion level 0 with max 1
class SecurityIdentification19{
ISIN IsoISINOct2015Identifier
Description IsoMax140Text
}
SecurityIdentification19 *-- "0..0" OtherIdentification1 : OtherIdentification
%% OtherIdentification1 recursion level 1 with max 1
class OtherIdentification1{
Identification IsoMax35Text
Suffix IsoMax16Text
}
OtherIdentification1 *-- "1..1" IIdentificationSource3Choice : Type
SecurityIdentification19 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| ISIN | International Securities Identification Number (ISIN). A numbering system designed by the United Nation’s International Organisation for Standardisation (ISO). The ISIN is composed of a 2-character prefix representing the country of issue, followed by the national security number (if one exists), and a check digit. Each country has a national numbering agency that assigns ISIN numbers for securities in that country. | IsoISINOct2015Identifier - Optional 0..1 |
| OtherIdentification | Identification of a security by proprietary or domestic identification scheme. | OtherIdentification1 - Unknown 0..0 |
| Description | Textual description of a security instrument. | IsoMax140Text - Optional 0..1 |
FinancialInstrumentAttributes building block
Elements characterising a financial instrument. Elements characterising a financial instrument. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% FinancialInstrumentAttributes124 recursion level 0 with max 1
class FinancialInstrumentAttributes124{
CertificateNumber IsoMax35Text
DenominationCurrency ActiveOrHistoricCurrencyCode
CouponDate IsoISODate
ExpiryDate IsoISODate
FloatingRateFixingDate IsoISODate
MaturityDate IsoISODate
IssueDate IsoISODate
NextCallableDate IsoISODate
ConversionDate IsoISODate
PutableDate IsoISODate
DatedDate IsoISODate
FirstPaymentDate IsoISODate
NextFactorDate IsoISODate
PreviousFactor IsoBaseOneRate
CurrentFactor IsoBaseOneRate
NextFactor IsoBaseOneRate
EndFactor IsoBaseOneRate
InterestRate IsoPercentageRate
NextInterestRate IsoPercentageRate
IndexRateBasis IsoPercentageRate
PercentageOfDebtClaims IsoPercentageRate
ConvertibleIndicator IsoYesNoIndicator
VariableRateIndicator IsoYesNoIndicator
CoveredIndicator IsoYesNoIndicator
CallableIndicator IsoYesNoIndicator
PutableIndicator IsoYesNoIndicator
WarrantAttachedOnDelivery IsoYesNoIndicator
OddCouponIndicator IsoYesNoIndicator
RedemptionYieldImpact IsoYesNoIndicator
YieldVariance IsoYesNoIndicator
FaceAmount IsoImpliedCurrencyAndAmount
FinancialInstrumentAttributeAdditionalDetails IsoMax350Text
}
FinancialInstrumentAttributes124 *-- "0..1" IMarketIdentification3Choice : PlaceOfListing
FinancialInstrumentAttributes124 *-- "0..1" Rating1 : Rating
FinancialInstrumentAttributes124 *-- "0..1" IInterestComputationMethodFormat4Choice : DayCountBasis
FinancialInstrumentAttributes124 *-- "0..1" IFormOfSecurity6Choice : RegistrationForm
FinancialInstrumentAttributes124 *-- "0..1" IFrequency23Choice : PaymentFrequency
FinancialInstrumentAttributes124 *-- "0..1" IFrequency23Choice : VariableRateChangeFrequency
FinancialInstrumentAttributes124 *-- "0..1" IClassificationType32Choice : ClassificationType
FinancialInstrumentAttributes124 *-- "0..1" IOptionStyle10Choice : OptionStyle
FinancialInstrumentAttributes124 *-- "0..1" IOptionType6Choice : OptionType
FinancialInstrumentAttributes124 *-- "0..1" INumber1Choice : CouponAttachedNumber
FinancialInstrumentAttributes124 *-- "0..1" GenericIdentification37 : PoolNumber
FinancialInstrumentAttributes124 *-- "0..1" INumber1Choice : VersionNumber
FinancialInstrumentAttributes124 *-- "0..1" Price14 : ExercisePrice
FinancialInstrumentAttributes124 *-- "0..1" Price14 : SubscriptionPrice
FinancialInstrumentAttributes124 *-- "0..1" Price14 : ConversionPrice
FinancialInstrumentAttributes124 *-- "0..1" Price14 : TaxableIncomePerShare
FinancialInstrumentAttributes124 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumNominalQuantity
FinancialInstrumentAttributes124 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableQuantity
FinancialInstrumentAttributes124 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableMultipleQuantity
FinancialInstrumentAttributes124 *-- "0..1" IFinancialInstrumentQuantity18Choice : ContractSize
%% IMarketIdentification3Choice recursion level 1 with max 1
%% Rating1 recursion level 1 with max 1
class Rating1{
RatingScheme IsoMax35Text
ValueDate IsoISODateTime
ValueIdentification IsoRatingValueIdentifier
}
%% IInterestComputationMethodFormat4Choice recursion level 1 with max 1
%% IFormOfSecurity6Choice recursion level 1 with max 1
%% IFrequency23Choice recursion level 1 with max 1
%% IFrequency23Choice recursion level 1 with max 1
%% IClassificationType32Choice recursion level 1 with max 1
%% IOptionStyle10Choice recursion level 1 with max 1
%% IOptionType6Choice recursion level 1 with max 1
%% INumber1Choice recursion level 1 with max 1
%% GenericIdentification37 recursion level 1 with max 1
class GenericIdentification37{
Identification IsoMax35Text
Issuer IsoMax35Text
}
%% INumber1Choice recursion level 1 with max 1
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% IFinancialInstrumentQuantity1Choice recursion level 1 with max 1
%% IFinancialInstrumentQuantity1Choice recursion level 1 with max 1
%% IFinancialInstrumentQuantity1Choice recursion level 1 with max 1
%% IFinancialInstrumentQuantity18Choice recursion level 1 with max 1
FinancialInstrumentAttributes124 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| PlaceOfListing | Market(s) on which the security is listed. | IMarketIdentification3Choice - Optional 0..1 |
| Rating | Assessment of securities credit and investment risk. | Rating1 - Optional 0..1 |
| CertificateNumber | Unique and unambiguous identifier of a certificate assigned by the issuer. | IsoMax35Text - Optional 0..1 |
| DayCountBasis | Specifies the computation method of (accrued) interest of the security. | IInterestComputationMethodFormat4Choice - Optional 0..1 |
| RegistrationForm | Specifies the form, ie, ownership, of the security. | IFormOfSecurity6Choice - Optional 0..1 |
| PaymentFrequency | Specifies the frequency of an interest payment. | IFrequency23Choice - Optional 0..1 |
| VariableRateChangeFrequency | Specifies the frequency of change to the variable rate of an interest bearing instrument. | IFrequency23Choice - Optional 0..1 |
| ClassificationType | Classification type of the financial instrument, as per the ISO Classification of Financial Instrument (CFI) codification, for example, common share with voting rights, fully paid, or registered. | IClassificationType32Choice - Optional 0..1 |
| OptionStyle | Specifies how an option can be exercised (American, European, Bermudan). | IOptionStyle10Choice - Optional 0..1 |
| OptionType | Specifies whether it is a Call option (right to purchase a specific underlying asset) or a Put option (right to sell a specific underlying asset). | IOptionType6Choice - Optional 0..1 |
| DenominationCurrency | Currency in which a security is issued or redenominated. | ActiveOrHistoricCurrencyCode - Optional 0..1 |
| CouponDate | Next payment date of an interest bearing financial instrument. | IsoISODate - Optional 0..1 |
| ExpiryDate | Date on which a privilege expires. | IsoISODate - Optional 0..1 |
| FloatingRateFixingDate | Date at which the interest rate of an interest bearing security will be calculated and reset, according to the terms of the issue. | IsoISODate - Optional 0..1 |
| MaturityDate | Planned final repayment date at the time of issuance. | IsoISODate - Optional 0..1 |
| IssueDate | Date at which the security was made available. | IsoISODate - Optional 0..1 |
| NextCallableDate | Next date at which the issuer has the right to pay the security prior to maturity. | IsoISODate - Optional 0..1 |
| ConversionDate | Deadline by which a convertible security must be converted according to the terms of the issue. | IsoISODate - Optional 0..1 |
| PutableDate | Date at which the holder has the right to ask for redemption of the security prior to final maturity. | IsoISODate - Optional 0..1 |
| DatedDate | First date at which a security begins to accrue interest. | IsoISODate - Optional 0..1 |
| FirstPaymentDate | Date at which the first interest payment is due to holders of the security. | IsoISODate - Optional 0..1 |
| NextFactorDate | Date on which the current factor will be changed to the next factor. | IsoISODate - Optional 0..1 |
| PreviousFactor | Rate expressed as a decimal between 0 and 1 that was applicable before the current factor and defines the outstanding principal of the financial instrument (for factored securities). | IsoBaseOneRate - Optional 0..1 |
| CurrentFactor | Rate expressed as a decimal between 0 and 1 defining the outstanding principal of the financial instrument (for factored securities). | IsoBaseOneRate - Optional 0..1 |
| NextFactor | Rate expressed as a decimal between 0 and 1 that will be applicable as of the next factor date and defines the outstanding principal of the financial instrument (for factored securities). | IsoBaseOneRate - Optional 0..1 |
| EndFactor | End ratio of principal outstanding to the original balance. | IsoBaseOneRate - Optional 0..1 |
| InterestRate | Per annum ratio of interest paid to the principal amount of the financial instrument for a specific period of time. | IsoPercentageRate - Optional 0..1 |
| NextInterestRate | Interest rate applicable to the next interest payment period in relation to variable rate instruments. | IsoPercentageRate - Optional 0..1 |
| IndexRateBasis | Specifies the reference rate for fixed income instruments where the | price of the instrument is indexed to the price of an underlying benchmark. |
| PercentageOfDebtClaims | Percentage of the underlying assets of a fund that represents a debt, for example, in the context of the EU Savings directive. | IsoPercentageRate - Optional 0..1 |
| CouponAttachedNumber | Number of the coupon attached to the physical security. | INumber1Choice - Optional 0..1 |
| PoolNumber | Number identifying a group of underlying assets assigned by the issuer of a factored security. | GenericIdentification37 - Optional 0..1 |
| VersionNumber | Number allocated by options exchanges to record that an option has undergone a change in its contract specifications (particularly adjustment of the strike price). | INumber1Choice - Optional 0..1 |
| ConvertibleIndicator | Indicates whether the interest bearing security is convertible into another type of security. | IsoYesNoIndicator - Optional 0..1 |
| VariableRateIndicator | Indicates whether the interest rate of an interest bearing instrument is reset periodically. | IsoYesNoIndicator - Optional 0..1 |
| CoveredIndicator | Indicates whether the underlying security is owned by the writer of the entitlement. | IsoYesNoIndicator - Optional 0..1 |
| CallableIndicator | Indicates whether the issuer has the right to pay the security prior to maturity. Also called RetractableIndicator. | IsoYesNoIndicator - Optional 0..1 |
| PutableIndicator | Indicates whether the holder has the right to ask for redemption of the security prior to final maturity. Also called RedeemableIndicator. | IsoYesNoIndicator - Optional 0..1 |
| WarrantAttachedOnDelivery | Indicates whether the warrants on a financial instrument (which has been traded cum warrants) will be attached on delivery. | IsoYesNoIndicator - Optional 0..1 |
| OddCouponIndicator | Indicates whether the payment of the coupon (interest) on an interest bearing instrument is off the normal schedule. | IsoYesNoIndicator - Optional 0..1 |
| RedemptionYieldImpact | Indicates whether, in the case of a debt security subject to redemption before maturity, such redemption could have an impact on the yield. | IsoYesNoIndicator - Optional 0..1 |
| YieldVariance | Indicates whether the actual yield of an asset-backed security may vary according to the rate at which the underlying receivables or other financial assets are prepaid. | IsoYesNoIndicator - Optional 0..1 |
| ExercisePrice | Predetermined price at which the holder of a derivative will buy or sell the underlying instrument. | Price14 - Optional 0..1 |
| SubscriptionPrice | Fixed price at which a new securities issue is being offered to the public. | Price14 - Optional 0..1 |
| ConversionPrice | Price at which a given convertible security can be converted to common stock. | Price14 - Optional 0..1 |
| TaxableIncomePerShare | Amount included in the Net Asset Value(NAV) that corresponds to gains directly or indirectly derived from interest payment, for example in the scope of the European Directive on taxation of savings income in the form of interest payments. | Price14 - Optional 0..1 |
| MinimumNominalQuantity | Indicates the minimum tradable quantity of a security. | IFinancialInstrumentQuantity1Choice - Optional 0..1 |
| MinimumExercisableQuantity | Minimum quantity of financial instrument or lot of rights/warrants that must be exercised. | IFinancialInstrumentQuantity1Choice - Optional 0..1 |
| MinimumExercisableMultipleQuantity | Minimum multiple quantity of financial instrument or lot of rights/warrants that must be exercised. | IFinancialInstrumentQuantity1Choice - Optional 0..1 |
| FaceAmount | Signed face amount and amortised value of security. | IsoImpliedCurrencyAndAmount - Optional 0..1 |
| ContractSize | Ratio or multiplying factor used to convert one contract into a quantity. | IFinancialInstrumentQuantity18Choice - Optional 0..1 |
| FinancialInstrumentAttributeAdditionalDetails | Provides additional information about the financial instrument in narrative form. | IsoMax350Text - Optional 0..1 |
UnderlyingFinancialInstrument building block
Underlying financial instrument to which an trade confirmation is related. Underlying financial instrument to which an trade confirmation is related. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% UnderlyingFinancialInstrument7 recursion level 0 with max 1
UnderlyingFinancialInstrument7 *-- "1..1" SecurityIdentification19 : Identification
UnderlyingFinancialInstrument7 *-- "0..1" FinancialInstrumentAttributes124 : Attributes
%% SecurityIdentification19 recursion level 1 with max 1
class SecurityIdentification19{
ISIN IsoISINOct2015Identifier
Description IsoMax140Text
}
SecurityIdentification19 *-- "0..0" OtherIdentification1 : OtherIdentification
%% FinancialInstrumentAttributes124 recursion level 1 with max 1
class FinancialInstrumentAttributes124{
CertificateNumber IsoMax35Text
DenominationCurrency ActiveOrHistoricCurrencyCode
CouponDate IsoISODate
ExpiryDate IsoISODate
FloatingRateFixingDate IsoISODate
MaturityDate IsoISODate
IssueDate IsoISODate
NextCallableDate IsoISODate
ConversionDate IsoISODate
PutableDate IsoISODate
DatedDate IsoISODate
FirstPaymentDate IsoISODate
NextFactorDate IsoISODate
PreviousFactor IsoBaseOneRate
CurrentFactor IsoBaseOneRate
NextFactor IsoBaseOneRate
EndFactor IsoBaseOneRate
InterestRate IsoPercentageRate
NextInterestRate IsoPercentageRate
IndexRateBasis IsoPercentageRate
PercentageOfDebtClaims IsoPercentageRate
ConvertibleIndicator IsoYesNoIndicator
VariableRateIndicator IsoYesNoIndicator
CoveredIndicator IsoYesNoIndicator
CallableIndicator IsoYesNoIndicator
PutableIndicator IsoYesNoIndicator
WarrantAttachedOnDelivery IsoYesNoIndicator
OddCouponIndicator IsoYesNoIndicator
RedemptionYieldImpact IsoYesNoIndicator
YieldVariance IsoYesNoIndicator
FaceAmount IsoImpliedCurrencyAndAmount
FinancialInstrumentAttributeAdditionalDetails IsoMax350Text
}
FinancialInstrumentAttributes124 *-- "0..1" IMarketIdentification3Choice : PlaceOfListing
FinancialInstrumentAttributes124 *-- "0..1" Rating1 : Rating
FinancialInstrumentAttributes124 *-- "0..1" IInterestComputationMethodFormat4Choice : DayCountBasis
FinancialInstrumentAttributes124 *-- "0..1" IFormOfSecurity6Choice : RegistrationForm
FinancialInstrumentAttributes124 *-- "0..1" IFrequency23Choice : PaymentFrequency
FinancialInstrumentAttributes124 *-- "0..1" IFrequency23Choice : VariableRateChangeFrequency
FinancialInstrumentAttributes124 *-- "0..1" IClassificationType32Choice : ClassificationType
FinancialInstrumentAttributes124 *-- "0..1" IOptionStyle10Choice : OptionStyle
FinancialInstrumentAttributes124 *-- "0..1" IOptionType6Choice : OptionType
FinancialInstrumentAttributes124 *-- "0..1" INumber1Choice : CouponAttachedNumber
FinancialInstrumentAttributes124 *-- "0..1" GenericIdentification37 : PoolNumber
FinancialInstrumentAttributes124 *-- "0..1" INumber1Choice : VersionNumber
FinancialInstrumentAttributes124 *-- "0..1" Price14 : ExercisePrice
FinancialInstrumentAttributes124 *-- "0..1" Price14 : SubscriptionPrice
FinancialInstrumentAttributes124 *-- "0..1" Price14 : ConversionPrice
FinancialInstrumentAttributes124 *-- "0..1" Price14 : TaxableIncomePerShare
FinancialInstrumentAttributes124 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumNominalQuantity
FinancialInstrumentAttributes124 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableQuantity
FinancialInstrumentAttributes124 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumExercisableMultipleQuantity
FinancialInstrumentAttributes124 *-- "0..1" IFinancialInstrumentQuantity18Choice : ContractSize
UnderlyingFinancialInstrument7 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Identification | Identification of the underlying security by an ISIN. | SecurityIdentification19 - Required 1..1 |
| Attributes | Underlying financial instrument attributes to which an trade confirmation is related. | FinancialInstrumentAttributes124 - Optional 0..1 |
Stipulations building block
Additional restrictions on the financial instrument, related to the stipulation. Additional restrictions on the financial instrument, related to the stipulation. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% FinancialInstrumentStipulations4 recursion level 0 with max 1
class FinancialInstrumentStipulations4{
Geographics IsoMax35Text
AmortisableIndicator IsoYesNoIndicator
Purpose IsoMax256Text
AlternativeMinimumTaxIndicator IsoYesNoIndicator
AutoReinvestment IsoPercentageRate
TransactionConditions TradeTransactionCondition2Code
Currency ActiveCurrencyCode
Haircut IsoPercentageRate
InsuredIndicator IsoYesNoIndicator
LookBack IsoNumber
MaturityDate IsoISOYearMonth
IssueDate IsoISOYearMonth
IssuerIdentification IsoBICNonFIDec2014Identifier
IssueSize IsoNumber
MaximumSubstitution IsoNumber
PaymentFrequency Frequency1Code
Production IsoMax35Text
RestrictedIndicator IsoYesNoIndicator
PriceFrequency Frequency1Code
Sector IsoMax35Text
SubstitutionFrequency Frequency1Code
SubstitutionLeft IsoNumber
WholePoolIndicator IsoYesNoIndicator
PriceSource IsoMax35Text
ExpirationDate IsoISODateTime
OverAllotmentAmount IsoActiveCurrencyAndAmount
OverAllotmentRate IsoPercentageRate
CallableIndicator IsoYesNoIndicator
ConvertibleIndicator IsoYesNoIndicator
PutableIndicator IsoYesNoIndicator
PreFundedIndicator IsoYesNoIndicator
EscrowedIndicator IsoYesNoIndicator
PerpetualIndicator IsoYesNoIndicator
}
FinancialInstrumentStipulations4 *-- "0..1" AmountOrPercentageRange1 : YieldRange
FinancialInstrumentStipulations4 *-- "0..1" Rating1 : Rating
FinancialInstrumentStipulations4 *-- "0..1" AmountOrPercentageRange1 : CouponRange
FinancialInstrumentStipulations4 *-- "0..1" DateTimePeriod2 : CustomDate
FinancialInstrumentStipulations4 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumDenomination
FinancialInstrumentStipulations4 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumIncrement
FinancialInstrumentStipulations4 *-- "0..1" IFinancialInstrumentQuantity1Choice : MinimumQuantity
FinancialInstrumentStipulations4 *-- "0..1" AmountOrPercentageRange1 : PriceRange
%% AmountOrPercentageRange1 recursion level 1 with max 1
class AmountOrPercentageRange1{
Operation Operation1Code
}
AmountOrPercentageRange1 *-- "0..10" Term1 : Term
%% Rating1 recursion level 1 with max 1
class Rating1{
RatingScheme IsoMax35Text
ValueDate IsoISODateTime
ValueIdentification IsoRatingValueIdentifier
}
%% AmountOrPercentageRange1 recursion level 1 with max 1
class AmountOrPercentageRange1{
Operation Operation1Code
}
AmountOrPercentageRange1 *-- "0..10" Term1 : Term
%% DateTimePeriod2 recursion level 1 with max 1
class DateTimePeriod2{
FromDateTime IsoISODateTime
ToDateTime IsoISODateTime
}
%% IFinancialInstrumentQuantity1Choice recursion level 1 with max 1
%% IFinancialInstrumentQuantity1Choice recursion level 1 with max 1
%% IFinancialInstrumentQuantity1Choice recursion level 1 with max 1
%% AmountOrPercentageRange1 recursion level 1 with max 1
class AmountOrPercentageRange1{
Operation Operation1Code
}
AmountOrPercentageRange1 *-- "0..10" Term1 : Term
FinancialInstrumentStipulations4 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Geographics | Type of stipulation expressing geographical constraints on a fixed income instrument. It is expressed with a state or country abbreviation and a minimum or maximum percentage. Example: CA 0-80 (minimum of 80 percent in Californian assests). | IsoMax35Text - Optional 0..1 |
| YieldRange | Range of allowed yield. | AmountOrPercentageRange1 - Optional 0..1 |
| Rating | Range of assessment of securities credit and investment risk. | Rating1 - Optional 0..1 |
| CouponRange | Identification of a range of coupon numbers attached to its related financial instrument. | AmountOrPercentageRange1 - Optional 0..1 |
| AmortisableIndicator | Indicates whether the financial instrument repays the principal amount in parts during the life cycle of the security. | IsoYesNoIndicator - Optional 0..1 |
| Purpose | Reason for which money is raised through the issuance of a security. | IsoMax256Text - Optional 0..1 |
| AlternativeMinimumTaxIndicator | Identifies whether the issue is subject to alternative minimum taxation (used for municipal bonds). | IsoYesNoIndicator - Optional 0..1 |
| AutoReinvestment | Indicates an instruction to reinvest dividends in the underlying security (or proceeds at maturity in a similar instrument) if the current rate is or better. | IsoPercentageRate - Optional 0..1 |
| TransactionConditions | Indicates the conditions under which the order/trade is to be/was executed. | TradeTransactionCondition2Code - Optional 0..1 |
| Currency | Currency in which a security is issued or redenominated. | ActiveCurrencyCode - Optional 0..1 |
| CustomDate | Indicates an instruction to override an investment’s default start and/or end date with a custom date. | DateTimePeriod2 - Optional 0..1 |
| Haircut | Haircut or valuation factor on the security expressed as a percentage. | IsoPercentageRate - Optional 0..1 |
| InsuredIndicator | Identifies whether the lender is assured partial or full payment by a third party if the borrower defaults. | IsoYesNoIndicator - Optional 0..1 |
| LookBack | Indicates an instruction or attribute giving the number of days to be included in the look-back period for the investment. E.g. some options allow exercise based on the underlying asset’s optimal value over the look-back period. | IsoNumber - Optional 0..1 |
| MaturityDate | Indicates the maturity date. | IsoISOYearMonth - Optional 0..1 |
| IssueDate | Indicates the issue date. | IsoISOYearMonth - Optional 0..1 |
| IssuerIdentification | Identification of the issuer. | IsoBICNonFIDec2014Identifier - Optional 0..1 |
| IssueSize | Identifies the issue size range. | IsoNumber - Optional 0..1 |
| MinimumDenomination | Indicates the minimum denomination of a security. | IFinancialInstrumentQuantity1Choice - Optional 0..1 |
| MaximumSubstitution | Maximum number of time the collateral can be substitute. | IsoNumber - Optional 0..1 |
| MinimumIncrement | Indicates the minimum tradable increments of a security. | IFinancialInstrumentQuantity1Choice - Optional 0..1 |
| PaymentFrequency | Indicates the periodic or regular cycle of interest payments. | Frequency1Code - Optional 0..1 |
| MinimumQuantity | Indicates the minimum tradable quantity of a security. | IFinancialInstrumentQuantity1Choice - Optional 0..1 |
| Production | Indicates a search criterion used when looking to buy a bond, particularly an MBS, issued in a particular year. | IsoMax35Text - Optional 0..1 |
| RestrictedIndicator | Identifies if the securities is restricted or not (as per Rule 144). | IsoYesNoIndicator - Optional 0..1 |
| PriceFrequency | Indicates the frequency at which the bond is re-rated and therefore re-priced (bond attribute, particularly of floating rate and index linked instruments). | Frequency1Code - Optional 0..1 |
| Sector | Indicates the market sector the security is classified as. E.g. pharmacuticals, automobile, housing, etc. | IsoMax35Text - Optional 0..1 |
| SubstitutionFrequency | Indicates the maximum number of times collateral can be substituted. | Frequency1Code - Optional 0..1 |
| SubstitutionLeft | Number of remaining times the collateral can be substitute. | IsoNumber - Optional 0..1 |
| WholePoolIndicator | Indicates a search criterion when looking to buy an MBS that either is [yes] or is not [no] an entire pool. | IsoYesNoIndicator - Optional 0..1 |
| PriceSource | Identifies the Benchmark source price (eg. BB Generic, BB Fairvalue, Brokertec.). | IsoMax35Text - Optional 0..1 |
| ExpirationDate | Date/time at which an interest bearing security becomes due and assets are to be repaid. | IsoISODateTime - Optional 0..1 |
| OverAllotmentAmount | Amount for which a security can be overalloted (as in greenshoe option). | IsoActiveCurrencyAndAmount - Optional 0..1 |
| OverAllotmentRate | Percentage for which a security can be overalloted (as in greenshoe option). | IsoPercentageRate - Optional 0..1 |
| PriceRange | Indicates a search criterion used when looking to buy a bond within a particular price range. | AmountOrPercentageRange1 - Optional 0..1 |
| CallableIndicator | Indicates whether the issuer has the right to pay the security prior to maturity. Also called RetractableIndicator. | IsoYesNoIndicator - Optional 0..1 |
| ConvertibleIndicator | Indicates whether the interest bearing security is convertible into another type of security. | IsoYesNoIndicator - Optional 0..1 |
| PutableIndicator | Indicates whether the holder has the right to ask for redemption of the security prior to final maturity. Also called RedeemableIndicator. | IsoYesNoIndicator - Optional 0..1 |
| PreFundedIndicator | Indicates whether an interest bearing instrument is deposited in a fund that will be used to pay debt service on refunded securities. | IsoYesNoIndicator - Optional 0..1 |
| EscrowedIndicator | Indicates whether an interest bearing instrument is being escrowed or collateralized either by direct obligations guaranteed by the US government, or by other types of securities. The maturity schedules of the securities in the escrow fund are determined in such a way to pay the maturity value, coupon, and premium payments (if any) of the refunded bonds. | IsoYesNoIndicator - Optional 0..1 |
| PerpetualIndicator | Indicates whether the security has no maturity date. | IsoYesNoIndicator - Optional 0..1 |
ConfirmationParties building block
Parties involved in the confirmation of the details of a trade. Parties used for acting parties that apply either to the whole message or to individual sides. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% ConfirmationParties6 recursion level 0 with max 1
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails7 : Buyer
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails7 : Borrower
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails7 : Seller
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails7 : Lender
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails8 : BrokerOfCredit
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails8 : IntroducingFirm
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails8 : StepInFirm
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails8 : StepOutFirm
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails9 : ClearingFirm
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails9 : ExecutingBroker
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails8 : CMUParty
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails8 : CMUCounterparty
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails8 : AffirmingParty
ConfirmationParties6 *-- "0..1" ConfirmationPartyDetails10 : TradeBeneficiaryParty
%% ConfirmationPartyDetails7 recursion level 1 with max 1
class ConfirmationPartyDetails7{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails7 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails7 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails7 *-- "0..1" PartyTextInformation5 : AdditionalInformation
ConfirmationPartyDetails7 *-- "0..1" IInvestorCapacity4Choice : InvestorCapacity
ConfirmationPartyDetails7 *-- "0..1" ITradingPartyCapacity4Choice : TradingPartyCapacity
%% ConfirmationPartyDetails7 recursion level 1 with max 1
class ConfirmationPartyDetails7{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails7 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails7 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails7 *-- "0..1" PartyTextInformation5 : AdditionalInformation
ConfirmationPartyDetails7 *-- "0..1" IInvestorCapacity4Choice : InvestorCapacity
ConfirmationPartyDetails7 *-- "0..1" ITradingPartyCapacity4Choice : TradingPartyCapacity
%% ConfirmationPartyDetails7 recursion level 1 with max 1
class ConfirmationPartyDetails7{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails7 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails7 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails7 *-- "0..1" PartyTextInformation5 : AdditionalInformation
ConfirmationPartyDetails7 *-- "0..1" IInvestorCapacity4Choice : InvestorCapacity
ConfirmationPartyDetails7 *-- "0..1" ITradingPartyCapacity4Choice : TradingPartyCapacity
%% ConfirmationPartyDetails7 recursion level 1 with max 1
class ConfirmationPartyDetails7{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails7 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails7 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails7 *-- "0..1" PartyTextInformation5 : AdditionalInformation
ConfirmationPartyDetails7 *-- "0..1" IInvestorCapacity4Choice : InvestorCapacity
ConfirmationPartyDetails7 *-- "0..1" ITradingPartyCapacity4Choice : TradingPartyCapacity
%% ConfirmationPartyDetails8 recursion level 1 with max 1
class ConfirmationPartyDetails8{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails8 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails8 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails8 *-- "0..1" PartyTextInformation5 : AdditionalInformation
%% ConfirmationPartyDetails8 recursion level 1 with max 1
class ConfirmationPartyDetails8{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails8 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails8 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails8 *-- "0..1" PartyTextInformation5 : AdditionalInformation
%% ConfirmationPartyDetails8 recursion level 1 with max 1
class ConfirmationPartyDetails8{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails8 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails8 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails8 *-- "0..1" PartyTextInformation5 : AdditionalInformation
%% ConfirmationPartyDetails8 recursion level 1 with max 1
class ConfirmationPartyDetails8{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails8 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails8 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails8 *-- "0..1" PartyTextInformation5 : AdditionalInformation
%% ConfirmationPartyDetails9 recursion level 1 with max 1
class ConfirmationPartyDetails9{
ProcessingIdentification IsoMax35Text
InvestorProtectionAssociationMembership IsoYesNoIndicator
}
ConfirmationPartyDetails9 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails9 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails9 *-- "0..1" PartyTextInformation5 : AdditionalInformation
%% ConfirmationPartyDetails9 recursion level 1 with max 1
class ConfirmationPartyDetails9{
ProcessingIdentification IsoMax35Text
InvestorProtectionAssociationMembership IsoYesNoIndicator
}
ConfirmationPartyDetails9 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails9 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails9 *-- "0..1" PartyTextInformation5 : AdditionalInformation
%% ConfirmationPartyDetails8 recursion level 1 with max 1
class ConfirmationPartyDetails8{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails8 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails8 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails8 *-- "0..1" PartyTextInformation5 : AdditionalInformation
%% ConfirmationPartyDetails8 recursion level 1 with max 1
class ConfirmationPartyDetails8{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails8 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails8 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails8 *-- "0..1" PartyTextInformation5 : AdditionalInformation
%% ConfirmationPartyDetails8 recursion level 1 with max 1
class ConfirmationPartyDetails8{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails8 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails8 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails8 *-- "0..1" PartyTextInformation5 : AdditionalInformation
%% ConfirmationPartyDetails10 recursion level 1 with max 1
class ConfirmationPartyDetails10{
ProcessingIdentification IsoMax35Text
}
ConfirmationPartyDetails10 *-- "1..1" IPartyIdentification117Choice : Identification
ConfirmationPartyDetails10 *-- "0..1" SecuritiesAccount35 : SafekeepingAccount
ConfirmationPartyDetails10 *-- "0..1" IAccountIdentification55Choice : CashDetails
ConfirmationPartyDetails10 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
ConfirmationPartyDetails10 *-- "0..1" PartyTextInformation5 : AdditionalInformation
ConfirmationPartyDetails10 *-- "0..1" ITradingPartyCapacity3Choice : PartyCapacity
ConfirmationParties6 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Buyer | Party that buys goods or services, or a financial instrument. | ConfirmationPartyDetails7 - Optional 0..1 |
| Borrower | Party that has applied, met specific requirements, and received a monetary or securities loan from a lender. The party initiating the request signs a promissory note agreeing to pay the lien holder back during a specified timeframe for the entire loan amount plus any additional fees. The borrower is legally responsible for repayment of the loan and is subject to any penalties for not repaying the loan back based on the lending terms agreed upon. | ConfirmationPartyDetails7 - Optional 0..1 |
| Seller | Party that sells goods or services, or a financial instrument. | ConfirmationPartyDetails7 - Optional 0..1 |
| Lender | A private, public or institutional entity which makes funds available to others to borrow. | ConfirmationPartyDetails7 - Optional 0..1 |
| BrokerOfCredit | Brokerage firm which is the commissioned broker in a multi-broker trade. | ConfirmationPartyDetails8 - Optional 0..1 |
| IntroducingFirm | Broker or other intermediary with the closest association with the investor. | ConfirmationPartyDetails8 - Optional 0..1 |
| StepInFirm | Brokerage firm assigned to take credit on the trade from the step-out brokerage firm. | ConfirmationPartyDetails8 - Optional 0..1 |
| StepOutFirm | Brokerage firm that executes an order, but gives other firms credit and some of the commission for the trade. | ConfirmationPartyDetails8 - Optional 0..1 |
| ClearingFirm | Party, also know as take up broker, that settles security transactions from another broker for a fee. | ConfirmationPartyDetails9 - Optional 0..1 |
| ExecutingBroker | Party responsible for executing an order (for example, an executing or give-up broker). Usually a commission is charged to the client for executing an order. | ConfirmationPartyDetails9 - Optional 0..1 |
| CMUParty | Party sending the message to the CMU (Central Matching Utility) to identify the actual business unit as known to the CMU (Central Matching Utility). | ConfirmationPartyDetails8 - Optional 0..1 |
| CMUCounterparty | Actual business unit of the counterparty to the sender of the message to the CMU (Central Matching Utility) as known to the CMU (Central Matching Utility). | ConfirmationPartyDetails8 - Optional 0..1 |
| AffirmingParty | Party (buyer or seller) that positively affirms the details of a previously agreed security trade confirmation. | ConfirmationPartyDetails8 - Optional 0..1 |
| TradeBeneficiaryParty | Party involved in a legal proceeding, agreement or other transaction. | ConfirmationPartyDetails10 - Optional 0..1 |
SettlementParameters building block
Parameters which explicitly state the conditions that must be fulfilled before a particular transaction of a financial instrument can be settled. These parameters are defined by the instructing party in compliance with settlement rules in the market the transaction will settle in. Parameters which explicitly state the conditions that must be fulfilled before a particular transaction of a financial instrument can be settled. These parameters are defined by the instructing party in compliance with settlement rules in the market the transaction will settle in. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% SettlementDetails213 recursion level 0 with max 1
class SettlementDetails213{
HoldIndicator IsoYesNoIndicator
PartialSettlementIndicator IsoYesNoIndicator
StampDutyIndicator IsoYesNoIndicator
ReturnLeg IsoYesNoIndicator
EligibleForCollateral IsoYesNoIndicator
}
SettlementDetails213 *-- "1..1" ISettlementTransactionType3Choice : SettlementTransactionType
SettlementDetails213 *-- "0..1" IPriorityNumeric4Choice : Priority
SettlementDetails213 *-- "0..1" ISettlementInstructionGeneration2Choice : SettlementInstructionGeneration
SettlementDetails213 *-- "0..0" ISettlementTransactionCondition31Choice : SettlementTransactionCondition
SettlementDetails213 *-- "0..1" IBeneficialOwnership4Choice : BeneficialOwnership
SettlementDetails213 *-- "0..1" IBlockTrade4Choice : BlockTrade
SettlementDetails213 *-- "0..1" ICentralCounterPartyEligibility4Choice : CCPEligibility
SettlementDetails213 *-- "0..1" ICashSettlementSystem4Choice : CashClearingSystem
SettlementDetails213 *-- "0..1" IExposureType18Choice : ExposureType
SettlementDetails213 *-- "0..1" IFXStandingInstruction4Choice : FXStandingInstruction
SettlementDetails213 *-- "0..1" ICurrencyToBuyOrSell1Choice : CurrencyToBuyOrSell
SettlementDetails213 *-- "0..1" IMarketClientSide6Choice : MarketClientSide
SettlementDetails213 *-- "0..1" INettingEligibility4Choice : NettingEligibility
SettlementDetails213 *-- "0..1" IRegistration9Choice : Registration
SettlementDetails213 *-- "0..1" IRepurchaseType22Choice : RepurchaseType
SettlementDetails213 *-- "0..1" IRestriction5Choice : LegalRestrictions
SettlementDetails213 *-- "0..1" ISecuritiesRTGS4Choice : SecuritiesRTGS
SettlementDetails213 *-- "0..1" ISettlingCapacity9Choice : SettlingCapacity
SettlementDetails213 *-- "0..1" ISettlementSystemMethod4Choice : SettlementSystemMethod
SettlementDetails213 *-- "0..1" ITaxCapacityParty4Choice : TaxCapacity
SettlementDetails213 *-- "0..1" GenericIdentification30 : StampDutyTaxBasis
SettlementDetails213 *-- "0..1" ITracking4Choice : Tracking
SettlementDetails213 *-- "0..1" IAutomaticBorrowing6Choice : AutomaticBorrowing
SettlementDetails213 *-- "0..1" ILetterOfGuarantee4Choice : LetterOfGuarantee
SettlementDetails213 *-- "0..1" IModificationCancellationAllowed4Choice : ModificationCancellationAllowed
%% ISettlementTransactionType3Choice recursion level 1 with max 1
%% IPriorityNumeric4Choice recursion level 1 with max 1
%% ISettlementInstructionGeneration2Choice recursion level 1 with max 1
%% ISettlementTransactionCondition31Choice recursion level 1 with max 1
%% IBeneficialOwnership4Choice recursion level 1 with max 1
%% IBlockTrade4Choice recursion level 1 with max 1
%% ICentralCounterPartyEligibility4Choice recursion level 1 with max 1
%% ICashSettlementSystem4Choice recursion level 1 with max 1
%% IExposureType18Choice recursion level 1 with max 1
%% IFXStandingInstruction4Choice recursion level 1 with max 1
%% ICurrencyToBuyOrSell1Choice recursion level 1 with max 1
%% IMarketClientSide6Choice recursion level 1 with max 1
%% INettingEligibility4Choice recursion level 1 with max 1
%% IRegistration9Choice recursion level 1 with max 1
%% IRepurchaseType22Choice recursion level 1 with max 1
%% IRestriction5Choice recursion level 1 with max 1
%% ISecuritiesRTGS4Choice recursion level 1 with max 1
%% ISettlingCapacity9Choice recursion level 1 with max 1
%% ISettlementSystemMethod4Choice recursion level 1 with max 1
%% ITaxCapacityParty4Choice recursion level 1 with max 1
%% GenericIdentification30 recursion level 1 with max 1
class GenericIdentification30{
Identification IsoExact4AlphaNumericText
Issuer IsoMax35Text
SchemeName IsoMax35Text
}
%% ITracking4Choice recursion level 1 with max 1
%% IAutomaticBorrowing6Choice recursion level 1 with max 1
%% ILetterOfGuarantee4Choice recursion level 1 with max 1
%% IModificationCancellationAllowed4Choice recursion level 1 with max 1
SettlementDetails213 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| SettlementTransactionType | Indicates whether the trade is to be settled as principal or netted off against another trade. | ISettlementTransactionType3Choice - Required 1..1 |
| HoldIndicator | Specifies whether the transaction is on hold/blocked/frozen. | IsoYesNoIndicator - Optional 0..1 |
| Priority | Specifies whether the transaction is to be executed with a high priority. | IPriorityNumeric4Choice - Optional 0..1 |
| SettlementInstructionGeneration | Specifies if the Electronic Trade Confirmation (ETC) service provider is to generate or not a settlement instruction. | ISettlementInstructionGeneration2Choice - Optional 0..1 |
| SettlementTransactionCondition | Conditions under which the order/trade is to be settled. | ISettlementTransactionCondition31Choice - Unknown 0..0 |
| PartialSettlementIndicator | Specifies whether partial settlement is allowed. | IsoYesNoIndicator - Optional 0..1 |
| BeneficialOwnership | Specifies whether there is change of beneficial ownership. | IBeneficialOwnership4Choice - Optional 0..1 |
| BlockTrade | Specifies whether the settlement instruction is a block parent or child. | IBlockTrade4Choice - Optional 0..1 |
| CCPEligibility | Specifies whether the settlement transaction is CCP (Central Counterparty) eligible. | ICentralCounterPartyEligibility4Choice - Optional 0..1 |
| CashClearingSystem | Specifies the category of cash clearing system, eg, cheque clearing. | ICashSettlementSystem4Choice - Optional 0..1 |
| ExposureType | Specifies the underlying business area/type of trade causing the collateral movement. | IExposureType18Choice - Optional 0..1 |
| FXStandingInstruction | Specifies whether the forex standing instruction in place should apply. | IFXStandingInstruction4Choice - Optional 0..1 |
| CurrencyToBuyOrSell | Account servicer is instructed to buy the indicated currency after the receipt of cash proceeds or to sell the indicated currency in order to obtain the necessary currency to fund the transaction. | ICurrencyToBuyOrSell1Choice - Optional 0..1 |
| MarketClientSide | Specifies if an instruction is for a market side or a client side transaction. | IMarketClientSide6Choice - Optional 0..1 |
| NettingEligibility | Specifies whether the settlement transaction is eligible for netting. | INettingEligibility4Choice - Optional 0..1 |
| Registration | Specifies whether registration should occur upon receipt. | IRegistration9Choice - Optional 0..1 |
| RepurchaseType | Specifies whether the rate is fixed, variable or a forfeit. | IRepurchaseType22Choice - Optional 0..1 |
| LegalRestrictions | Regulatory restrictions applicable to a security. | IRestriction5Choice - Optional 0..1 |
| SecuritiesRTGS | Specifies whether the settlement transaction is to be settled through an RTGS or a non RTGS system. | ISecuritiesRTGS4Choice - Optional 0..1 |
| SettlingCapacity | Role of a party in the settlement of the transaction. | ISettlingCapacity9Choice - Optional 0..1 |
| SettlementSystemMethod | Specifies whether the settlement instruction is to be settled through the default or the alternate settlement system. | ISettlementSystemMethod4Choice - Optional 0..1 |
| TaxCapacity | Tax role capacity of the instructing party. | ITaxCapacityParty4Choice - Optional 0..1 |
| StampDutyIndicator | Indicates whether the settlement amount includes the stamp duty amount. | IsoYesNoIndicator - Optional 0..1 |
| StampDutyTaxBasis | Specifies the stamp duty type or exemption reason applicable to the settlement transaction. | GenericIdentification30 - Optional 0..1 |
| Tracking | Specifies whether the loan and/or collateral is tracked. | ITracking4Choice - Optional 0..1 |
| AutomaticBorrowing | Condition for automatic borrowing. | IAutomaticBorrowing6Choice - Optional 0..1 |
| LetterOfGuarantee | Specifies whether physical settlement may be executed using a letter of guarantee or if the physical certificates should be used. | ILetterOfGuarantee4Choice - Optional 0..1 |
| ReturnLeg | Specifies whether, for a securities lending/borrowing settlement transaction, the lender will instruct the return leg as agreed with the borrower. | IsoYesNoIndicator - Optional 0..1 |
| ModificationCancellationAllowed | Specifies whether a third party is allowed to modify or cancel the transaction. | IModificationCancellationAllowed4Choice - Optional 0..1 |
| EligibleForCollateral | Specifies whether securities should be included in the pool of securities eligible for collateral purposes. | IsoYesNoIndicator - Optional 0..1 |
StandingSettlementInstruction building block
Specifies what settlement standing instruction database is to be used to derive the settlement parties involved in the transaction. Details of the standing settlement instruction to be applied. For comparison, see the ISO20022 official specification
classDiagram direction tb %% StandingSettlementInstruction13 recursion level 0 with max 1 StandingSettlementInstruction13 *-- "1..1" ISettlementStandingInstructionDatabase4Choice : SettlementStandingInstructionDatabase StandingSettlementInstruction13 *-- "0..1" IPartyIdentification117Choice : Vendor StandingSettlementInstruction13 *-- "0..1" SettlementParties59 : OtherDeliveringSettlementParties StandingSettlementInstruction13 *-- "0..1" SettlementParties59 : OtherReceivingSettlementParties %% ISettlementStandingInstructionDatabase4Choice recursion level 1 with max 1 %% IPartyIdentification117Choice recursion level 1 with max 1 %% SettlementParties59 recursion level 1 with max 1 SettlementParties59 *-- "0..1" PartyIdentification118 : Depository SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party1 SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party2 SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party3 SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party4 SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party5 %% SettlementParties59 recursion level 1 with max 1 SettlementParties59 *-- "0..1" PartyIdentification118 : Depository SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party1 SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party2 SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party3 SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party4 SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party5
StandingSettlementInstruction13 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| SettlementStandingInstructionDatabase | Specifies what settlement standing instruction database is to be used to derive the settlement parties involved in the transaction. | ISettlementStandingInstructionDatabase4Choice - Required 1..1 |
| Vendor | Vendor of the Settlement Standing Instruction database requested to be consulted. | IPartyIdentification117Choice - Optional 0..1 |
| OtherDeliveringSettlementParties | Delivering parties, other than the seller, needed for deriving the standing settlement instruction (for example, depository) or provided for information purposes (for example, instructing party settlement chain). | SettlementParties59 - Optional 0..1 |
| OtherReceivingSettlementParties | Receiving parties, other than the buyer, needed for deriving the standing settlement instruction (for example, depository) or provided for information purposes (for example, instructing party settlement chain). | SettlementParties59 - Optional 0..1 |
DeliveringSettlementParties building block
Specifies the chain of delivering settlement parties. Chain of parties involved in the settlement of a transaction, including receipts and deliveries, book transfers, treasury deals, or other activities, resulting in the movement of a security or amount of money from one account to another. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% SettlementParties59 recursion level 0 with max 1
SettlementParties59 *-- "0..1" PartyIdentification118 : Depository
SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party1
SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party2
SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party3
SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party4
SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party5
%% PartyIdentification118 recursion level 1 with max 1
PartyIdentification118 *-- "1..1" IPartyIdentification116Choice : Identification
PartyIdentification118 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
PartyIdentification118 *-- "0..1" PartyTextInformation1 : AdditionalInformation
%% PartyIdentificationAndAccount155 recursion level 1 with max 1
class PartyIdentificationAndAccount155{
AdditionalInformation IsoMax350Text
SafekeepingAccount IsoMax35Text
}
PartyIdentificationAndAccount155 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount155 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
%% PartyIdentificationAndAccount155 recursion level 1 with max 1
class PartyIdentificationAndAccount155{
AdditionalInformation IsoMax350Text
SafekeepingAccount IsoMax35Text
}
PartyIdentificationAndAccount155 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount155 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
%% PartyIdentificationAndAccount155 recursion level 1 with max 1
class PartyIdentificationAndAccount155{
AdditionalInformation IsoMax350Text
SafekeepingAccount IsoMax35Text
}
PartyIdentificationAndAccount155 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount155 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
%% PartyIdentificationAndAccount155 recursion level 1 with max 1
class PartyIdentificationAndAccount155{
AdditionalInformation IsoMax350Text
SafekeepingAccount IsoMax35Text
}
PartyIdentificationAndAccount155 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount155 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
%% PartyIdentificationAndAccount155 recursion level 1 with max 1
class PartyIdentificationAndAccount155{
AdditionalInformation IsoMax350Text
SafekeepingAccount IsoMax35Text
}
PartyIdentificationAndAccount155 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount155 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
SettlementParties59 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Depository | First party in the settlement chain. In a plain vanilla settlement, it is the Central Securities Depository where the counterparty requests to receive the financial instrument or from where the counterparty delivers the financial instruments. | PartyIdentification118 - Optional 0..1 |
| Party1 | Party that, in a settlement chain interacts with the depository. | PartyIdentificationAndAccount155 - Optional 0..1 |
| Party2 | Party that, in a settlement chain interacts with the party 1. | PartyIdentificationAndAccount155 - Optional 0..1 |
| Party3 | Party that, in a settlement chain interacts with the party 2. | PartyIdentificationAndAccount155 - Optional 0..1 |
| Party4 | Party that, in a settlement chain interacts with the party 3. | PartyIdentificationAndAccount155 - Optional 0..1 |
| Party5 | Party that, in a settlement chain interacts with the party 4. | PartyIdentificationAndAccount155 - Optional 0..1 |
ReceivingSettlementParties building block
Specifies the chain of receiving settlement parties. Chain of parties involved in the settlement of a transaction, including receipts and deliveries, book transfers, treasury deals, or other activities, resulting in the movement of a security or amount of money from one account to another. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% SettlementParties59 recursion level 0 with max 1
SettlementParties59 *-- "0..1" PartyIdentification118 : Depository
SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party1
SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party2
SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party3
SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party4
SettlementParties59 *-- "0..1" PartyIdentificationAndAccount155 : Party5
%% PartyIdentification118 recursion level 1 with max 1
PartyIdentification118 *-- "1..1" IPartyIdentification116Choice : Identification
PartyIdentification118 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
PartyIdentification118 *-- "0..1" PartyTextInformation1 : AdditionalInformation
%% PartyIdentificationAndAccount155 recursion level 1 with max 1
class PartyIdentificationAndAccount155{
AdditionalInformation IsoMax350Text
SafekeepingAccount IsoMax35Text
}
PartyIdentificationAndAccount155 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount155 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
%% PartyIdentificationAndAccount155 recursion level 1 with max 1
class PartyIdentificationAndAccount155{
AdditionalInformation IsoMax350Text
SafekeepingAccount IsoMax35Text
}
PartyIdentificationAndAccount155 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount155 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
%% PartyIdentificationAndAccount155 recursion level 1 with max 1
class PartyIdentificationAndAccount155{
AdditionalInformation IsoMax350Text
SafekeepingAccount IsoMax35Text
}
PartyIdentificationAndAccount155 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount155 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
%% PartyIdentificationAndAccount155 recursion level 1 with max 1
class PartyIdentificationAndAccount155{
AdditionalInformation IsoMax350Text
SafekeepingAccount IsoMax35Text
}
PartyIdentificationAndAccount155 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount155 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
%% PartyIdentificationAndAccount155 recursion level 1 with max 1
class PartyIdentificationAndAccount155{
AdditionalInformation IsoMax350Text
SafekeepingAccount IsoMax35Text
}
PartyIdentificationAndAccount155 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount155 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
SettlementParties59 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Depository | First party in the settlement chain. In a plain vanilla settlement, it is the Central Securities Depository where the counterparty requests to receive the financial instrument or from where the counterparty delivers the financial instruments. | PartyIdentification118 - Optional 0..1 |
| Party1 | Party that, in a settlement chain interacts with the depository. | PartyIdentificationAndAccount155 - Optional 0..1 |
| Party2 | Party that, in a settlement chain interacts with the party 1. | PartyIdentificationAndAccount155 - Optional 0..1 |
| Party3 | Party that, in a settlement chain interacts with the party 2. | PartyIdentificationAndAccount155 - Optional 0..1 |
| Party4 | Party that, in a settlement chain interacts with the party 3. | PartyIdentificationAndAccount155 - Optional 0..1 |
| Party5 | Party that, in a settlement chain interacts with the party 4. | PartyIdentificationAndAccount155 - Optional 0..1 |
CashParties building block
Cash parties involved in the specific transaction. Payment processes required to transfer cash from the debtor to the creditor. For comparison, see the ISO20022 official specification
classDiagram direction tb %% CashParties33 recursion level 0 with max 1 CashParties33 *-- "0..1" PartyIdentificationAndAccount148 : Debtor CashParties33 *-- "0..1" PartyIdentificationAndAccount148 : DebtorAgent CashParties33 *-- "0..1" PartyIdentificationAndAccount148 : Creditor CashParties33 *-- "0..1" PartyIdentificationAndAccount148 : CreditorAgent CashParties33 *-- "0..1" PartyIdentificationAndAccount148 : Intermediary %% PartyIdentificationAndAccount148 recursion level 1 with max 1 PartyIdentificationAndAccount148 *-- "1..1" IPartyIdentification117Choice : Identification PartyIdentificationAndAccount148 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : CashAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : ChargesAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : CommissionAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : TaxAccount PartyIdentificationAndAccount148 *-- "0..1" PartyTextInformation2 : AdditionalInformation %% PartyIdentificationAndAccount148 recursion level 1 with max 1 PartyIdentificationAndAccount148 *-- "1..1" IPartyIdentification117Choice : Identification PartyIdentificationAndAccount148 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : CashAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : ChargesAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : CommissionAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : TaxAccount PartyIdentificationAndAccount148 *-- "0..1" PartyTextInformation2 : AdditionalInformation %% PartyIdentificationAndAccount148 recursion level 1 with max 1 PartyIdentificationAndAccount148 *-- "1..1" IPartyIdentification117Choice : Identification PartyIdentificationAndAccount148 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : CashAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : ChargesAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : CommissionAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : TaxAccount PartyIdentificationAndAccount148 *-- "0..1" PartyTextInformation2 : AdditionalInformation %% PartyIdentificationAndAccount148 recursion level 1 with max 1 PartyIdentificationAndAccount148 *-- "1..1" IPartyIdentification117Choice : Identification PartyIdentificationAndAccount148 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : CashAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : ChargesAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : CommissionAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : TaxAccount PartyIdentificationAndAccount148 *-- "0..1" PartyTextInformation2 : AdditionalInformation %% PartyIdentificationAndAccount148 recursion level 1 with max 1 PartyIdentificationAndAccount148 *-- "1..1" IPartyIdentification117Choice : Identification PartyIdentificationAndAccount148 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : CashAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : ChargesAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : CommissionAccount PartyIdentificationAndAccount148 *-- "0..1" ICashAccountIdentification5Choice : TaxAccount PartyIdentificationAndAccount148 *-- "0..1" PartyTextInformation2 : AdditionalInformation
CashParties33 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Debtor | Party that owes an amount of money to the (ultimate) creditor. | PartyIdentificationAndAccount148 - Optional 0..1 |
| DebtorAgent | Financial institution servicing an account for the debtor. | PartyIdentificationAndAccount148 - Optional 0..1 |
| Creditor | Party to which an amount of money is due. | PartyIdentificationAndAccount148 - Optional 0..1 |
| CreditorAgent | Financial institution servicing an account for the creditor. | PartyIdentificationAndAccount148 - Optional 0..1 |
| Intermediary | Financial institution through which the transaction must pass to reach the account with institution. | PartyIdentificationAndAccount148 - Optional 0..1 |
ClearingDetails building block
Provides clearing member information. Provides the clearing details. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% Clearing5 recursion level 0 with max 1
Clearing5 *-- "1..0" PartyIdentificationAndAccount149 : ClearingMember
Clearing5 *-- "0..1" IPartyIdentification127Choice : ClearingSegment
%% PartyIdentificationAndAccount149 recursion level 1 with max 1
class PartyIdentificationAndAccount149{
Side ClearingSide1Code
ProcessingIdentification IsoMax35Text
}
PartyIdentificationAndAccount149 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount149 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
PartyIdentificationAndAccount149 *-- "0..1" SecuritiesAccount20 : ClearingAccount
PartyIdentificationAndAccount149 *-- "0..1" PartyTextInformation1 : AdditionalInformation
%% IPartyIdentification127Choice recursion level 1 with max 1
Clearing5 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| ClearingMember | Provides details about the clearing member identification and account. | PartyIdentificationAndAccount149 - Unknown 1..0 |
| ClearingSegment | Clearing organisation that will clear the trade. Note: This field allows Clearing Member Firm to segregate flows coming from clearing counterparty’s clearing system. Indeed, Clearing Member Firms receive messages from the same system (same sender) and this field allows them to know if the message is related to equities or derivatives. | IPartyIdentification127Choice - Optional 0..1 |
SettlementAmount building block
Total amount of money to be paid or received in exchange for the securities. The amount includes the principal with any commissions and fees or accrued interest. Posting of an item to a cash account, in the context of a cash transaction, that results in an increase or decrease to the balance of the account. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% AmountAndDirection28 recursion level 0 with max 1
class AmountAndDirection28{
AccruedInterestIndicator IsoYesNoIndicator
StampDutyIndicator IsoYesNoIndicator
Amount IsoActiveCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection28 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
AmountAndDirection28 *-- "0..1" IDateAndDateTime1Choice : ValueDate
%% ForeignExchangeTerms18 recursion level 1 with max 1
class ForeignExchangeTerms18{
UnitCurrency ActiveCurrencyCode
QuotedCurrency ActiveCurrencyCode
ExchangeRate IsoBaseOneRate
ConvertedAmount IsoActiveCurrencyAndAmount
}
%% IDateAndDateTime1Choice recursion level 1 with max 1
AmountAndDirection28 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| AccruedInterestIndicator | Indicates whether the net proceeds include interest accrued on the financial instrument. | IsoYesNoIndicator - Optional 0..1 |
| StampDutyIndicator | Indicates whether the settlement amount includes the stamp duty amount. | IsoYesNoIndicator - Optional 0..1 |
| Amount | Amount of money in the cash entry. | IsoActiveCurrencyAndAmount - Required 1..1 |
| CreditDebitIndicator | Indicates whether an entry is a credit or a debit. | CreditDebitCode - Optional 0..1 |
| OriginalCurrencyAndOrderedAmount | Posting/settlement amount in its original currency when conversion from/into another currency has occurred. | IsoActiveOrHistoricCurrencyAndAmount - Optional 0..1 |
| ForeignExchangeDetails | Information needed to process a currency exchange or conversion. | ForeignExchangeTerms18 - Optional 0..1 |
| ValueDate | Date and time at which the cash is at the disposal of the credit account owner, or ceases to be at the disposal of the debit account owner. | IDateAndDateTime1Choice - Optional 0..1 |
OtherAmounts building block
Other amounts than the settlement amount. Identifies other amounts pertaining to the transaction. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% OtherAmounts16 recursion level 0 with max 1
class OtherAmounts16{
RemunerationAmountRequest IsoYesNoIndicator
OddLotFee IsoYesNoIndicator
}
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ChargesFees
OtherAmounts16 *-- "0..1" AmountAndDirection29 : CountryNationalFederalTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ExecutingBrokerAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : IssueDiscountAllowance
OtherAmounts16 *-- "0..1" AmountAndDirection29 : PaymentLevyTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalBrokerCommission
OtherAmounts16 *-- "0..1" AmountAndDirection29 : Margin
OtherAmounts16 *-- "0..1" AmountAndDirection29 : Other
OtherAmounts16 *-- "0..1" AmountAndDirection29 : RegulatoryAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : SpecialConcession
OtherAmounts16 *-- "0..1" AmountAndDirection29 : StampDuty
OtherAmounts16 *-- "0..1" AmountAndDirection29 : StockExchangeTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : TransferTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : TransactionTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ValueAddedTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : WithholdingTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : NetGainLoss
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ConsumptionTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : MatchingConfirmationFee
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ConvertedAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : OriginalCurrencyAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : BookValue
OtherAmounts16 *-- "0..1" AmountAndDirection29 : AccruedCapitalisationAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalTaxCountrySpecific1
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalTaxCountrySpecific2
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalTaxCountrySpecific3
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalTaxCountrySpecific4
OtherAmounts16 *-- "0..1" AmountAndDirection29 : SharedBrokerageAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : MarketMemberFeeAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : RemunerationAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : BorrowingInterestAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : BorrowingFee
OtherAmounts16 *-- "0..1" AmountAndDirection29 : NetMarketValue
OtherAmounts16 *-- "0..1" AmountAndDirection29 : RemainingFaceValue
OtherAmounts16 *-- "0..1" AmountAndDirection29 : RemainingBookValue
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ClearingBrokerCommission
OtherAmounts16 *-- "0..1" AmountAndDirection29 : DifferenceInPrice
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
OtherAmounts16 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| ChargesFees | Amount of money paid for the provision of financial services that cannot be categorised by another qualifier. | AmountAndDirection29 - Optional 0..1 |
| CountryNationalFederalTax | Amount of country, national or federal tax charged by the jurisdiction in which the account servicer is located. | AmountAndDirection29 - Optional 0..1 |
| ExecutingBrokerAmount | Amount of money paid to an executing broker as a commission. | AmountAndDirection29 - Optional 0..1 |
| IssueDiscountAllowance | Amount of money defined as a discount on a new issue or on a tranche of an existing issue. | AmountAndDirection29 - Optional 0..1 |
| PaymentLevyTax | Amount of payment levy tax. | AmountAndDirection29 - Optional 0..1 |
| LocalTax | Tax charged by the jurisdiction in which the financial instrument settles. | AmountAndDirection29 - Optional 0..1 |
| LocalBrokerCommission | Amount of commission paid to a local broker. | AmountAndDirection29 - Optional 0..1 |
| Margin | Amount of money deposited by the trading party in a margin account. | AmountAndDirection29 - Optional 0..1 |
| Other | An amount that is not indicated by a known business denomination. | AmountAndDirection29 - Optional 0..1 |
| RegulatoryAmount | Amount of money charged by a regulatory authority, for example, Securities and Exchange fees. | AmountAndDirection29 - Optional 0..1 |
| SpecialConcession | Amount of drawdown or other reduction from or in addition to the deal price. | AmountAndDirection29 - Optional 0..1 |
| StampDuty | Amount of stamp duty. | AmountAndDirection29 - Optional 0..1 |
| StockExchangeTax | Amount of stock exchange tax. | AmountAndDirection29 - Optional 0..1 |
| TransferTax | Amount of tax levied on a transfer of ownership of financial instrument. | AmountAndDirection29 - Optional 0..1 |
| TransactionTax | Amount of transaction tax. | AmountAndDirection29 - Optional 0..1 |
| ValueAddedTax | Amount of value-added tax. | AmountAndDirection29 - Optional 0..1 |
| WithholdingTax | Amount of money that will be withheld by a tax authority. | AmountAndDirection29 - Optional 0..1 |
| NetGainLoss | Amount representing the difference between the cost and the current price of a security. In the context of securities settlement, it is the amount paid or received when the instructions are netted or paired off. | AmountAndDirection29 - Optional 0..1 |
| ConsumptionTax | A tax on spending on goods and services. | AmountAndDirection29 - Optional 0..1 |
| MatchingConfirmationFee | Amount of money charged for matching and/or confirmation. | AmountAndDirection29 - Optional 0..1 |
| ConvertedAmount | Amount following a foreign exchange conversion. | AmountAndDirection29 - Optional 0..1 |
| OriginalCurrencyAmount | Posting/settlement amount in its original currency when conversion from/into another currency has occurred. | AmountAndDirection29 - Optional 0..1 |
| BookValue | Cost of the securities. May be requested in some countries for tax purposes. | AmountAndDirection29 - Optional 0..1 |
| AccruedCapitalisationAmount | Amount of unpaid interest (on bonds which have defaulted and have subsequently | restructured), which is capitalized and added to the original principal amount of the bond. |
| LocalTaxCountrySpecific1 | Local tax as defined by the country in its market practice document. | AmountAndDirection29 - Optional 0..1 |
| LocalTaxCountrySpecific2 | Local tax as defined by the country in its market practice document. | AmountAndDirection29 - Optional 0..1 |
| LocalTaxCountrySpecific3 | Local tax as defined by the country in its market practice document. | AmountAndDirection29 - Optional 0..1 |
| LocalTaxCountrySpecific4 | Local tax as defined by the country in its market practice document. | AmountAndDirection29 - Optional 0..1 |
| SharedBrokerageAmount | Amount paid as result of transactions subject to shared brokerage commissions. | AmountAndDirection29 - Optional 0..1 |
| MarketMemberFeeAmount | Indicates the total fees related to the trade, with deduction of rebates (on brokerage, commission or differential) granted by the market member (fee amount with tax excluded). | AmountAndDirection29 - Optional 0..1 |
| RemunerationAmountRequest | Specifies that this information is available upon request. | IsoYesNoIndicator - Optional 0..1 |
| RemunerationAmount | Specifies the source and amount of any other remuneration received or to be received by the broker in connection with the transaction. | AmountAndDirection29 - Optional 0..1 |
| BorrowingInterestAmount | Amount to be paid by the lender to the borrower calculated based on the interest rate. | AmountAndDirection29 - Optional 0..1 |
| BorrowingFee | Amount to be paid by the Borrower to the Lender for the securities borrowed calculated based on the bond loan rate. | AmountAndDirection29 - Optional 0..1 |
| NetMarketValue | Net market value of the securities lent used to calculate the collateral amount. | AmountAndDirection29 - Optional 0..1 |
| RemainingFaceValue | Remaining nominal value of a security. | AmountAndDirection29 - Optional 0..1 |
| RemainingBookValue | Remaining value at which an asset is carried on a balance sheet. | AmountAndDirection29 - Optional 0..1 |
| ClearingBrokerCommission | Amount of commission paid to a clearing broker. | AmountAndDirection29 - Optional 0..1 |
| DifferenceInPrice | Difference between the deal price and another reference price. | AmountAndDirection29 - Optional 0..1 |
| OddLotFee | Specifies that the odd-lot differential or equivalent fee has been paid by such customer in connection with the execution of an order for an odd-lot number of shares or units (or principal amount) of a security and the fact that the amount of any such differential or fee will be furnished upon oral or written request. | IsoYesNoIndicator - Optional 0..1 |
OtherPrices building block
Other prices than the deal price. Specifies the type of price and information about the price. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% OtherPrices5 recursion level 0 with max 1
OtherPrices5 *-- "0..1" Price14 : Maximum
OtherPrices5 *-- "0..1" Price14 : Transaction
OtherPrices5 *-- "0..1" Price14 : MarketBrokerCommission
OtherPrices5 *-- "0..1" Price14 : MarkedUp
OtherPrices5 *-- "0..1" Price14 : MarkedDown
OtherPrices5 *-- "0..1" Price14 : NetDisclosed
OtherPrices5 *-- "0..1" Price14 : NetUndisclosed
OtherPrices5 *-- "0..1" Price14 : NotionalGross
OtherPrices5 *-- "0..1" Price14 : BenchmarkWeightedAverage
OtherPrices5 *-- "0..1" Price14 : AllMarketsWeightedAverage
OtherPrices5 *-- "0..1" Price14 : Benchmark
OtherPrices5 *-- "0..1" Price14 : OtherPrice
OtherPrices5 *-- "0..1" Price14 : IndexPrice
OtherPrices5 *-- "0..1" Price14 : ReportedPrice
OtherPrices5 *-- "0..1" PriceInformation28 : ReferencePrice
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% PriceInformation28 recursion level 1 with max 1
PriceInformation28 *-- "1..1" Price14 : Value
PriceInformation28 *-- "0..1" IDateAndDateTime1Choice : QuotationDate
PriceInformation28 *-- "0..1" IDateTimePeriod1Choice : PriceCalculationPeriod
PriceInformation28 *-- "0..1" MarketIdentification93 : SourceOfPrice
OtherPrices5 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Maximum | Specifies the maximum price. | Price14 - Optional 0..1 |
| Transaction | Specifies the transaction price. | Price14 - Optional 0..1 |
| MarketBrokerCommission | Market price including or excluding the broker’s commission. | Price14 - Optional 0..1 |
| MarkedUp | In case of an order to buy, the price that the broker paid on the market plus the broker’s commission. | Price14 - Optional 0..1 |
| MarkedDown | In case of an order to sell, the price the broker receives in the market minus the broker’s commission. | Price14 - Optional 0..1 |
| NetDisclosed | Price is net to the disclosed client. | Price14 - Optional 0..1 |
| NetUndisclosed | Price is net to the client undisclosed (used in the UK market). | Price14 - Optional 0..1 |
| NotionalGross | Price is notional gross (used in the UK market). | Price14 - Optional 0..1 |
| BenchmarkWeightedAverage | Price is weighted average price of the benchmark prices at the time of each partial fill. | Price14 - Optional 0..1 |
| AllMarketsWeightedAverage | Price is weighted average price of all market executions during the completion of the order. | Price14 - Optional 0..1 |
| Benchmark | Price is a benchmark price relating to the current partial fills (eg, last trade tick from market). | Price14 - Optional 0..1 |
| OtherPrice | Type of price that is not defined explicitly. | Price14 - Optional 0..1 |
| IndexPrice | Price of securities representing a particular market or a portion of it. | Price14 - Optional 0..1 |
| ReportedPrice | Price used to differentiate from price on a confirmation of a marked up or marked down principal trade. | Price14 - Optional 0..1 |
| ReferencePrice | Price of reference of the concerned financial instrument. | PriceInformation28 - Optional 0..1 |
OtherBusinessParties building block
Other business parties relevant to the transaction. Provides details about business parties involved in the transaction. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% OtherParties32 recursion level 0 with max 1
OtherParties32 *-- "0..0" PartyIdentificationAndAccount150 : Investor
OtherParties32 *-- "0..1" PartyIdentificationAndAccount152 : StockExchange
OtherParties32 *-- "0..1" PartyIdentificationAndAccount152 : TradeRegulator
OtherParties32 *-- "0..1" PartyIdentificationAndAccount154 : TripartyAgent
OtherParties32 *-- "0..1" PartyIdentificationAndAccount151 : QualifiedForeignIntermediary
%% PartyIdentificationAndAccount150 recursion level 1 with max 1
class PartyIdentificationAndAccount150{
SafekeepingAccount IsoMax35Text
ProcessingIdentification IsoMax35Text
CountryOfResidence CountryCode
}
PartyIdentificationAndAccount150 *-- "0..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount150 *-- "0..1" ICashAccountIdentification5Choice : CashAccount
PartyIdentificationAndAccount150 *-- "0..1" PartyTextInformation1 : AdditionalInformation
PartyIdentificationAndAccount150 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
%% PartyIdentificationAndAccount152 recursion level 1 with max 1
class PartyIdentificationAndAccount152{
ProcessingIdentification IsoMax35Text
}
PartyIdentificationAndAccount152 *-- "1..1" IPartyIdentification245Choice : Identification
PartyIdentificationAndAccount152 *-- "0..1" PartyTextInformation1 : AdditionalInformation
PartyIdentificationAndAccount152 *-- "0..1" AlternatePartyIdentification10 : AlternateIdentification
%% PartyIdentificationAndAccount152 recursion level 1 with max 1
class PartyIdentificationAndAccount152{
ProcessingIdentification IsoMax35Text
}
PartyIdentificationAndAccount152 *-- "1..1" IPartyIdentification245Choice : Identification
PartyIdentificationAndAccount152 *-- "0..1" PartyTextInformation1 : AdditionalInformation
PartyIdentificationAndAccount152 *-- "0..1" AlternatePartyIdentification10 : AlternateIdentification
%% PartyIdentificationAndAccount154 recursion level 1 with max 1
class PartyIdentificationAndAccount154{
SafekeepingAccount IsoMax35Text
ProcessingIdentification IsoMax35Text
}
PartyIdentificationAndAccount154 *-- "1..1" IPartyIdentification245Choice : Identification
PartyIdentificationAndAccount154 *-- "0..1" ICashAccountIdentification5Choice : CashAccount
PartyIdentificationAndAccount154 *-- "0..1" PartyTextInformation1 : AdditionalInformation
PartyIdentificationAndAccount154 *-- "0..1" AlternatePartyIdentification10 : AlternateIdentification
%% PartyIdentificationAndAccount151 recursion level 1 with max 1
class PartyIdentificationAndAccount151{
SafekeepingAccount IsoMax35Text
ProcessingIdentification IsoMax35Text
}
PartyIdentificationAndAccount151 *-- "1..1" IPartyIdentification117Choice : Identification
PartyIdentificationAndAccount151 *-- "0..1" AlternatePartyIdentification8 : AlternateIdentification
PartyIdentificationAndAccount151 *-- "0..1" PartyTextInformation1 : AdditionalInformation
OtherParties32 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Investor | Party that identifies the underlying investor. | PartyIdentificationAndAccount150 - Unknown 0..0 |
| StockExchange | Party that identifies the stock exchange. | PartyIdentificationAndAccount152 - Optional 0..1 |
| TradeRegulator | Party that identifies the trade regulator. | PartyIdentificationAndAccount152 - Optional 0..1 |
| TripartyAgent | Party that handles tri-party transactions. | PartyIdentificationAndAccount154 - Optional 0..1 |
| QualifiedForeignIntermediary | Foreign Financial Institution which has been authorised by local authorities to act as account management institution in the country. | PartyIdentificationAndAccount151 - Optional 0..1 |
TwoLegTransactionDetails building block
Specifies a transaction that the trading parties are agreeing to repurchase, sell back or return the same or similar securities at a later time. The two leg transaction details defines the closing leg conditions of a two leg transaction. It is also used to define the anticipated closing leg conditions at the time of opening the closed-end transaction.
Specifies the details of the first leg in a two leg transaction process. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% TwoLegTransactionDetails5 recursion level 0 with max 1
class TwoLegTransactionDetails5{
OpeningLegIdentification IsoMax35Text
ClosingLegIdentification IsoMax35Text
SecondLegNarrative IsoMax140Text
}
TwoLegTransactionDetails5 *-- "0..1" ITradeDate8Choice : TradeDate
TwoLegTransactionDetails5 *-- "0..1" AmountAndDirection29 : GrossTradeAmount
TwoLegTransactionDetails5 *-- "0..0" OtherAmounts16 : OtherAmounts
TwoLegTransactionDetails5 *-- "0..1" Price14 : EndPrice
TwoLegTransactionDetails5 *-- "0..1" IClosingDate4Choice : ClosingDate
TwoLegTransactionDetails5 *-- "0..1" AmountAndDirection5 : ClosingSettlementAmount
TwoLegTransactionDetails5 *-- "0..1" ITradeDate7Choice : ProcessingDate
TwoLegTransactionDetails5 *-- "0..1" ITwoLegTransactionType4Choice : TwoLegTransactionType
%% ITradeDate8Choice recursion level 1 with max 1
%% AmountAndDirection29 recursion level 1 with max 1
class AmountAndDirection29{
Amount IsoActiveOrHistoricCurrencyAndAmount
CreditDebitIndicator CreditDebitCode
OriginalCurrencyAndOrderedAmount IsoActiveOrHistoricCurrencyAndAmount
}
AmountAndDirection29 *-- "0..1" ForeignExchangeTerms18 : ForeignExchangeDetails
%% OtherAmounts16 recursion level 1 with max 1
class OtherAmounts16{
RemunerationAmountRequest IsoYesNoIndicator
OddLotFee IsoYesNoIndicator
}
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ChargesFees
OtherAmounts16 *-- "0..1" AmountAndDirection29 : CountryNationalFederalTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ExecutingBrokerAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : IssueDiscountAllowance
OtherAmounts16 *-- "0..1" AmountAndDirection29 : PaymentLevyTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalBrokerCommission
OtherAmounts16 *-- "0..1" AmountAndDirection29 : Margin
OtherAmounts16 *-- "0..1" AmountAndDirection29 : Other
OtherAmounts16 *-- "0..1" AmountAndDirection29 : RegulatoryAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : SpecialConcession
OtherAmounts16 *-- "0..1" AmountAndDirection29 : StampDuty
OtherAmounts16 *-- "0..1" AmountAndDirection29 : StockExchangeTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : TransferTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : TransactionTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ValueAddedTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : WithholdingTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : NetGainLoss
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ConsumptionTax
OtherAmounts16 *-- "0..1" AmountAndDirection29 : MatchingConfirmationFee
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ConvertedAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : OriginalCurrencyAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : BookValue
OtherAmounts16 *-- "0..1" AmountAndDirection29 : AccruedCapitalisationAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalTaxCountrySpecific1
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalTaxCountrySpecific2
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalTaxCountrySpecific3
OtherAmounts16 *-- "0..1" AmountAndDirection29 : LocalTaxCountrySpecific4
OtherAmounts16 *-- "0..1" AmountAndDirection29 : SharedBrokerageAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : MarketMemberFeeAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : RemunerationAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : BorrowingInterestAmount
OtherAmounts16 *-- "0..1" AmountAndDirection29 : BorrowingFee
OtherAmounts16 *-- "0..1" AmountAndDirection29 : NetMarketValue
OtherAmounts16 *-- "0..1" AmountAndDirection29 : RemainingFaceValue
OtherAmounts16 *-- "0..1" AmountAndDirection29 : RemainingBookValue
OtherAmounts16 *-- "0..1" AmountAndDirection29 : ClearingBrokerCommission
OtherAmounts16 *-- "0..1" AmountAndDirection29 : DifferenceInPrice
%% Price14 recursion level 1 with max 1
class Price14{
Type PriceValueType7Code
}
Price14 *-- "1..1" IPriceRateOrAmount3Choice : Value
%% IClosingDate4Choice recursion level 1 with max 1
%% AmountAndDirection5 recursion level 1 with max 1
class AmountAndDirection5{
Amount IsoActiveCurrencyAndAmount
CreditDebit CreditDebitCode
}
%% ITradeDate7Choice recursion level 1 with max 1
%% ITwoLegTransactionType4Choice recursion level 1 with max 1
TwoLegTransactionDetails5 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| TradeDate | Specifies the date/time on which the trade was executed. | ITradeDate8Choice - Optional 0..1 |
| OpeningLegIdentification | Unambiguous identification of the reference assigned in the first leg of the transaction. | IsoMax35Text - Optional 0..1 |
| ClosingLegIdentification | Unambiguous identification of the second leg of the transaction as known by the account owner (or the instructing party acting on its behalf). | IsoMax35Text - Optional 0..1 |
| GrossTradeAmount | Principal amount of a trade (price multiplied by quantity). | AmountAndDirection29 - Optional 0..1 |
| OtherAmounts | Identifies other amounts pertaining to the transaction. | OtherAmounts16 - Unknown 0..0 |
| SecondLegNarrative | Provides additional information about the second leg in narrative form. | IsoMax140Text - Optional 0..1 |
| EndPrice | Negotiated fixed price of the security to buy it back. | Price14 - Optional 0..1 |
| ClosingDate | Closing date/time or maturity date/time of the transaction. | IClosingDate4Choice - Optional 0..1 |
| ClosingSettlementAmount | Total amount of money to be paid or received in exchange for the securities. The amount includes the principal with any commissions and fees or accrued interest. | AmountAndDirection5 - Optional 0..1 |
| ProcessingDate | Processing date of the trading session. | ITradeDate7Choice - Optional 0..1 |
| TwoLegTransactionType | Specifies the type of the second leg transaction. | ITwoLegTransactionType4Choice - Optional 0..1 |
RegulatoryStipulations building block
Specifies regulatory stipulations that financial institutions must be compliant with in the country, region, and/or area they conduct business. Specifies regulatory stipulations that financial institutions must be compliant with in the country, region, and/or area they conduct business. For comparison, see the ISO20022 official specification
classDiagram
direction tb
%% RegulatoryStipulations1 recursion level 0 with max 1
class RegulatoryStipulations1{
Country CountryCode
Stipulations IsoMax350Text
}
RegulatoryStipulations1 members
| Member name | Description | Data Type / Multiplicity |
|---|---|---|
| Country | Nation with its own government, occupying a particular territory. | CountryCode - Required 1..1 |
| Stipulations | Specifies regulatory stipulations that financial institutions must be compliant with in the country, region, and/or where they conduct business. | IsoMax350Text - Unknown 1..0 |
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 SecuritiesTradeConfirmationV04 implementation follows a specific implementaiton pattern. First of all, SecuritiesTradeConfirmationV04 impleemnts IOuterRecord indicating it is the outermost logical part of the message definition. Like all message wrappers, SecuritiesTradeConfirmationV04Document implements IOuterDocument. Because SecuritiesTradeConfirmationV04 implements IOuterDocument, it is a suitable template parameter for IOuterDocument, and causes the internal ‘Message’ to be of type SecuritiesTradeConfirmationV04.
classDiagram
class IOuterRecord
SecuritiesTradeConfirmationV04 --|> IOuterRecord : Implements
SecuritiesTradeConfirmationV04Document --|> IOuterDocument~SecuritiesTradeConfirmationV04~ : Implements
class IOuterDocument~SecuritiesTradeConfirmationV04~ {
SecuritiesTradeConfirmationV04 Message
}
Document wrapper for serialization
The only real purpose SecuritiesTradeConfirmationV04Document serves is to cause the document to be serialized into the ‘urn:iso:std:iso:20022:tech:xsd:setr.027.001.04’ namespace. Therefore, it will probably be the usual practice to build the message and construct this wrapper at the last minute using SecuritiesTradeConfirmationV04.ToDocument() method. The returned SecuritiesTradeConfirmationV04Document value will serialize correctly according to ISO 20022 standards.
classDiagram
SecuritiesTradeConfirmationV04Document *-- SecuritiesTradeConfirmationV04 : 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:setr.027.001.04">
<SctiesTradConf>
<Id>
<!-- Identification inner content -->
</Id>
<NbCnt>
<!-- NumberCount inner content -->
</NbCnt>
<Refs>
<!-- References inner content -->
</Refs>
<TradDtls>
<!-- TradeDetails inner content -->
</TradDtls>
<FinInstrmId>
<!-- FinancialInstrumentIdentification inner content -->
</FinInstrmId>
<FinInstrmAttrbts>
<!-- FinancialInstrumentAttributes inner content -->
</FinInstrmAttrbts>
<UndrlygFinInstrm>
<!-- UnderlyingFinancialInstrument inner content -->
</UndrlygFinInstrm>
<Stiptns>
<!-- Stipulations inner content -->
</Stiptns>
<ConfPties>
<!-- ConfirmationParties inner content -->
</ConfPties>
<SttlmParams>
<!-- SettlementParameters inner content -->
</SttlmParams>
<StgSttlmInstr>
<!-- StandingSettlementInstruction inner content -->
</StgSttlmInstr>
<DlvrgSttlmPties>
<!-- DeliveringSettlementParties inner content -->
</DlvrgSttlmPties>
<RcvgSttlmPties>
<!-- ReceivingSettlementParties inner content -->
</RcvgSttlmPties>
<CshPties>
<!-- CashParties inner content -->
</CshPties>
<ClrDtls>
<!-- ClearingDetails inner content -->
</ClrDtls>
<SttlmAmt>
<!-- SettlementAmount inner content -->
</SttlmAmt>
<OthrAmts>
<!-- OtherAmounts inner content -->
</OthrAmts>
<OthrPrics>
<!-- OtherPrices inner content -->
</OthrPrics>
<OthrBizPties>
<!-- OtherBusinessParties inner content -->
</OthrBizPties>
<TwoLegTxDtls>
<!-- TwoLegTransactionDetails inner content -->
</TwoLegTxDtls>
<RgltryStiptns>
<!-- RegulatoryStipulations inner content -->
</RgltryStiptns>
<SplmtryData>
<!-- SupplementaryData inner content -->
</SplmtryData>
</SctiesTradConf>
</Document>
Data from ISO specification
This is the technical data from the specification document.
<messageDefinition
xmi:id="_j1-bIY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN0S9UEeOdVfle5cojCg"
name="SecuritiesTradeConfirmationV04"
definition="SCOPE
Sent by an executing party to an instructing party directly or through Central Matching Utility (CMU) to provide trade confirmation on a per-account basis based on instructions provided by the instructing party in the SecuritiesAllocationInstruction message.

It may also be used to provide trade confirmation on the trade level from an executing party or an instructing party to the custodian or an affirming party directly or through CMU.

The instructing party is typically the investment manager or an intermediary system/vendor communicating on behalf of the investment manager or of other categories of investors.
The executing party is typically the broker/dealer or an intermediary system/vendor communicating on behalf of the broker/dealer.
The custodian or the affirming party is typically the custodian, trustee, financial institution, intermediary system/vendor communicating on behalf of them, or their agent.

USAGE
Initiator: In local matching, the initiator of this message is always the executing party. In central matching the initiator may be either the executing party or instructing party.
Respondent: instructing party, a custodian or an affirming party responds with SecuritiesTradeConfirmationResponse (accept or reject) message."
registrationStatus="Registered"
messageSet="_oOGmoHkPEeOUfbICsvs_4A"
xmlTag="SctiesTradConf"
rootElement="Document"
xmlns:xmi="http://www.omg.org/XMI">
<messageBuildingBlock
xmi:id="_j1-bI4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN0y9UEeOdVfle5cojCg"
name="Identification"
definition="Information that unambiguously identifies an SecuritiesTradeConfirmation message as known by the account owner (or the instructing party acting on its behalf)."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="Id"
complexType="_Ab8KktokEeC60axPepSq7g_597298616" />
<messageBuildingBlock
xmi:id="_j1-bJY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN1S9UEeOdVfle5cojCg"
name="NumberCount"
definition="Count of the number of transactions linked."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="NbCnt"
complexType="_QrsmZ9p-Ed-ak6NoX_4Aeg_994582654" />
<messageBuildingBlock
xmi:id="_j1-bJ4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN1y9UEeOdVfle5cojCg"
name="References"
definition="Reference to the transaction identifier issued by a business party and/or market infrastructure. It may also be used to reference a previous transaction, for example, a block/allocation instruction, or tie a set of messages together."
registrationStatus="Provisionally Registered"
minOccurs="0"
xmlTag="Refs"
complexType="_cwOuIZBgEeakHoV5BVecAQ" />
<messageBuildingBlock
xmi:id="_j1-bKY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN2S9UEeOdVfle5cojCg"
name="TradeDetails"
definition="Details of the trade."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="TradDtls"
complexType="_Flky8QeGEe2fOITqoTnSLQ" />
<messageBuildingBlock
xmi:id="_j1-bK4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN2y9UEeOdVfle5cojCg"
name="FinancialInstrumentIdentification"
definition="Unique and unambiguous identifier of a financial instrument, assigned under a formal or proprietary identification scheme."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="FinInstrmId"
complexType="_ho6XQYlXEeWPSZi0kAOXhg" />
<messageBuildingBlock
xmi:id="_j1-bLY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN3S9UEeOdVfle5cojCg"
name="FinancialInstrumentAttributes"
definition="Elements characterising a financial instrument."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="FinInstrmAttrbts"
complexType="_gIw9wQeGEe2fOITqoTnSLQ" />
<messageBuildingBlock
xmi:id="_j1-bL4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN3y9UEeOdVfle5cojCg"
name="UnderlyingFinancialInstrument"
definition="Underlying financial instrument to which an trade confirmation is related."
registrationStatus="Provisionally Registered"
minOccurs="0"
xmlTag="UndrlygFinInstrm"
complexType="_2C-80QhLEe2fOITqoTnSLQ" />
<messageBuildingBlock
xmi:id="_j1-bMY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN4S9UEeOdVfle5cojCg"
name="Stipulations"
definition="Additional restrictions on the financial instrument, related to the stipulation."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="Stiptns"
complexType="_5DuEYQgTEe2fOITqoTnSLQ" />
<messageBuildingBlock
xmi:id="_j1-bM4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN4y9UEeOdVfle5cojCg"
name="ConfirmationParties"
definition="Parties involved in the confirmation of the details of a trade."
registrationStatus="Provisionally Registered"
minOccurs="1"
xmlTag="ConfPties"
complexType="_hv4QUY-iEeaEa8S_GI1QNA" />
<messageBuildingBlock
xmi:id="_j1-bNY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN5S9UEeOdVfle5cojCg"
name="SettlementParameters"
definition="Parameters which explicitly state the conditions that must be fulfilled before a particular transaction of a financial instrument can be settled. These parameters are defined by the instructing party in compliance with settlement rules in the market the transaction will settle in."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="SttlmParams"
complexType="_m0OUkQaTEe2-DuDrUXkg2w" />
<messageBuildingBlock
xmi:id="_j1-bN4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN5y9UEeOdVfle5cojCg"
name="StandingSettlementInstruction"
definition="Specifies what settlement standing instruction database is to be used to derive the settlement parties involved in the transaction."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="StgSttlmInstr"
complexType="_sJHCEY-vEeaEa8S_GI1QNA" />
<messageBuildingBlock
xmi:id="_j1-bOY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN6S9UEeOdVfle5cojCg"
name="DeliveringSettlementParties"
definition="Specifies the chain of delivering settlement parties."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="DlvrgSttlmPties"
complexType="_1D0EgY-1Eeaoj_JbcpWKgg" />
<messageBuildingBlock
xmi:id="_j1-bO4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN6y9UEeOdVfle5cojCg"
name="ReceivingSettlementParties"
definition="Specifies the chain of receiving settlement parties."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="RcvgSttlmPties"
complexType="_1D0EgY-1Eeaoj_JbcpWKgg" />
<messageBuildingBlock
xmi:id="_j1-bPY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN7S9UEeOdVfle5cojCg"
name="CashParties"
definition="Cash parties involved in the specific transaction."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="CshPties"
complexType="_EoZh0Y-4Eeaoj_JbcpWKgg" />
<messageBuildingBlock
xmi:id="_j1-bP4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN7y9UEeOdVfle5cojCg"
name="ClearingDetails"
definition="Provides clearing member information."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="ClrDtls"
complexType="_j1HYEZBeEeakHoV5BVecAQ" />
<messageBuildingBlock
xmi:id="_j1-bQY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN8S9UEeOdVfle5cojCg"
name="SettlementAmount"
definition="Total amount of money to be paid or received in exchange for the securities. The amount includes the principal with any commissions and fees or accrued interest."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="SttlmAmt"
complexType="_Aj2JYNokEeC60axPepSq7g_1906017147" />
<messageBuildingBlock
xmi:id="_j1-bQ4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN8y9UEeOdVfle5cojCg"
name="OtherAmounts"
definition="Other amounts than the settlement amount."
registrationStatus="Provisionally Registered"
minOccurs="0"
xmlTag="OthrAmts"
complexType="_AkJEUNokEeC60axPepSq7g_-185304496" />
<messageBuildingBlock
xmi:id="_j1-bRY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN9S9UEeOdVfle5cojCg"
name="OtherPrices"
definition="Other prices than the deal price."
registrationStatus="Provisionally Registered"
minOccurs="0"
xmlTag="OthrPrics"
complexType="_vSVaYQeFEe2fOITqoTnSLQ" />
<messageBuildingBlock
xmi:id="_j1-bR4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN9y9UEeOdVfle5cojCg"
name="OtherBusinessParties"
definition="Other business parties relevant to the transaction."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="OthrBizPties"
complexType="_IYTBIZBfEeakHoV5BVecAQ" />
<messageBuildingBlock
xmi:id="_j1-bSY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN-S9UEeOdVfle5cojCg"
name="TwoLegTransactionDetails"
definition="Specifies a transaction that the trading parties are agreeing to repurchase, sell back or return the same or similar securities at a later time. 
The two leg transaction details defines the closing leg conditions of a two leg transaction. It is also used to define the anticipated closing leg conditions at the time of opening the closed-end transaction. 

"
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="TwoLegTxDtls"
complexType="_x7vQEQhKEe2fOITqoTnSLQ" />
<messageBuildingBlock
xmi:id="_j1-bS4-XEeaVK-2bgpxeYw"
previousVersion="_L2hN-y9UEeOdVfle5cojCg"
name="RegulatoryStipulations"
definition="Specifies regulatory stipulations that financial institutions must be compliant with in the country, region, and/or area they conduct business."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="0"
xmlTag="RgltryStiptns"
complexType="_AmX48NokEeC60axPepSq7g_4921707" />
<messageBuildingBlock
xmi:id="_j1-bTY-XEeaVK-2bgpxeYw"
previousVersion="_L2hN_S9UEeOdVfle5cojCg"
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="setr"
messageFunctionality="027"
flavour="001"
version="04" />
</messageDefinition>
ISO Building Blocks
The following items are used as building blocks to construct this message.