InformationRequestResponseV01

auth.002.001.01

This message is sent by the financial institution to the authorities (police, customs, tax authorities, enforcement authorities) to provide a part or all of the requested information. The financial institution previously received a request for financial information in the scope of a financial investigation.

Depending on whether the response can be provided STP within the authorities financial investigations messages, the requested information may be • provided in part or in full within the response message itself, or • only referred to in the response 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
%% InformationRequestResponseV01 recursion level 0 with max 0
class InformationRequestResponseV01{
    ResponseIdentification IsoMax35Text
    InvestigationIdentification IsoMax35Text
    ResponseStatus StatusResponse1Code
}
InformationRequestResponseV01 *-- "1..1" ISearchCriteria1Choice : SearchCriteria
InformationRequestResponseV01 *-- "1..1" ReturnIndicator1 : ReturnIndicator
InformationRequestResponseV01 *-- "0..1" SupplementaryData1 : SupplementaryData
  

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

ResponseIdentification building block

Unique identification for the specific investigation as know by the responding party. Specifies a character string with a maximum length of 35 characters. For comparison, see the ISO20022 official specification This message is declared as Max35Text in the ISO specification. In our implementation, it is represented in source code as IsoMax35Text. Due to global using directives, it is treated as a System.String by the compiler and runtime.

InvestigationIdentification building block

Unique identification for the specific investigation as known by the requesting party. Specifies a character string with a maximum length of 35 characters. For comparison, see the ISO20022 official specification This message is declared as Max35Text in the ISO specification. In our implementation, it is represented in source code as IsoMax35Text. Due to global using directives, it is treated as a System.String by the compiler and runtime.

ResponseStatus building block

Provides the status of the response. Specifies the status of the response. For comparison, see the ISO20022 official specification This message is declared as StatusResponse1Code in the ISO specification. In our implementation, it is represented in source code as StatusResponse1Code. Due to global using directives, it is treated as a System.String by the compiler and runtime.

SearchCriteria building block

Specifies the the search criteria for the financial institution to perform the search on. The search criteria can be an account, a customer identification or a payment instrument type. Choice of search criteria for the financial investigation. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% ISearchCriteria1Choice recursion level 0 with max 1
  

SearchCriteria1Choice members

Member name Description Data Type / Multiplicity

ReturnIndicator building block

Provides the return indicators and the investigation result. Provides the return indicators and the investigation result. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% ReturnIndicator1 recursion level 0 with max 1
class ReturnIndicator1{
    AdditionalInformation IsoMax500Text
}
ReturnIndicator1 *-- "0..1" IDateOrDateTimePeriodChoice : ResponsePeriod
ReturnIndicator1 *-- "1..1" AuthorityRequestType1 : AuthorityRequestType
ReturnIndicator1 *-- "1..1" IInvestigationResult1Choice : InvestigationResult
%% IDateOrDateTimePeriodChoice recursion level 1 with max 1
%% AuthorityRequestType1 recursion level 1 with max 1
class AuthorityRequestType1{
    MessageNameIdentification IsoMax35Text
    MessageName IsoMax140Text
}
%% IInvestigationResult1Choice recursion level 1 with max 1
  

ReturnIndicator1 members

Member name Description Data Type / Multiplicity
ResponsePeriod Specifies the dates between which period the response results relate to. IDateOrDateTimePeriodChoice - Optional 0..1
AuthorityRequestType Identifies the authority request type as a code. AuthorityRequestType1 - Required 1..1
InvestigationResult Provides the investigation result. IInvestigationResult1Choice - Required 1..1
AdditionalInformation Additional information, in free text form, to complement the investigation result. IsoMax500Text - Optional 0..1

SupplementaryData building block

Additional information that can not be captured in the structured fields 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 InformationRequestResponseV01 implementation follows a specific implementaiton pattern. First of all, InformationRequestResponseV01 impleemnts IOuterRecord indicating it is the outermost logical part of the message definition. Like all message wrappers, InformationRequestResponseV01Document implements IOuterDocument. Because InformationRequestResponseV01 implements IOuterDocument, it is a suitable template parameter for IOuterDocument, and causes the internal ‘Message’ to be of type InformationRequestResponseV01.

