FullPushThroughReportV04

tsmt.018.001.04

Scope The FullPushThroughReport message is sent by the matching application to a party involved in a transaction. This message is used to pass on information that the matching application has received from the submitter. The forwarded information can originate from an InitialBaselineSubmission or BaselineReSubmission or BaselineAmendmentRequest message. Usage The FullPushThroughReport message can be sent by the matching application to a party to convey

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
%% FullPushThroughReportV04 recursion level 0 with max 0
FullPushThroughReportV04 *-- "1..1" MessageIdentification1 : ReportIdentification
FullPushThroughReportV04 *-- "1..1" SimpleIdentificationInformation : TransactionIdentification
FullPushThroughReportV04 *-- "0..1" DocumentIdentification3 : EstablishedBaselineIdentification
FullPushThroughReportV04 *-- "1..1" TransactionStatus4 : TransactionStatus
FullPushThroughReportV04 *-- "0..2" DocumentIdentification5 : UserTransactionReference
FullPushThroughReportV04 *-- "1..1" ReportType1 : ReportPurpose
FullPushThroughReportV04 *-- "1..1" Baseline4 : PushedThroughBaseline
FullPushThroughReportV04 *-- "0..1" ContactIdentification1 : BuyerContactPerson
FullPushThroughReportV04 *-- "0..1" ContactIdentification1 : SellerContactPerson
FullPushThroughReportV04 *-- "0..1" ContactIdentification1 : BuyerBankContactPerson
FullPushThroughReportV04 *-- "0..1" ContactIdentification1 : SellerBankContactPerson
FullPushThroughReportV04 *-- "0..1" ContactIdentification3 : OtherBankContactPerson
FullPushThroughReportV04 *-- "0..1" PendingActivity2 : RequestForAction
  

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

ReportIdentification building block

Identifies the report. Identifies a message by a unique identifier and the date and time when the message was created by the sender. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% MessageIdentification1 recursion level 0 with max 1
class MessageIdentification1{
    Identification IsoMax35Text
    CreationDateTime IsoISODateTime
}
  

MessageIdentification1 members

Member name Description Data Type / Multiplicity
Identification Identification of the message. IsoMax35Text - Required 1..1
CreationDateTime Date of creation of the message. IsoISODateTime - Required 1..1

TransactionIdentification building block

Unique identification assigned by the matching application to the transaction. This identification is to be used in any communication between the parties. Information related to an identification, eg, party identification or account identification. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% SimpleIdentificationInformation recursion level 0 with max 1
class SimpleIdentificationInformation{
    Identification IsoMax35Text
}
  

SimpleIdentificationInformation members

Member name Description Data Type / Multiplicity
Identification Name or number assigned by an entity to enable recognition of that entity, eg, account identifier. IsoMax35Text - Required 1..1

EstablishedBaselineIdentification building block

Unique identification assigned by the matching application to the baseline when it is established. Identifies a document by a unique identification and a version. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% DocumentIdentification3 recursion level 0 with max 1
class DocumentIdentification3{
    Identification IsoMax35Text
    Version IsoNumber
}
  

DocumentIdentification3 members

Member name Description Data Type / Multiplicity
Identification Identification of a set of data. IsoMax35Text - Required 1..1
Version Unambiguous identification of the version of a set of data. Example: Version 1. IsoNumber - Required 1..1

TransactionStatus building block

Identifies the status of the transaction by means of a code. Identifies the status of the transaction by means of a code. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% TransactionStatus4 recursion level 0 with max 1
class TransactionStatus4{
    Status BaselineStatus3Code
}
  

TransactionStatus4 members

Member name Description Data Type / Multiplicity
Status Identifies the status of the transaction by means of a code. BaselineStatus3Code - Required 1..1

UserTransactionReference building block

Reference to the transaction for the financial institution which submitted the baseline. Identifies a document by a unique identification and its issuer. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% DocumentIdentification5 recursion level 0 with max 1
class DocumentIdentification5{
    Identification IsoMax35Text
}
DocumentIdentification5 *-- "1..1" BICIdentification1 : IdentificationIssuer
%% BICIdentification1 recursion level 1 with max 1
class BICIdentification1{
    BIC IsoBICIdentifier
}
  

