RequestForOrderStatusReportV02

setr.018.001.02

Scope The RequestForOrderStatusReport is sent by an instructing party, eg, an investment manager or its authorised representative, to the executing party, eg, a transfer agent. There may be one or more intermediary parties between the instructing party and the executing party. This message requests the status of one or several order instruction or order cancellation messages. Usage The RequestForOrderStatusReport message is used to request the status of:

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
%% RequestForOrderStatusReportV02 recursion level 0 with max 0
RequestForOrderStatusReportV02 *-- "1..1" MessageAndBusinessReference2 : RequestDetails
  

Now, we will zero-in one-by-one on each of these building blocks.

RequestDetails building block

Information to identify the order(s) for which the status is requested. Information about the message reference of the message for which the status is requested and the business reference of the order. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% MessageAndBusinessReference2 recursion level 0 with max 1
class MessageAndBusinessReference2{
    IndividualOrderReference IsoMax35Text
}
MessageAndBusinessReference2 *-- "1..1" AdditionalReference3 : OtherReference
MessageAndBusinessReference2 *-- "1..1" AdditionalReference3 : PreviousReference
MessageAndBusinessReference2 *-- "0..1" InvestmentAccount13 : InvestmentAccount
%% AdditionalReference3 recursion level 1 with max 1
class AdditionalReference3{
    Reference IsoMax35Text
    MessageName IsoMax35Text
}
AdditionalReference3 *-- "0..1" IPartyIdentification2Choice : ReferenceIssuer
%% AdditionalReference3 recursion level 1 with max 1
class AdditionalReference3{
    Reference IsoMax35Text
    MessageName IsoMax35Text
}
AdditionalReference3 *-- "0..1" IPartyIdentification2Choice : ReferenceIssuer
%% InvestmentAccount13 recursion level 1 with max 1
class InvestmentAccount13{
    AccountName IsoMax35Text
    AccountDesignation IsoMax35Text
}
InvestmentAccount13 *-- "1..1" AccountIdentification1 : AccountIdentification
InvestmentAccount13 *-- "0..0" IPartyIdentification2Choice : OwnerIdentification
InvestmentAccount13 *-- "0..1" IPartyIdentification2Choice : AccountServicer
  

MessageAndBusinessReference2 members

Member name Description Data Type / Multiplicity
OtherReference Reference to a linked message sent in a proprietary way or reference of a system. AdditionalReference3 - Required 1..1
PreviousReference Reference to a linked message that was previously sent. AdditionalReference3 - Required 1..1
IndividualOrderReference Unique and unambiguous identifier for an order, as assigned by the instructing party. IsoMax35Text - Unknown 0..0
InvestmentAccount Account information of the order message for which the status is requested. InvestmentAccount13 - Optional 0..1

Extensibility and generalization considerations

To facilitate generalized design patterns in the system, the RequestForOrderStatusReportV02 implementation follows a specific implementaiton pattern. First of all, RequestForOrderStatusReportV02 impleemnts IOuterRecord indicating it is the outermost logical part of the message definition. Like all message wrappers, RequestForOrderStatusReportV02Document implements IOuterDocument. Because RequestForOrderStatusReportV02 implements IOuterDocument, it is a suitable template parameter for IOuterDocument, and causes the internal ‘Message’ to be of type RequestForOrderStatusReportV02.

classDiagram
    class IOuterRecord
    RequestForOrderStatusReportV02 --|> IOuterRecord : Implements
    RequestForOrderStatusReportV02Document --|> IOuterDocument~RequestForOrderStatusReportV02~ : Implements
    class IOuterDocument~RequestForOrderStatusReportV02~ {
        RequestForOrderStatusReportV02 Message
     }
  

Document wrapper for serialization

The only real purpose RequestForOrderStatusReportV02Document serves is to cause the document to be serialized into the ‘urn:iso:std:iso:20022:tech:xsd:setr.018.001.02’ namespace. Therefore, it will probably be the usual practice to build the message and construct this wrapper at the last minute using RequestForOrderStatusReportV02.ToDocument() method. The returned RequestForOrderStatusReportV02Document value will serialize correctly according to ISO 20022 standards.

classDiagram
    RequestForOrderStatusReportV02Document *-- RequestForOrderStatusReportV02 : 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.018.001.02">
    <setr.018.001.02>
        <ReqDtls>
            <!-- RequestDetails inner content -->
        </ReqDtls>
    </setr.018.001.02>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_wWrFyNE7Ed-BzquC8wXy7w_-1373686594"
  nextVersions="_wy_OWNE7Ed-BzquC8wXy7w_1331513670"
  name="RequestForOrderStatusReportV02"
  definition="Scope&#xD;&#xA;The RequestForOrderStatusReport is sent by an instructing party, eg, an investment manager or its authorised representative, to the executing party, eg, a transfer agent. There may be one or more intermediary parties between the instructing party and the executing party.&#xD;&#xA;This message requests the status of one or several order instruction or order cancellation messages.&#xD;&#xA;Usage&#xD;&#xA;The RequestForOrderStatusReport message is used to request the status of:&#xD;&#xA;- one or several order messages,&#xD;&#xA;- one or several cancellation messages,&#xD;&#xA;- one or several individual orders within a bulk or multiple order message.&#xD;&#xA;If the RequestForOrderStatusReport message is used to request the status of several messages, then the instructing party will receive several reply messages from the executing party, ie, several OrderInstructionStatusReport messages and/or OrderCancellationStatusReport messages. The number of reply messages will match the number of references stated in the RequestForOrderStatusReport message.&#xD;&#xA;The RequestForOrderStatusReport message may not be used to request the status of an investment account, a transfer or the status of a financial instrument."
  registrationStatus="Registered"
  messageSet="_urpIICeJEeOCeO5e7islRQ"
  xmlName="setr.018.001.02"
  xmlTag="setr.018.001.02"
  rootElement="Document"
  xmlns:xmi="http://www.omg.org/XMI">
  <messageBuildingBlock
    xmi:id="_wWrFydE7Ed-BzquC8wXy7w_93958643"
    name="RequestDetails"
    definition="Information to identify the order(s) for which the status is requested."
    registrationStatus="Provisionally Registered"
    minOccurs="1"
    xmlTag="ReqDtls"
    complexType="_UvH_lNp-Ed-ak6NoX_4Aeg_-1303328661" />
  <messageDefinitionIdentifier
    businessArea="setr"
    messageFunctionality="018"
    flavour="001"
    version="02" />
</messageDefinition>

ISO Building Blocks

The following items are used as building blocks to construct this message.