seev.016.001.01
Scope This message is sent by a CSD to an issuer (or its agent) to provide distribution breakdown information for the proceeds that are to be delivered outside the CSD (e.g. when the proceeds are not eligible in the CSD). Usage This message is used to provide distribution breakdown information (securities and/or cash) per account for a specific corporate action option. Note: the delivery details are sent through the Agent Corporate Action Information Advice.
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 %% AgentCADistributionBreakdownAdviceV01 recursion level 0 with max 0 AgentCADistributionBreakdownAdviceV01 *-- "1..1" DocumentIdentification8 : Identification AgentCADistributionBreakdownAdviceV01 *-- "1..1" CorporateActionInformation1 : CorporateActionGeneralInformation AgentCADistributionBreakdownAdviceV01 *-- "1..1" EntitlementAdvice1 : CorporateActionDistributionDetails
Now, we will zero-in one-by-one on each of these building blocks.
Identification building block
Identification assigned by the Sender to unambiguously identify the advice. Identifies the document by providing a unique identification and optionally the date/time of the creation of the document. For comparison, see the ISO20022 official specification
classDiagram direction tb %% DocumentIdentification8 recursion level 0 with max 1 class DocumentIdentification8{ Identification IsoMax35Text CreationDateTime IsoISODateTime }
DocumentIdentification8 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
Identification | Unique identification of the document. | IsoMax35Text - Required 1..1 |
CreationDateTime | Date/time of the creation of the document. | IsoISODateTime - Optional 0..1 |
CorporateActionGeneralInformation building block
General information about the corporate action event. General information about the corporate action event. For comparison, see the ISO20022 official specification
classDiagram direction tb %% CorporateActionInformation1 recursion level 0 with max 1 class CorporateActionInformation1{ IssuerCorporateActionIdentification IsoMax35Text CorporateActionProcessingIdentification IsoMax35Text } CorporateActionInformation1 *-- "1..1" IPartyIdentification2Choice : AgentIdentification CorporateActionInformation1 *-- "1..1" ICorporateActionEventType2FormatChoice : EventType CorporateActionInformation1 *-- "1..1" ICorporateActionMandatoryVoluntary1FormatChoice : MandatoryVoluntaryEventType CorporateActionInformation1 *-- "0..1" ICorporateActionEventProcessingType1FormatChoice : EventProcessingType CorporateActionInformation1 *-- "1..1" FinancialInstrumentDescription3 : UnderlyingSecurity %% IPartyIdentification2Choice recursion level 1 with max 1 %% ICorporateActionEventType2FormatChoice recursion level 1 with max 1 %% ICorporateActionMandatoryVoluntary1FormatChoice recursion level 1 with max 1 %% ICorporateActionEventProcessingType1FormatChoice recursion level 1 with max 1 %% FinancialInstrumentDescription3 recursion level 1 with max 1 class FinancialInstrumentDescription3{ PlaceOfListing IsoMICIdentifier } FinancialInstrumentDescription3 *-- "1..1" SecurityIdentification7 : SecurityIdentification FinancialInstrumentDescription3 *-- "0..1" IPartyIdentification2Choice : SafekeepingPlace
CorporateActionInformation1 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
AgentIdentification | Identification of the issuer agent. | IPartyIdentification2Choice - Required 1..1 |
IssuerCorporateActionIdentification | Reference given to the event by the CA event issuer (agent). | IsoMax35Text - Optional 0..1 |
CorporateActionProcessingIdentification | Reference assigned by the account servicer to unambiguously identify a corporate action event. | IsoMax35Text - Optional 0..1 |
EventType | Type of corporate action event. | ICorporateActionEventType2FormatChoice - Required 1..1 |
MandatoryVoluntaryEventType | Specifies whether the event is mandatory, mandatory with options or voluntary. | ICorporateActionMandatoryVoluntary1FormatChoice - Required 1..1 |
EventProcessingType | Type of processing involved by a Corporate Action. | ICorporateActionEventProcessingType1FormatChoice - Optional 0..1 |
UnderlyingSecurity | Identification of the underlying financial instrument, ie, the financial instrument affected by the corporate action event. | FinancialInstrumentDescription3 - Required 1..1 |
CorporateActionDistributionDetails building block
Provides information about the CA option and the entitlements. Provides information about the CA entitlement. For comparison, see the ISO20022 official specification
classDiagram direction tb %% EntitlementAdvice1 recursion level 0 with max 1 class EntitlementAdvice1{ OptionNumber IsoExact3NumericText } EntitlementAdvice1 *-- "1..1" ICorporateActionOption1FormatChoice : OptionType EntitlementAdvice1 *-- "0..1" IDateFormat4Choice : RecordDate EntitlementAdvice1 *-- "0..1" IDateFormat4Choice : PaymentDate EntitlementAdvice1 *-- "1..0" Entitlement1 : AccountAndDistributionDetails %% ICorporateActionOption1FormatChoice recursion level 1 with max 1 %% IDateFormat4Choice recursion level 1 with max 1 %% IDateFormat4Choice recursion level 1 with max 1 %% Entitlement1 recursion level 1 with max 1 class Entitlement1{ AccountIdentification IsoMax35Text } Entitlement1 *-- "0..1" IPartyIdentification2Choice : AccountOwnerIdentification Entitlement1 *-- "0..0" SecuritiesEntitlement1 : SecuritiesDistributionDetails Entitlement1 *-- "0..0" CashEntitlement1 : CashDistributionDetails
EntitlementAdvice1 members
Member name | Description | Data Type / Multiplicity |
---|---|---|
OptionType | Specifies the corporate action options available to the account owner. | ICorporateActionOption1FormatChoice - Required 1..1 |
OptionNumber | Number identifying the available corporate action options. | IsoExact3NumericText - Required 1..1 |
RecordDate | Date on which the holders of securities are/will be recorded for the income being paid or for entitlement to the rights or offer/privilege. | IDateFormat4Choice - Optional 0..1 |
PaymentDate | Date on which securities/cash will be paid. | IDateFormat4Choice - Optional 0..1 |
AccountAndDistributionDetails | Provides information about the entitlement and the entitled account. | Entitlement1 - Unknown 1..0 |
Extensibility and generalization considerations
To facilitate generalized design patterns in the system, the AgentCADistributionBreakdownAdviceV01 implementation follows a specific implementaiton pattern. First of all, AgentCADistributionBreakdownAdviceV01 impleemnts IOuterRecord indicating it is the outermost logical part of the message definition. Like all message wrappers, AgentCADistributionBreakdownAdviceV01Document implements IOuterDocument. Because AgentCADistributionBreakdownAdviceV01 implements IOuterDocument, it is a suitable template parameter for IOuterDocument, and causes the internal ‘Message’ to be of type AgentCADistributionBreakdownAdviceV01.
classDiagram class IOuterRecord AgentCADistributionBreakdownAdviceV01 --|> IOuterRecord : Implements AgentCADistributionBreakdownAdviceV01Document --|> IOuterDocument~AgentCADistributionBreakdownAdviceV01~ : Implements class IOuterDocument~AgentCADistributionBreakdownAdviceV01~ { AgentCADistributionBreakdownAdviceV01 Message }
Document wrapper for serialization
The only real purpose AgentCADistributionBreakdownAdviceV01Document serves is to cause the document to be serialized into the ‘urn:iso:std:iso:20022:tech:xsd:seev.016.001.01’ namespace. Therefore, it will probably be the usual practice to build the message and construct this wrapper at the last minute using AgentCADistributionBreakdownAdviceV01.ToDocument() method. The returned AgentCADistributionBreakdownAdviceV01Document value will serialize correctly according to ISO 20022 standards.
classDiagram AgentCADistributionBreakdownAdviceV01Document *-- AgentCADistributionBreakdownAdviceV01 : 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:seev.016.001.01">
<AgtCADstrbtnBrkdwnAdvc>
<Id>
<!-- Identification inner content -->
</Id>
<CorpActnGnlInf>
<!-- CorporateActionGeneralInformation inner content -->
</CorpActnGnlInf>
<CorpActnDstrbtnDtls>
<!-- CorporateActionDistributionDetails inner content -->
</CorpActnDstrbtnDtls>
</AgtCADstrbtnBrkdwnAdvc>
</Document>
Data from ISO specification
This is the technical data from the specification document.
<messageDefinition
xmi:id="_TMj9DtEwEd-BzquC8wXy7w_707588589"
name="AgentCADistributionBreakdownAdviceV01"
definition="Scope
This message is sent by a CSD to an issuer (or its agent) to provide distribution breakdown information for the proceeds that are to be delivered outside the CSD (e.g. when the proceeds are not eligible in the CSD).
Usage
This message is used to provide distribution breakdown information (securities and/or cash) per account for a specific corporate action option.
Note: the delivery details are sent through the Agent Corporate Action Information Advice."
registrationStatus="Registered"
messageSet="_wRe70k2rEeG_I4xRYCA_7g"
xmlTag="AgtCADstrbtnBrkdwnAdvc"
rootElement="Document"
xmlns:xmi="http://www.omg.org/XMI">
<messageBuildingBlock
xmi:id="_TMj9D9EwEd-BzquC8wXy7w_-123045337"
name="Identification"
definition="Identification assigned by the Sender to unambiguously identify the advice."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="Id"
complexType="_RXNBiNp-Ed-ak6NoX_4Aeg_-320016249" />
<messageBuildingBlock
xmi:id="_TMj9ENEwEd-BzquC8wXy7w_1139796912"
name="CorporateActionGeneralInformation"
definition="General information about the corporate action event."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="CorpActnGnlInf"
complexType="_TdxFY9p-Ed-ak6NoX_4Aeg_1155832018" />
<messageBuildingBlock
xmi:id="_TMtG8NEwEd-BzquC8wXy7w_1455640472"
name="CorporateActionDistributionDetails"
definition="Provides information about the CA option and the entitlements."
registrationStatus="Provisionally Registered"
maxOccurs="1"
minOccurs="1"
xmlTag="CorpActnDstrbtnDtls"
complexType="_UJIWmdp-Ed-ak6NoX_4Aeg_1024355345" />
<messageDefinitionIdentifier
businessArea="seev"
messageFunctionality="016"
flavour="001"
version="01" />
</messageDefinition>
ISO Building Blocks
The following items are used as building blocks to construct this message.