DocumentIdentification5 members

Member name Description Data Type / Multiplicity
Identification Identification of a set of data. IsoMax35Text - Required 1..1
IdentificationIssuer Uniquely identifies the financial institution which has issued the identification of the set of data by using a BIC. BICIdentification1 - Required 1..1

ReportPurpose building block

Specifies the type of report. Specifies the type of report. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% ReportType1 recursion level 0 with max 1
class ReportType1{
    Type ReportType1Code
}
  

ReportType1 members

Member name Description Data Type / Multiplicity
Type Specifies whether the pushed through baseline is a new one or an amendment or a resubmission. ReportType1Code - Required 1..1

PushedThroughBaseline building block

Specifies the commercial details of the underlying transaction. Specifies the commercial details of the underlying transaction. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% Baseline4 recursion level 0 with max 1
class Baseline4{
    ServiceCode TradeFinanceService2Code
    LatestMatchDate IsoISODate
    IntentToPayExpected IsoYesNoIndicator
}
Baseline4 *-- "1..1" DocumentIdentification1 : SubmitterBaselineIdentification
Baseline4 *-- "1..1" DocumentIdentification7 : PurchaseOrderReference
Baseline4 *-- "1..1" PartyIdentification26 : Buyer
Baseline4 *-- "1..1" PartyIdentification26 : Seller
Baseline4 *-- "1..1" BICIdentification1 : BuyerBank
Baseline4 *-- "1..1" BICIdentification1 : SellerBank
Baseline4 *-- "0..0" BICIdentification1 : BuyerSideSubmittingBank
Baseline4 *-- "0..0" BICIdentification1 : SellerSideSubmittingBank
Baseline4 *-- "0..1" PartyIdentification26 : BillTo
Baseline4 *-- "0..1" PartyIdentification26 : ShipTo
Baseline4 *-- "0..1" PartyIdentification26 : Consignee
Baseline4 *-- "1..1" LineItem11 : Goods
Baseline4 *-- "1..0" PaymentTerms5 : PaymentTerms
Baseline4 *-- "0..1" SettlementTerms3 : SettlementTerms
Baseline4 *-- "0..0" PaymentObligation2 : PaymentObligation
Baseline4 *-- "1..1" RequiredSubmission2 : CommercialDataSetRequired
Baseline4 *-- "0..1" RequiredSubmission2 : TransportDataSetRequired
Baseline4 *-- "0..1" RequiredSubmission3 : InsuranceDataSetRequired
Baseline4 *-- "0..0" RequiredSubmission4 : CertificateDataSetRequired
Baseline4 *-- "0..0" RequiredSubmission5 : OtherCertificateDataSetRequired
%% DocumentIdentification1 recursion level 1 with max 1
class DocumentIdentification1{
    Identification IsoMax35Text
    Version IsoNumber
}
DocumentIdentification1 *-- "1..1" BICIdentification1 : Submitter
%% DocumentIdentification7 recursion level 1 with max 1
class DocumentIdentification7{
    Identification IsoMax35Text
    DateOfIssue IsoISODate
}
%% PartyIdentification26 recursion level 1 with max 1
class PartyIdentification26{
    Name IsoMax70Text
}
PartyIdentification26 *-- "0..1" GenericIdentification4 : ProprietaryIdentification
PartyIdentification26 *-- "1..1" PostalAddress5 : PostalAddress
%% PartyIdentification26 recursion level 1 with max 1
class PartyIdentification26{
    Name IsoMax70Text
}
PartyIdentification26 *-- "0..1" GenericIdentification4 : ProprietaryIdentification
PartyIdentification26 *-- "1..1" PostalAddress5 : PostalAddress
%% BICIdentification1 recursion level 1 with max 1
class BICIdentification1{
    BIC IsoBICIdentifier
}
%% BICIdentification1 recursion level 1 with max 1
class BICIdentification1{
    BIC IsoBICIdentifier
}
%% BICIdentification1 recursion level 1 with max 1
class BICIdentification1{
    BIC IsoBICIdentifier
}
%% BICIdentification1 recursion level 1 with max 1
class BICIdentification1{
    BIC IsoBICIdentifier
}
%% PartyIdentification26 recursion level 1 with max 1
class PartyIdentification26{
    Name IsoMax70Text
}
PartyIdentification26 *-- "0..1" GenericIdentification4 : ProprietaryIdentification
PartyIdentification26 *-- "1..1" PostalAddress5 : PostalAddress
%% PartyIdentification26 recursion level 1 with max 1
class PartyIdentification26{
    Name IsoMax70Text
}
PartyIdentification26 *-- "0..1" GenericIdentification4 : ProprietaryIdentification
PartyIdentification26 *-- "1..1" PostalAddress5 : PostalAddress
%% PartyIdentification26 recursion level 1 with max 1
class PartyIdentification26{
    Name IsoMax70Text
}
PartyIdentification26 *-- "0..1" GenericIdentification4 : ProprietaryIdentification
PartyIdentification26 *-- "1..1" PostalAddress5 : PostalAddress
%% LineItem11 recursion level 1 with max 1
class LineItem11{
    GoodsDescription IsoMax70Text
    PartialShipment IsoYesNoIndicator
    TransShipment IsoYesNoIndicator
    LineItemsTotalAmount IsoCurrencyAndAmount
    TotalNetAmount IsoCurrencyAndAmount
}
LineItem11 *-- "0..1" ShipmentDateRange1 : ShipmentDateRange
LineItem11 *-- "1..0" LineItemDetails10 : LineItemDetails
LineItem11 *-- "0..1" TransportMeans5 : RoutingSummary
LineItem11 *-- "0..1" Incoterms4 : Incoterms
LineItem11 *-- "0..0" Adjustment7 : Adjustment
LineItem11 *-- "0..1" Charge24 : FreightCharges
LineItem11 *-- "0..0" Tax23 : Tax
LineItem11 *-- "0..0" UserDefinedInformation1 : BuyerDefinedInformation
LineItem11 *-- "0..0" UserDefinedInformation1 : SellerDefinedInformation
%% PaymentTerms5 recursion level 1 with max 1
PaymentTerms5 *-- "1..1" IPaymentCodeOrOther2Choice : PaymentTerms
PaymentTerms5 *-- "1..1" IAmountOrPercentage2Choice : AmountOrPercentage
%% SettlementTerms3 recursion level 1 with max 1
SettlementTerms3 *-- "0..1" IFinancialInstitutionIdentification4Choice : CreditorAgent
SettlementTerms3 *-- "1..1" CashAccount24 : CreditorAccount
%% PaymentObligation2 recursion level 1 with max 1
class PaymentObligation2{
    ExpiryDate IsoISODate
    ApplicableLaw CountryCode
}
PaymentObligation2 *-- "1..1" BICIdentification1 : ObligorBank
PaymentObligation2 *-- "1..1" BICIdentification1 : RecipientBank
PaymentObligation2 *-- "1..1" IAmountOrPercentage2Choice : PaymentObligationAmount
PaymentObligation2 *-- "0..0" Charges5 : Charges
PaymentObligation2 *-- "0..1" IBPOApplicableRules1Choice : ApplicableRules
PaymentObligation2 *-- "0..1" Location2 : PlaceOfJurisdiction
PaymentObligation2 *-- "0..0" PaymentTerms4 : PaymentTerms
PaymentObligation2 *-- "0..1" SettlementTerms3 : SettlementTerms
%% RequiredSubmission2 recursion level 1 with max 1
RequiredSubmission2 *-- "1..0" BICIdentification1 : Submitter
%% RequiredSubmission2 recursion level 1 with max 1
RequiredSubmission2 *-- "1..0" BICIdentification1 : Submitter
%% RequiredSubmission3 recursion level 1 with max 1
class RequiredSubmission3{
    MatchIssueDate IsoYesNoIndicator
    MatchTransport IsoYesNoIndicator
    MatchAmount IsoYesNoIndicator
    ClausesRequired InsuranceClauses1Code
    MatchAssuredParty AssuredType1Code
}
RequiredSubmission3 *-- "1..0" BICIdentification1 : Submitter
RequiredSubmission3 *-- "0..1" PartyIdentification27 : MatchIssuer
%% RequiredSubmission4 recursion level 1 with max 1
class RequiredSubmission4{
    CertificateType TradeCertificateType1Code
    MatchIssueDate IsoYesNoIndicator
    MatchInspectionDate IsoYesNoIndicator
    AuthorisedInspectorIndicator IsoYesNoIndicator
    MatchConsignee IsoYesNoIndicator
    LineItemIdentification IsoMax70Text
}
RequiredSubmission4 *-- "1..0" BICIdentification1 : Submitter
RequiredSubmission4 *-- "0..1" PartyIdentification27 : MatchIssuer
RequiredSubmission4 *-- "0..1" PartyIdentification27 : MatchManufacturer
%% RequiredSubmission5 recursion level 1 with max 1
class RequiredSubmission5{
    CertificateType TradeCertificateType2Code
}
RequiredSubmission5 *-- "1..0" BICIdentification1 : Submitter
  

