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.