classDiagram
    class IOuterRecord
    InformationRequestResponseV01 --|> IOuterRecord : Implements
    InformationRequestResponseV01Document --|> IOuterDocument~InformationRequestResponseV01~ : Implements
    class IOuterDocument~InformationRequestResponseV01~ {
        InformationRequestResponseV01 Message
     }
  

Document wrapper for serialization

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

classDiagram
    InformationRequestResponseV01Document *-- InformationRequestResponseV01 : Document
  

Sample of message format

This is an abbreviated version of what the message should look like.

<Document xmlns="urn:iso:std:iso:20022:tech:xsd:auth.002.001.01">
    <InfReqRspn>
        <RspnId>
            <!-- ResponseIdentification inner content -->
        </RspnId>
        <InvstgtnId>
            <!-- InvestigationIdentification inner content -->
        </InvstgtnId>
        <RspnSts>
            <!-- ResponseStatus inner content -->
        </RspnSts>
        <SchCrit>
            <!-- SearchCriteria inner content -->
        </SchCrit>
        <RtrInd>
            <!-- ReturnIndicator inner content -->
        </RtrInd>
        <SplmtryData>
            <!-- SupplementaryData inner content -->
        </SplmtryData>
    </InfReqRspn>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_6iqtkDzdEeGl7N0Cd54dlw"
  name="InformationRequestResponseV01"
  definition="This message is sent by the financial institution to the authorities (police, customs, tax authorities, enforcement authorities) to provide a part or all of the requested information.&#xD;&#xA;The financial institution previously received a request for financial information in the scope of a financial investigation.&#xD;&#xA;&#xD;&#xA;Depending on whether the response can be provided STP within the authorities financial investigations messages, the requested information may be &#xD;&#xA;•&#x9;provided in part or in full within the response message itself, or &#xD;&#xA;•&#x9;only referred to in the response message."
  registrationStatus="Registered"
  messageSet="_8zxLQz2SEeGG64_ngBNdUg"
  xmlTag="InfReqRspn"
  rootElement="Document"
  xmlns:xmi="http://www.omg.org/XMI">
  <messageBuildingBlock
    xmi:id="_DSEUezzjEeGl7N0Cd54dlw"
    name="ResponseIdentification"
    definition="Unique identification for the specific investigation as know by the responding party."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="RspnId"
    simpleType="_YW1tKdp-Ed-ak6NoX_4Aeg_1913463446" />
  <messageBuildingBlock
    xmi:id="_gF8WOzzoEeGl7N0Cd54dlw"
    name="InvestigationIdentification"
    definition="Unique identification for the specific investigation as known by the requesting party."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="InvstgtnId"
    simpleType="_YW1tKdp-Ed-ak6NoX_4Aeg_1913463446" />
  <messageBuildingBlock
    xmi:id="_t0ETGzzoEeGl7N0Cd54dlw"
    name="ResponseStatus"
    definition="Provides the status of the response."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="RspnSts"
    simpleType="_saUqED2yEeGXQ7zxoAIFpQ" />
  <messageBuildingBlock
    xmi:id="_U4B7wV0zEeGwFY7pvwHH-g"
    name="SearchCriteria"
    definition="Specifies the the search criteria for the financial institution to perform the search on. The search criteria can be an account, a customer identification or a payment instrument type."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="SchCrit"
    complexType="_sxyTUDv7EeGKuZXNQxGH3g" />
  <messageBuildingBlock
    xmi:id="_UbboITzuEeGl7N0Cd54dlw"
    name="ReturnIndicator"
    definition="Provides the return indicators and the investigation result."
    registrationStatus="Provisionally Registered"
    minOccurs="1"
    xmlTag="RtrInd"
    complexType="_o8EakzzuEeGl7N0Cd54dlw" />
  <messageBuildingBlock
    xmi:id="_ICHsnzzvEeGl7N0Cd54dlw"
    name="SupplementaryData"
    definition="Additional information that can not be captured in the structured fields and/or any other specific block."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SplmtryData"
    complexType="_Qn0zC9p-Ed-ak6NoX_4Aeg_468227563" />
  <messageDefinitionIdentifier
    businessArea="auth"
    messageFunctionality="002"
    flavour="001"
    version="01" />
</messageDefinition>

ISO Building Blocks

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