Baseline4 members

Member name Description Data Type / Multiplicity
SubmitterBaselineIdentification Identifies the baseline provided by the submitter. DocumentIdentification1 - Required 1..1
ServiceCode Identifies the service requested by the submitter by means of a code. TradeFinanceService2Code - Required 1..1
PurchaseOrderReference Reference to the purchase order of the underlying transaction. DocumentIdentification7 - Required 1..1
Buyer Party that buys goods or services, or a financial instrument. PartyIdentification26 - Required 1..1
Seller Party that sells goods or services, or a financial instrument. PartyIdentification26 - Required 1..1
BuyerBank Financial institution of the buyer, uniquely identified by its BIC. BICIdentification1 - Required 1..1
SellerBank Financial institution of the seller, uniquely identified by its BIC. BICIdentification1 - Required 1..1
BuyerSideSubmittingBank Financial institution on the buyer’s side, uniquely identified by its BIC. As part of the transaction, it may submit data sets. BICIdentification1 - Unknown 0..0
SellerSideSubmittingBank Financial institution on the seller’s side, uniquely identified by its BIC. As part of the transaction, it may submit data sets. BICIdentification1 - Unknown 0..0
BillTo Party to be invoiced for the purchase. PartyIdentification26 - Optional 0..1
ShipTo Party to whom the goods must be delivered in the end. PartyIdentification26 - Optional 0..1
Consignee Party to whom the goods must be delivered. PartyIdentification26 - Optional 0..1
Goods Goods or services that are part of a commercial trade agreement. LineItem11 - Required 1..1
PaymentTerms Specifies the payment terms by means of a code and a limit in time. PaymentTerms5 - Unknown 1..0
SettlementTerms Specifies how the underlying transaction should be settled. SettlementTerms3 - Optional 0..1
PaymentObligation Specifies the details of the payment obligation between financial institutions in this transaction. PaymentObligation2 - Unknown 0..0
LatestMatchDate Specifies the latest date on which a data set must be matched with a baseline. IsoISODate - Optional 0..1
CommercialDataSetRequired Specifies that a commercial data set is required for each shipment part of the transaction. RequiredSubmission2 - Required 1..1
TransportDataSetRequired Specifies that a transport data set is required for each shipment part of the transaction. RequiredSubmission2 - Optional 0..1
InsuranceDataSetRequired Specifies that an insurance data set is required for each shipment part of the transaction. RequiredSubmission3 - Optional 0..1
CertificateDataSetRequired Specifies that a certificate data set is required for each shipment part of the transaction. RequiredSubmission4 - Unknown 0..0
OtherCertificateDataSetRequired Specifies that another type of certificate data set is required for each shipment part of the transaction. RequiredSubmission5 - Unknown 0..0
IntentToPayExpected Specifies that IntentToPayNotice message(s) are expected as part of this transaction. IsoYesNoIndicator - Required 1..1

BuyerContactPerson building block

Person to be contacted in the organisation of the buyer. Information needed to contact a physical person. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% ContactIdentification1 recursion level 0 with max 1
class ContactIdentification1{
    Name IsoMax35Text
    NamePrefix NamePrefix1Code
    GivenName IsoMax35Text
    Role IsoMax35Text
    PhoneNumber IsoPhoneNumber
    FaxNumber IsoPhoneNumber
    EmailAddress IsoMax256Text
}
  

ContactIdentification1 members

Member name Description Data Type / Multiplicity
Name Name by which a party is known and which is usually used to identify that party. IsoMax35Text - Required 1..1
NamePrefix Specifies the terms used to formally address a person. NamePrefix1Code - Optional 0..1
GivenName First name of a person. IsoMax35Text - Optional 0..1
Role Role of the party in the activity. IsoMax35Text - Optional 0..1
PhoneNumber Collection of information that identifies a phone number, as defined by telecom services. IsoPhoneNumber - Optional 0..1
FaxNumber Collection of information that identifies a FAX number, as defined by telecom services. IsoPhoneNumber - Optional 0..1
EmailAddress Address for electronic mail (e-mail). IsoMax256Text - Optional 0..1

SellerContactPerson building block

Person to be contacted in the organisation of the seller. Information needed to contact a physical person. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% ContactIdentification1 recursion level 0 with max 1
class ContactIdentification1{
    Name IsoMax35Text
    NamePrefix NamePrefix1Code
    GivenName IsoMax35Text
    Role IsoMax35Text
    PhoneNumber IsoPhoneNumber
    FaxNumber IsoPhoneNumber
    EmailAddress IsoMax256Text
}
  

ContactIdentification1 members

Member name Description Data Type / Multiplicity
Name Name by which a party is known and which is usually used to identify that party. IsoMax35Text - Required 1..1
NamePrefix Specifies the terms used to formally address a person. NamePrefix1Code - Optional 0..1
GivenName First name of a person. IsoMax35Text - Optional 0..1
Role Role of the party in the activity. IsoMax35Text - Optional 0..1
PhoneNumber Collection of information that identifies a phone number, as defined by telecom services. IsoPhoneNumber - Optional 0..1
FaxNumber Collection of information that identifies a FAX number, as defined by telecom services. IsoPhoneNumber - Optional 0..1
EmailAddress Address for electronic mail (e-mail). IsoMax256Text - Optional 0..1

BuyerBankContactPerson building block

Person to be contacted in the buyer’s bank. Information needed to contact a physical person. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% ContactIdentification1 recursion level 0 with max 1
class ContactIdentification1{
    Name IsoMax35Text
    NamePrefix NamePrefix1Code
    GivenName IsoMax35Text
    Role IsoMax35Text
    PhoneNumber IsoPhoneNumber
    FaxNumber IsoPhoneNumber
    EmailAddress IsoMax256Text
}
  

ContactIdentification1 members

Member name Description Data Type / Multiplicity
Name Name by which a party is known and which is usually used to identify that party. IsoMax35Text - Required 1..1
NamePrefix Specifies the terms used to formally address a person. NamePrefix1Code - Optional 0..1
GivenName First name of a person. IsoMax35Text - Optional 0..1
Role Role of the party in the activity. IsoMax35Text - Optional 0..1
PhoneNumber Collection of information that identifies a phone number, as defined by telecom services. IsoPhoneNumber - Optional 0..1
FaxNumber Collection of information that identifies a FAX number, as defined by telecom services. IsoPhoneNumber - Optional 0..1
EmailAddress Address for electronic mail (e-mail). IsoMax256Text - Optional 0..1

SellerBankContactPerson building block

Person to be contacted in the seller’s bank. Information needed to contact a physical person. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% ContactIdentification1 recursion level 0 with max 1
class ContactIdentification1{
    Name IsoMax35Text
    NamePrefix NamePrefix1Code
    GivenName IsoMax35Text
    Role IsoMax35Text
    PhoneNumber IsoPhoneNumber
    FaxNumber IsoPhoneNumber
    EmailAddress IsoMax256Text
}
  

ContactIdentification1 members

Member name Description Data Type / Multiplicity
Name Name by which a party is known and which is usually used to identify that party. IsoMax35Text - Required 1..1
NamePrefix Specifies the terms used to formally address a person. NamePrefix1Code - Optional 0..1
GivenName First name of a person. IsoMax35Text - Optional 0..1
Role Role of the party in the activity. IsoMax35Text - Optional 0..1
PhoneNumber Collection of information that identifies a phone number, as defined by telecom services. IsoPhoneNumber - Optional 0..1
FaxNumber Collection of information that identifies a FAX number, as defined by telecom services. IsoPhoneNumber - Optional 0..1
EmailAddress Address for electronic mail (e-mail). IsoMax256Text - Optional 0..1

OtherBankContactPerson building block

Person to be contacted in another bank than the seller or buyer’s bank. Information needed to contact a physical person. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% ContactIdentification3 recursion level 0 with max 1
class ContactIdentification3{
    BIC IsoBICIdentifier
    Name IsoMax35Text
    NamePrefix NamePrefix1Code
    GivenName IsoMax35Text
    Role IsoMax35Text
    PhoneNumber IsoPhoneNumber
    FaxNumber IsoPhoneNumber
    EmailAddress IsoMax256Text
}
  

ContactIdentification3 members

Member name Description Data Type / Multiplicity
BIC Business Identifier Code to identify the financial institution that the contact person belongs to. IsoBICIdentifier - Required 1..1
Name Name by which a party is known and which is usually used to identify that party. IsoMax35Text - Required 1..1
NamePrefix Specifies the terms used to formally address a person. NamePrefix1Code - Optional 0..1
GivenName First name of a person. IsoMax35Text - Optional 0..1
Role Role of the party in the activity. IsoMax35Text - Optional 0..1
PhoneNumber Collection of information that identifies a phone number, as defined by telecom services. IsoPhoneNumber - Optional 0..1
FaxNumber Collection of information that identifies a FAX number, as defined by telecom services. IsoPhoneNumber - Optional 0..1
EmailAddress Address for electronic mail (e-mail). IsoMax256Text - Optional 0..1

RequestForAction building block

Information on the next processing step required. Specifies the event that require an action from one of the parties to the trade transaction. For comparison, see the ISO20022 official specification

classDiagram
   direction tb
%% PendingActivity2 recursion level 0 with max 1
class PendingActivity2{
    Type Action2Code
    Description IsoMax140Text
}
  

PendingActivity2 members

Member name Description Data Type / Multiplicity
Type Code which specifies the next course of action that the receiver of the message must take. Action2Code - Required 1..1
Description Further information on the course of action that the receiver of the message must take. IsoMax140Text - Optional 0..1

Extensibility and generalization considerations

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

classDiagram
    class IOuterRecord
    FullPushThroughReportV04 --|> IOuterRecord : Implements
    FullPushThroughReportV04Document --|> IOuterDocument~FullPushThroughReportV04~ : Implements
    class IOuterDocument~FullPushThroughReportV04~ {
        FullPushThroughReportV04 Message
     }
  

Document wrapper for serialization

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

classDiagram
    FullPushThroughReportV04Document *-- FullPushThroughReportV04 : 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:tsmt.018.001.04">
    <FullPushThrghRpt>
        <RptId>
            <!-- ReportIdentification inner content -->
        </RptId>
        <TxId>
            <!-- TransactionIdentification inner content -->
        </TxId>
        <EstblishdBaselnId>
            <!-- EstablishedBaselineIdentification inner content -->
        </EstblishdBaselnId>
        <TxSts>
            <!-- TransactionStatus inner content -->
        </TxSts>
        <UsrTxRef>
            <!-- UserTransactionReference inner content -->
        </UsrTxRef>
        <RptPurp>
            <!-- ReportPurpose inner content -->
        </RptPurp>
        <PushdThrghBaseln>
            <!-- PushedThroughBaseline inner content -->
        </PushdThrghBaseln>
        <BuyrCtctPrsn>
            <!-- BuyerContactPerson inner content -->
        </BuyrCtctPrsn>
        <SellrCtctPrsn>
            <!-- SellerContactPerson inner content -->
        </SellrCtctPrsn>
        <BuyrBkCtctPrsn>
            <!-- BuyerBankContactPerson inner content -->
        </BuyrBkCtctPrsn>
        <SellrBkCtctPrsn>
            <!-- SellerBankContactPerson inner content -->
        </SellrBkCtctPrsn>
        <OthrBkCtctPrsn>
            <!-- OtherBankContactPerson inner content -->
        </OthrBkCtctPrsn>
        <ReqForActn>
            <!-- RequestForAction inner content -->
        </ReqForActn>
    </FullPushThrghRpt>
</Document>

Data from ISO specification

This is the technical data from the specification document.

<messageDefinition
  xmi:id="_9e8ZUdNTEeK-v49t1oWkNA"
  nextVersions="_eIi6UQgGEeSeS5xdjFfOTw"
  previousVersion="_paNNeNE8Ed-BzquC8wXy7w_-1602880214"
  name="FullPushThroughReportV04"
  definition="Scope&#xD;&#xA;The FullPushThroughReport message is sent by the matching application to a party involved in a transaction.&#xD;&#xA;This message is used to pass on information that the matching application has received from the submitter. The forwarded information can originate from an InitialBaselineSubmission or BaselineReSubmission or BaselineAmendmentRequest message.&#xD;&#xA;Usage&#xD;&#xA;The FullPushThroughReport message can be sent by the matching application to a party to convey&#xD;&#xA;- the details of an InitialBaselineSubmission message that it has obtained, or&#xD;&#xA;- the details of a BaselineResubmission message that it has obtained, or&#xD;&#xA;- the details of a BaselineAmendmentRequest message that it has obtained."
  registrationStatus="Registered"
  messageSet="_wRx2yk2rEeG_I4xRYCA_7g _urpIICeJEeOCeO5e7islRQ"
  xmlTag="FullPushThrghRpt"
  rootElement="Document"
  xmlns:xmi="http://www.omg.org/XMI">
  <doclet
    xmi:id="_9oQtYNNTEeK-v49t1oWkNA"
    type="purpose" />
  <messageBuildingBlock
    xmi:id="_9e8ZU9NTEeK-v49t1oWkNA"
    nextVersions="_eIi6VQgGEeSeS5xdjFfOTw"
    previousVersion="_paNNedE8Ed-BzquC8wXy7w_-1602880211"
    name="ReportIdentification"
    definition="Identifies the report."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="RptId"
    complexType="_Q7pG5Np-Ed-ak6NoX_4Aeg_-967008570" />
  <messageBuildingBlock
    xmi:id="_9e8ZVdNTEeK-v49t1oWkNA"
    nextVersions="_eIi6VwgGEeSeS5xdjFfOTw"
    previousVersion="_paNNetE8Ed-BzquC8wXy7w_-1602880178"
    name="TransactionIdentification"
    definition="Unique identification assigned by the matching application to the transaction.&#xA;This identification is to be used in any communication between the parties."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="TxId"
    complexType="_P-ile9p-Ed-ak6NoX_4Aeg_745508310" />
  <messageBuildingBlock
    xmi:id="_9e8ZV9NTEeK-v49t1oWkNA"
    nextVersions="_eIi6WQgGEeSeS5xdjFfOTw"
    previousVersion="_paNNe9E8Ed-BzquC8wXy7w_-1602879810"
    name="EstablishedBaselineIdentification"
    definition="Unique identification assigned by the matching application to the baseline when it is established."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="EstblishdBaselnId"
    complexType="_RJNBwdp-Ed-ak6NoX_4Aeg_-1127047102" />
  <messageBuildingBlock
    xmi:id="_9e8ZWdNTEeK-v49t1oWkNA"
    nextVersions="_eIi6WwgGEeSeS5xdjFfOTw"
    previousVersion="_paNNfNE8Ed-BzquC8wXy7w_-1602880093"
    name="TransactionStatus"
    definition="Identifies the status of the transaction by means of a code."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="TxSts"
    complexType="_RbFb-Np-Ed-ak6NoX_4Aeg_1598523783" />
  <messageBuildingBlock
    xmi:id="_9e8ZW9NTEeK-v49t1oWkNA"
    nextVersions="_eIi6XQgGEeSeS5xdjFfOTw"
    previousVersion="_paW-cNE8Ed-BzquC8wXy7w_-1602879793"
    name="UserTransactionReference"
    definition="Reference to the transaction for the financial institution which submitted the baseline."
    registrationStatus="Provisionally Registered"
    maxOccurs="2"
    minOccurs="0"
    xmlTag="UsrTxRef"
    complexType="_RJWLsdp-Ed-ak6NoX_4Aeg_-86119846" />
  <messageBuildingBlock
    xmi:id="_9e8ZXdNTEeK-v49t1oWkNA"
    nextVersions="_eIi6XwgGEeSeS5xdjFfOTw"
    previousVersion="_paW-cdE8Ed-BzquC8wXy7w_-1602880136"
    name="ReportPurpose"
    definition="Specifies the type of report."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="RptPurp"
    complexType="_RJ8opdp-Ed-ak6NoX_4Aeg_1748144086" />
  <messageBuildingBlock
    xmi:id="_9e9AYdNTEeK-v49t1oWkNA"
    nextVersions="_eIi6YQgGEeSeS5xdjFfOTw"
    previousVersion="_paW-ctE8Ed-BzquC8wXy7w_-1602879673"
    name="PushedThroughBaseline"
    definition="Specifies the commercial details of the underlying transaction."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="1"
    xmlTag="PushdThrghBaseln"
    complexType="_Ym19EdM7EeK-v49t1oWkNA" />
  <messageBuildingBlock
    xmi:id="_9e9AY9NTEeK-v49t1oWkNA"
    nextVersions="_eIi6YwgGEeSeS5xdjFfOTw"
    previousVersion="_paW-c9E8Ed-BzquC8wXy7w_-1602879715"
    name="BuyerContactPerson"
    definition="Person to be contacted in the organisation of the buyer."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="BuyrCtctPrsn"
    complexType="_QBOtE9p-Ed-ak6NoX_4Aeg_-1391367345" />
  <messageBuildingBlock
    xmi:id="_9e9AZdNTEeK-v49t1oWkNA"
    nextVersions="_eIi6ZQgGEeSeS5xdjFfOTw"
    previousVersion="_paW-dNE8Ed-BzquC8wXy7w_-1602879163"
    name="SellerContactPerson"
    definition="Person to be contacted in the organisation of the seller."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SellrCtctPrsn"
    complexType="_QBOtE9p-Ed-ak6NoX_4Aeg_-1391367345" />
  <messageBuildingBlock
    xmi:id="_9e9AZ9NTEeK-v49t1oWkNA"
    nextVersions="_eIi6ZwgGEeSeS5xdjFfOTw"
    previousVersion="_paW-ddE8Ed-BzquC8wXy7w_-1602879518"
    name="BuyerBankContactPerson"
    definition="Person to be contacted in the buyer's bank."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="BuyrBkCtctPrsn"
    complexType="_QBOtE9p-Ed-ak6NoX_4Aeg_-1391367345" />
  <messageBuildingBlock
    xmi:id="_9e9AadNTEeK-v49t1oWkNA"
    nextVersions="_eIi6aQgGEeSeS5xdjFfOTw"
    previousVersion="_paW-dtE8Ed-BzquC8wXy7w_-1602879638"
    name="SellerBankContactPerson"
    definition="Person to be contacted in the seller's bank."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="SellrBkCtctPrsn"
    complexType="_QBOtE9p-Ed-ak6NoX_4Aeg_-1391367345" />
  <messageBuildingBlock
    xmi:id="_9e9Aa9NTEeK-v49t1oWkNA"
    nextVersions="_eIi6awgGEeSeS5xdjFfOTw"
    previousVersion="_paW-d9E8Ed-BzquC8wXy7w_-595440751"
    name="OtherBankContactPerson"
    definition="Person to be contacted in another bank than the seller or buyer's bank."
    registrationStatus="Provisionally Registered"
    minOccurs="0"
    xmlTag="OthrBkCtctPrsn"
    complexType="_QDTwsdp-Ed-ak6NoX_4Aeg_-1939165929" />
  <messageBuildingBlock
    xmi:id="_9e9AbdNTEeK-v49t1oWkNA"
    nextVersions="_eIi6bQgGEeSeS5xdjFfOTw"
    previousVersion="_pagIYNE8Ed-BzquC8wXy7w_-1602879750"
    name="RequestForAction"
    definition="Information on the next processing step required."
    registrationStatus="Provisionally Registered"
    maxOccurs="1"
    minOccurs="0"
    xmlTag="ReqForActn"
    complexType="_RaowBtp-Ed-ak6NoX_4Aeg_-888447978" />
  <messageDefinitionIdentifier
    businessArea="tsmt"
    messageFunctionality="018"
    flavour="001"
    version="04" />
</messageDefinition>

ISO Building Blocks

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