camt03000105

package
Version: v0.0.0-...-e76cf3b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 6, 2021 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AMLIndicator

type AMLIndicator string

type AccountIdentification4Choice

type AccountIdentification4Choice struct {
	XMLName xml.Name

	// International Bank Account Number (IBAN) - identifier used internationally by financial institutions to uniquely identify the account of a customer. Further specifications of the format and content of the IBAN can be found in the standard ISO 13616 "Banking and related financial services - International Bank Account Number (IBAN)" version 1997-10-01, or later revisions.
	IBAN *IBAN2007Identifier `xml:"IBAN" json:"iban" `

	// Unique identification of an account, as assigned by the account servicer, using an identification scheme.
	Othr *GenericAccountIdentification1 `xml:"Othr" json:"othr" `
}

Specifies the unique identification of an account as assigned by the account servicer.

func (*AccountIdentification4Choice) AddOthr

func (*AccountIdentification4Choice) SetIBAN

func (a *AccountIdentification4Choice) SetIBAN(value string)

type AccountSchemeName1Choice

type AccountSchemeName1Choice struct {
	XMLName xml.Name

	// Name of the identification scheme, in a coded form as published in an external list.
	Cd *ExternalAccountIdentification1Code `xml:"Cd" json:"cd" `

	// Name of the identification scheme, in a free text form.
	Prtry *Max35Text `xml:"Prtry" json:"prtry" `
}

Sets of elements to identify a name of the identification scheme.

func (*AccountSchemeName1Choice) SetCd

func (a *AccountSchemeName1Choice) SetCd(value string)

func (*AccountSchemeName1Choice) SetPrtry

func (a *AccountSchemeName1Choice) SetPrtry(value string)

type ActiveCurrencyAndAmount

type ActiveCurrencyAndAmount struct {
	XMLName  xml.Name
	Value    string `xml:",chardata"`
	Currency string `xml:"Ccy,attr"`
}

A number of monetary units specified in an active currency where the unit of currency is explicit and compliant with ISO 4217.

func NewActiveCurrencyAndAmount

func NewActiveCurrencyAndAmount(value, currency string) *ActiveCurrencyAndAmount

type ActiveOrHistoricCurrencyAndAmount

type ActiveOrHistoricCurrencyAndAmount struct {
	XMLName  xml.Name
	Value    string `xml:",chardata"`
	Currency string `xml:"Ccy,attr"`
}

A number of monetary units specified in an active or a historic currency where the unit of currency is explicit and compliant with ISO 4217.

func NewActiveOrHistoricCurrencyAndAmount

func NewActiveOrHistoricCurrencyAndAmount(value, currency string) *ActiveOrHistoricCurrencyAndAmount

type ActiveOrHistoricCurrencyCode

type ActiveOrHistoricCurrencyCode string

type AddressType2Code

type AddressType2Code string

type AddressType3Choice

type AddressType3Choice struct {
	XMLName xml.Name

	// Type of address expressed as a code.
	Cd *AddressType2Code `xml:"Cd" json:"cd" `

	// Type of address expressed as a proprietary code.
	Prtry *GenericIdentification30 `xml:"Prtry" json:"prtry" `
}

Choice of formats for the type of address.

func (*AddressType3Choice) AddPrtry

func (*AddressType3Choice) SetCd

func (a *AddressType3Choice) SetCd(value string)

type AmendmentInformationDetails12

type AmendmentInformationDetails12 struct {
	XMLName xml.Name

	// Unique identification, as assigned by the creditor, to unambiguously identify the original mandate.
	OrgnlMndtId *Max35Text `xml:"OrgnlMndtId,omitempty" json:"orgnl_mndt_id" `

	// Original creditor scheme identification that has been modified.
	OrgnlCdtrSchmeId *PartyIdentification125 `xml:"OrgnlCdtrSchmeId,omitempty" json:"orgnl_cdtr_schme_id" `

	// Original creditor agent that has been modified.
	OrgnlCdtrAgt *BranchAndFinancialInstitutionIdentification5 `xml:"OrgnlCdtrAgt,omitempty" json:"orgnl_cdtr_agt" `

	// Original creditor agent account that has been modified.
	OrgnlCdtrAgtAcct *CashAccount24 `xml:"OrgnlCdtrAgtAcct,omitempty" json:"orgnl_cdtr_agt_acct" `

	// Original debtor that has been modified.
	OrgnlDbtr *PartyIdentification125 `xml:"OrgnlDbtr,omitempty" json:"orgnl_dbtr" `

	// Original debtor account that has been modified.
	OrgnlDbtrAcct *CashAccount24 `xml:"OrgnlDbtrAcct,omitempty" json:"orgnl_dbtr_acct" `

	// Original debtor agent that has been modified.
	OrgnlDbtrAgt *BranchAndFinancialInstitutionIdentification5 `xml:"OrgnlDbtrAgt,omitempty" json:"orgnl_dbtr_agt" `

	// Original debtor agent account that has been modified.
	OrgnlDbtrAgtAcct *CashAccount24 `xml:"OrgnlDbtrAgtAcct,omitempty" json:"orgnl_dbtr_agt_acct" `

	// Original final collection date that has been modified.
	OrgnlFnlColltnDt *ISODate `xml:"OrgnlFnlColltnDt,omitempty" json:"orgnl_fnl_colltn_dt" `

	// Original frequency that has been modified.
	OrgnlFrqcy *Frequency36Choice `xml:"OrgnlFrqcy,omitempty" json:"orgnl_frqcy" `

	// Original reason for the mandate to allow the user to distinguish between different mandates for the same creditor.
	OrgnlRsn *MandateSetupReason1Choice `xml:"OrgnlRsn,omitempty" json:"orgnl_rsn" `

	// Original number of tracking days that has been modified.
	OrgnlTrckgDays *Exact2NumericText `xml:"OrgnlTrckgDays,omitempty" json:"orgnl_trckg_days" `
}

Provides further details on the list of direct debit mandate elements that have been modified when the amendment indicator has been set.

func (*AmendmentInformationDetails12) AddOrgnlCdtrAgt

func (*AmendmentInformationDetails12) AddOrgnlCdtrAgtAcct

func (a *AmendmentInformationDetails12) AddOrgnlCdtrAgtAcct() *CashAccount24

func (*AmendmentInformationDetails12) AddOrgnlCdtrSchmeId

func (a *AmendmentInformationDetails12) AddOrgnlCdtrSchmeId() *PartyIdentification125

func (*AmendmentInformationDetails12) AddOrgnlDbtr

func (*AmendmentInformationDetails12) AddOrgnlDbtrAcct

func (a *AmendmentInformationDetails12) AddOrgnlDbtrAcct() *CashAccount24

func (*AmendmentInformationDetails12) AddOrgnlDbtrAgt

func (*AmendmentInformationDetails12) AddOrgnlDbtrAgtAcct

func (a *AmendmentInformationDetails12) AddOrgnlDbtrAgtAcct() *CashAccount24

func (*AmendmentInformationDetails12) AddOrgnlFrqcy

func (*AmendmentInformationDetails12) AddOrgnlRsn

func (*AmendmentInformationDetails12) SetOrgnlFnlColltnDt

func (a *AmendmentInformationDetails12) SetOrgnlFnlColltnDt(value string)

func (*AmendmentInformationDetails12) SetOrgnlMndtId

func (a *AmendmentInformationDetails12) SetOrgnlMndtId(value string)

func (*AmendmentInformationDetails12) SetOrgnlTrckgDays

func (a *AmendmentInformationDetails12) SetOrgnlTrckgDays(value string)

type AmendmentInformationDetails13

type AmendmentInformationDetails13 struct {
	XMLName xml.Name

	// Unique identification, as assigned by the creditor, to unambiguously identify the original mandate.
	OrgnlMndtId *Max35Text `xml:"OrgnlMndtId,omitempty" json:"orgnl_mndt_id" `

	// Original creditor scheme identification that has been modified.
	OrgnlCdtrSchmeId *PartyIdentification135 `xml:"OrgnlCdtrSchmeId,omitempty" json:"orgnl_cdtr_schme_id" `

	// Original creditor agent that has been modified.
	OrgnlCdtrAgt *BranchAndFinancialInstitutionIdentification6 `xml:"OrgnlCdtrAgt,omitempty" json:"orgnl_cdtr_agt" `

	// Original creditor agent account that has been modified.
	OrgnlCdtrAgtAcct *CashAccount38 `xml:"OrgnlCdtrAgtAcct,omitempty" json:"orgnl_cdtr_agt_acct" `

	// Original debtor that has been modified.
	OrgnlDbtr *PartyIdentification135 `xml:"OrgnlDbtr,omitempty" json:"orgnl_dbtr" `

	// Original debtor account that has been modified.
	OrgnlDbtrAcct *CashAccount38 `xml:"OrgnlDbtrAcct,omitempty" json:"orgnl_dbtr_acct" `

	// Original debtor agent that has been modified.
	OrgnlDbtrAgt *BranchAndFinancialInstitutionIdentification6 `xml:"OrgnlDbtrAgt,omitempty" json:"orgnl_dbtr_agt" `

	// Original debtor agent account that has been modified.
	OrgnlDbtrAgtAcct *CashAccount38 `xml:"OrgnlDbtrAgtAcct,omitempty" json:"orgnl_dbtr_agt_acct" `

	// Original final collection date that has been modified.
	OrgnlFnlColltnDt *ISODate `xml:"OrgnlFnlColltnDt,omitempty" json:"orgnl_fnl_colltn_dt" `

	// Original frequency that has been modified.
	OrgnlFrqcy *Frequency36Choice `xml:"OrgnlFrqcy,omitempty" json:"orgnl_frqcy" `

	// Original reason for the mandate to allow the user to distinguish between different mandates for the same creditor.
	OrgnlRsn *MandateSetupReason1Choice `xml:"OrgnlRsn,omitempty" json:"orgnl_rsn" `

	// Original number of tracking days that has been modified.
	OrgnlTrckgDays *Exact2NumericText `xml:"OrgnlTrckgDays,omitempty" json:"orgnl_trckg_days" `
}

Provides further details on the list of direct debit mandate elements that have been modified when the amendment indicator has been set.

func (*AmendmentInformationDetails13) AddOrgnlCdtrAgt

func (*AmendmentInformationDetails13) AddOrgnlCdtrAgtAcct

func (a *AmendmentInformationDetails13) AddOrgnlCdtrAgtAcct() *CashAccount38

func (*AmendmentInformationDetails13) AddOrgnlCdtrSchmeId

func (a *AmendmentInformationDetails13) AddOrgnlCdtrSchmeId() *PartyIdentification135

func (*AmendmentInformationDetails13) AddOrgnlDbtr

func (*AmendmentInformationDetails13) AddOrgnlDbtrAcct

func (a *AmendmentInformationDetails13) AddOrgnlDbtrAcct() *CashAccount38

func (*AmendmentInformationDetails13) AddOrgnlDbtrAgt

func (*AmendmentInformationDetails13) AddOrgnlDbtrAgtAcct

func (a *AmendmentInformationDetails13) AddOrgnlDbtrAgtAcct() *CashAccount38

func (*AmendmentInformationDetails13) AddOrgnlFrqcy

func (*AmendmentInformationDetails13) AddOrgnlRsn

func (*AmendmentInformationDetails13) SetOrgnlFnlColltnDt

func (a *AmendmentInformationDetails13) SetOrgnlFnlColltnDt(value string)

func (*AmendmentInformationDetails13) SetOrgnlMndtId

func (a *AmendmentInformationDetails13) SetOrgnlMndtId(value string)

func (*AmendmentInformationDetails13) SetOrgnlTrckgDays

func (a *AmendmentInformationDetails13) SetOrgnlTrckgDays(value string)

type AmountType4Choice

type AmountType4Choice struct {
	XMLName xml.Name

	// Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.
	//
	// Usage: This amount has to be transported unchanged through the transaction chain.
	InstdAmt *ActiveOrHistoricCurrencyAndAmount `xml:"InstdAmt" json:"instd_amt" `

	// Amount of money to be moved between the debtor and creditor, expressed in the currency of the debtor's account, and the currency in which the amount is to be moved.
	EqvtAmt *EquivalentAmount2 `xml:"EqvtAmt" json:"eqvt_amt" `
}

Specifies the amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.

func (*AmountType4Choice) AddEqvtAmt

func (a *AmountType4Choice) AddEqvtAmt() *EquivalentAmount2

func (*AmountType4Choice) SetInstdAmt

func (a *AmountType4Choice) SetInstdAmt(value, currency string)

type AnyBICDec2014Identifier

type AnyBICDec2014Identifier string

type AnyBICIdentifier

type AnyBICIdentifier string

type Authorisation1Choice

type Authorisation1Choice struct {
	XMLName xml.Name

	// Specifies the authorisation, in a coded form.
	Cd *Authorisation1Code `xml:"Cd" json:"cd" `

	// Specifies the authorisation, in a free text form.
	Prtry *Max128Text `xml:"Prtry" json:"prtry" `
}

Provides the details on the user identification or any user key that allows to check if the initiating party is allowed to issue the transaction.

func (*Authorisation1Choice) SetCd

func (a *Authorisation1Choice) SetCd(value string)

func (*Authorisation1Choice) SetPrtry

func (a *Authorisation1Choice) SetPrtry(value string)

type Authorisation1Code

type Authorisation1Code string

type BICFIDec2014Identifier

type BICFIDec2014Identifier string

type BICFIIdentifier

type BICFIIdentifier string

type BaseOneRate

type BaseOneRate string

type BatchBookingIndicator

type BatchBookingIndicator string

type BranchAndFinancialInstitutionIdentification5

type BranchAndFinancialInstitutionIdentification5 struct {
	XMLName xml.Name

	// Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised or proprietary identification scheme.
	FinInstnId *FinancialInstitutionIdentification8 `xml:"FinInstnId" json:"fin_instn_id" `

	// Identifies a specific branch of a financial institution.
	//
	// Usage: This component should be used in case the identification information in the financial institution component does not provide identification up to branch level.
	BrnchId *BranchData2 `xml:"BrnchId,omitempty" json:"brnch_id" `
}

Set of elements used to uniquely and unambiguously identify a financial institution or a branch of a financial institution.

func (*BranchAndFinancialInstitutionIdentification5) AddBrnchId

func (*BranchAndFinancialInstitutionIdentification5) AddFinInstnId

type BranchAndFinancialInstitutionIdentification6

type BranchAndFinancialInstitutionIdentification6 struct {
	XMLName xml.Name

	// Unique and unambiguous identification of a financial institution, as assigned under an internationally recognised or proprietary identification scheme.
	FinInstnId *FinancialInstitutionIdentification18 `xml:"FinInstnId" json:"fin_instn_id" `

	// Identifies a specific branch of a financial institution.
	//
	// Usage: This component should be used in case the identification information in the financial institution component does not provide identification up to branch level.
	BrnchId *BranchData3 `xml:"BrnchId,omitempty" json:"brnch_id" `
}

Unique and unambiguous identification of a financial institution or a branch of a financial institution.

func (*BranchAndFinancialInstitutionIdentification6) AddBrnchId

func (*BranchAndFinancialInstitutionIdentification6) AddFinInstnId

type BranchData2

type BranchData2 struct {
	XMLName xml.Name

	// Unique and unambiguous identification of a branch of a financial institution.
	Id *Max35Text `xml:"Id,omitempty" json:"id" `

	// Name by which an agent is known and which is usually used to identify that agent.
	Nm *Max140Text `xml:"Nm,omitempty" json:"nm" `

	// Information that locates and identifies a specific address, as defined by postal services.
	PstlAdr *PostalAddress6 `xml:"PstlAdr,omitempty" json:"pstl_adr" `
}

Information that locates and identifies a specific branch of a financial institution.

func (*BranchData2) AddPstlAdr

func (b *BranchData2) AddPstlAdr() *PostalAddress6

func (*BranchData2) SetId

func (b *BranchData2) SetId(value string)

func (*BranchData2) SetNm

func (b *BranchData2) SetNm(value string)

type BranchData3

type BranchData3 struct {
	XMLName xml.Name

	// Unique and unambiguous identification of a branch of a financial institution.
	Id *Max35Text `xml:"Id,omitempty" json:"id" `

	// Legal entity identification for the branch of the financial institution.
	LEI *LEIIdentifier `xml:"LEI,omitempty" json:"lei" `

	// Name by which an agent is known and which is usually used to identify that agent.
	Nm *Max140Text `xml:"Nm,omitempty" json:"nm" `

	// Information that locates and identifies a specific address, as defined by postal services.
	PstlAdr *PostalAddress24 `xml:"PstlAdr,omitempty" json:"pstl_adr" `
}

Information that locates and identifies a specific branch of a financial institution.

func (*BranchData3) AddPstlAdr

func (b *BranchData3) AddPstlAdr() *PostalAddress24

func (*BranchData3) SetId

func (b *BranchData3) SetId(value string)

func (*BranchData3) SetLEI

func (b *BranchData3) SetLEI(value string)

func (*BranchData3) SetNm

func (b *BranchData3) SetNm(value string)

type BusinessApplicationHeader1

type BusinessApplicationHeader1 struct {
	XMLName xml.Name

	// Contains the character set of the text-based elements used in the Business Message.
	CharSet *UnicodeChartsCode `xml:"CharSet,omitempty" json:"char_set" `

	// The sending MessagingEndpoint that has created this Business Message for the receiving MessagingEndpoint that will process this Business Message.
	//
	// Note	the sending MessagingEndpoint might be different from the sending address potentially contained in the transport header (as defined in the transport layer).
	Fr *Party9Choice `xml:"Fr" json:"fr" `

	// The MessagingEndpoint designated by the sending MessagingEndpoint to be the recipient who will ultimately process this Business Message.
	//
	// Note the receiving MessagingEndpoint might be different from the receiving address potentially contained in the transport header (as defined in the transport layer).
	To *Party9Choice `xml:"To" json:"to" `

	// Unambiguously identifies the Business Message to the MessagingEndpoint that has created the Business Message.
	BizMsgIdr *Max35Text `xml:"BizMsgIdr" json:"biz_msg_idr" `

	// Contains the MessageIdentifier that defines the BusinessMessage.
	// It must contain a MessageIdentifier published on the ISO 20022 website.
	//
	// example	camt.001.001.03.
	MsgDefIdr *Max35Text `xml:"MsgDefIdr" json:"msg_def_idr" `

	// Specifies the business service agreed between the two MessagingEndpoints under which rules this Business Message is exchanged.
	//  To be used when there is a choice of processing services or processing service levels.
	// Example: E&I.
	BizSvc *Max35Text `xml:"BizSvc,omitempty" json:"biz_svc" `

	// Date and time when this Business Message (header) was created.
	// Note Times must be normalized, using the "Z" annotation.
	CreDt *ISONormalisedDateTime `xml:"CreDt" json:"cre_dt" `

	// Indicates whether the message is a Copy, a Duplicate or a copy of a duplicate of a previously sent ISO 20022 Message.
	CpyDplct *CopyDuplicate1Code `xml:"CpyDplct,omitempty" json:"cpy_dplct" `

	// Flag indicating if the Business Message exchanged between the MessagingEndpoints is possibly a duplicate.
	// If the receiving MessagingEndpoint did not receive the original, then this Business Message should be processed as if it were the original.
	//
	// If the receiving MessagingEndpoint did receive the original, then it should perform necessary actions to avoid processing this Business Message again.
	//
	// This will guarantee business idempotent behaviour.
	//
	// NOTE: this is named "PossResend" in FIX - this is an application level resend not a network level retransmission.
	PssblDplct *YesNoIndicator `xml:"PssblDplct,omitempty" json:"pssbl_dplct" `

	// Relative indication of the processing precedence of the message over a (set of) Business Messages with assigned priorities.
	Prty *BusinessMessagePriorityCode `xml:"Prty,omitempty" json:"prty" `

	// Contains the digital signature of the Business Entity authorised to sign this Business Message.
	Sgntr *SignatureEnvelope `xml:"Sgntr,omitempty" json:"sgntr" `
}

Specifies the Business Application Header of the Business Message. Can be used when replying to a query; can also be used when canceling or amending.

func (*BusinessApplicationHeader1) AddFr

func (*BusinessApplicationHeader1) AddSgntr

func (*BusinessApplicationHeader1) AddTo

func (*BusinessApplicationHeader1) SetBizMsgIdr

func (b *BusinessApplicationHeader1) SetBizMsgIdr(value string)

func (*BusinessApplicationHeader1) SetBizSvc

func (b *BusinessApplicationHeader1) SetBizSvc(value string)

func (*BusinessApplicationHeader1) SetCharSet

func (b *BusinessApplicationHeader1) SetCharSet(value string)

func (*BusinessApplicationHeader1) SetCpyDplct

func (b *BusinessApplicationHeader1) SetCpyDplct(value string)

func (*BusinessApplicationHeader1) SetCreDt

func (b *BusinessApplicationHeader1) SetCreDt(value string)

func (*BusinessApplicationHeader1) SetMsgDefIdr

func (b *BusinessApplicationHeader1) SetMsgDefIdr(value string)

func (*BusinessApplicationHeader1) SetPrty

func (b *BusinessApplicationHeader1) SetPrty(value string)

func (*BusinessApplicationHeader1) SetPssblDplct

func (b *BusinessApplicationHeader1) SetPssblDplct(value string)

type BusinessApplicationHeaderV01

type BusinessApplicationHeaderV01 struct {
	XMLName xml.Name

	// Contains the character set of the text-based elements used in the Business Message.
	CharSet *UnicodeChartsCode `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 CharSet,omitempty" json:"char_set" `

	// The sending MessagingEndpoint that has created this Business Message for the receiving MessagingEndpoint that will process this Business Message.
	//
	// Note	the sending MessagingEndpoint might be different from the sending address potentially contained in the transport header (as defined in the transport layer).
	Fr *Party9Choice `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 Fr" json:"fr" `

	// The MessagingEndpoint designated by the sending MessagingEndpoint to be the recipient who will ultimately process this Business Message.
	//
	// Note the receiving MessagingEndpoint might be different from the receiving address potentially contained in the transport header (as defined in the transport layer).
	To *Party9Choice `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 To" json:"to" `

	// Unambiguously identifies the Business Message to the MessagingEndpoint that has created the Business Message.
	BizMsgIdr *Max35Text `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 BizMsgIdr" json:"biz_msg_idr" `

	// Contains the MessageIdentifier that defines the BusinessMessage.
	// It must contain a MessageIdentifier published on the ISO 20022 website.
	//
	// example	camt.001.001.03.
	MsgDefIdr *Max35Text `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 MsgDefIdr" json:"msg_def_idr" `

	// Specifies the business service agreed between the two MessagingEndpoints under which rules this Business Message is exchanged.
	//  To be used when there is a choice of processing services or processing service levels.
	// Example: E&I.
	BizSvc *Max35Text `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 BizSvc,omitempty" json:"biz_svc" `

	// Date and time when this Business Message (header) was created.
	// Note Times must be normalized, using the "Z" annotation.
	CreDt *ISONormalisedDateTime `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 CreDt" json:"cre_dt" `

	// Indicates whether the message is a Copy, a Duplicate or a copy of a duplicate of a previously sent ISO 20022 Message.
	CpyDplct *CopyDuplicate1Code `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 CpyDplct,omitempty" json:"cpy_dplct" `

	// Flag indicating if the Business Message exchanged between the MessagingEndpoints is possibly a duplicate.
	// If the receiving MessagingEndpoint did not receive the original, then this Business Message should be processed as if it were the original.
	//
	// If the receiving MessagingEndpoint did receive the original, then it should perform necessary actions to avoid processing this Business Message again.
	//
	// This will guarantee business idempotent behaviour.
	//
	// NOTE: this is named "PossResend" in FIX - this is an application level resend not a network level retransmission.
	PssblDplct *YesNoIndicator `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 PssblDplct,omitempty" json:"pssbl_dplct" `

	// Relative indication of the processing precedence of the message over a (set of) Business Messages with assigned priorities.
	Prty *BusinessMessagePriorityCode `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 Prty,omitempty" json:"prty" `

	// Contains the digital signature of the Business Entity authorised to sign this Business Message.
	Sgntr *SignatureEnvelope `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 Sgntr,omitempty" json:"sgntr" `

	// Specifies the Business Application Header of the Business Message to which this Business Message relates.
	// Can be used when replying to a query; can also be used when canceling or amending.
	Rltd *BusinessApplicationHeader1 `xml:"urn:iso:std:iso:20022:tech:xsd:head.001.001.01 Rltd,omitempty" json:"rltd" `
}

The Business Layer deals with Business Messages. The behaviour of the Business Messages is fully described by the Business Transaction and the structure of the Business Messages is fully described by the Message Definitions and related Message Rules, Rules and Market Practices. All of which are registered in the ISO 20022 Repository. A single new Business Message (with its accompagnying business application header) is created - by the sending MessagingEndpoint - for each business event; that is each interaction in a Business Transaction. A Business Message adheres to the following principles: " A Business Message (and its business application header) must not contain information about the Message Transport System or the mechanics or mechanism of message sending, transportation, or receipt. " A Business Message must be comprehensible outside of the context of the Transport Message. That is the Business Message must not require knowledge of the Transport Message to be understood. " A Business Message may contain headers, footers, and envelopes that are meaningful for the business. When present, they are treated as any other message content, which means that they are considered part of the Message Definition of the Business Message and as such will be part of the ISO 20022 Repository. " A Business Message refers to Business Actors by their Name. Each instance of a Business Actor has one Name. The Business Actor must not be referred to in the Transport Layer. Specific usage of this BusinessMessageHeader may be defined by the relevant SEG.

func (*BusinessApplicationHeaderV01) AddFr

func (*BusinessApplicationHeaderV01) AddRltd

func (*BusinessApplicationHeaderV01) AddSgntr

func (*BusinessApplicationHeaderV01) AddTo

func (*BusinessApplicationHeaderV01) SetBizMsgIdr

func (b *BusinessApplicationHeaderV01) SetBizMsgIdr(value string)

func (*BusinessApplicationHeaderV01) SetBizSvc

func (b *BusinessApplicationHeaderV01) SetBizSvc(value string)

func (*BusinessApplicationHeaderV01) SetCharSet

func (b *BusinessApplicationHeaderV01) SetCharSet(value string)

func (*BusinessApplicationHeaderV01) SetCpyDplct

func (b *BusinessApplicationHeaderV01) SetCpyDplct(value string)

func (*BusinessApplicationHeaderV01) SetCreDt

func (b *BusinessApplicationHeaderV01) SetCreDt(value string)

func (*BusinessApplicationHeaderV01) SetMsgDefIdr

func (b *BusinessApplicationHeaderV01) SetMsgDefIdr(value string)

func (*BusinessApplicationHeaderV01) SetPrty

func (b *BusinessApplicationHeaderV01) SetPrty(value string)

func (*BusinessApplicationHeaderV01) SetPssblDplct

func (b *BusinessApplicationHeaderV01) SetPssblDplct(value string)

type BusinessMessagePriorityCode

type BusinessMessagePriorityCode string

type CancellationIndividualStatus1Code

type CancellationIndividualStatus1Code string

type CancellationReason33Choice

type CancellationReason33Choice struct {
	XMLName xml.Name

	// Reason for the cancellation request, in a coded form.
	Cd *ExternalCancellationReason1Code `xml:"Cd" json:"cd" `

	// Reason for the cancellation request, in a proprietary form.
	Prtry *Max35Text `xml:"Prtry" json:"prtry" `
}

Specifies the reason for the cancellation request.

func (*CancellationReason33Choice) SetCd

func (c *CancellationReason33Choice) SetCd(value string)

func (*CancellationReason33Choice) SetPrtry

func (c *CancellationReason33Choice) SetPrtry(value string)

type CancellationStatusReason3Choice

type CancellationStatusReason3Choice struct {
	XMLName xml.Name

	// Reason for the cancellation status, in a coded form.
	Cd *ExternalPaymentCancellationRejection1Code `xml:"Cd" json:"cd" `

	// Reason for the status, in a proprietary form.
	Prtry *Max35Text `xml:"Prtry" json:"prtry" `
}

Specifies the reason for the transaction cancellation status.

func (*CancellationStatusReason3Choice) SetCd

func (c *CancellationStatusReason3Choice) SetCd(value string)

func (*CancellationStatusReason3Choice) SetPrtry

func (c *CancellationStatusReason3Choice) SetPrtry(value string)

type CancellationStatusReason4

type CancellationStatusReason4 struct {
	XMLName xml.Name

	// Party that issues the cancellation status.
	Orgtr *PartyIdentification135 `xml:"Orgtr,omitempty" json:"orgtr" `

	// Specifies the reason for the status report.
	Rsn *CancellationStatusReason3Choice `xml:"Rsn,omitempty" json:"rsn" `

	// Further details on the cancellation status reason.
	AddtlInf []*Max105Text `xml:"AddtlInf,omitempty" json:"addtl_inf" `
}

Provides further details on the status of the cancellation request.

func (*CancellationStatusReason4) AddAddtlInf

func (c *CancellationStatusReason4) AddAddtlInf(value string)

func (*CancellationStatusReason4) AddOrgtr

func (*CancellationStatusReason4) AddRsn

type Case5

type Case5 struct {
	XMLName xml.Name

	// Uniquely identifies the case.
	Id *Max35Text `xml:"Id" json:"id" `

	// Party that created the investigation case.
	Cretr *Party40Choice `xml:"Cretr" json:"cretr" `

	// Indicates whether or not the case was previously closed and is now re-opened.
	ReopCaseIndctn *YesNoIndicator `xml:"ReopCaseIndctn,omitempty" json:"reop_case_indctn" `
}

Provides further details to identify an investigation case.

func (*Case5) AddCretr

func (c *Case5) AddCretr() *Party40Choice

func (*Case5) SetId

func (c *Case5) SetId(value string)

func (*Case5) SetReopCaseIndctn

func (c *Case5) SetReopCaseIndctn(value string)

type CaseAssignment5

type CaseAssignment5 struct {
	XMLName xml.Name

	// Uniquely identifies the case assignment.
	Id *Max35Text `xml:"Id" json:"id" `

	// Party who assigns the case.
	// Usage: This is also the sender of the message.
	Assgnr *Party40Choice `xml:"Assgnr" json:"assgnr" `

	// Party to which the case is assigned.
	// Usage: This is also the receiver of the message.
	Assgne *Party40Choice `xml:"Assgne" json:"assgne" `

	// Date and time at which the assignment was created.
	CreDtTm *ISODateTime `xml:"CreDtTm" json:"cre_dt_tm" `
}

Represents the assignment of a case to a party.

func (*CaseAssignment5) AddAssgne

func (c *CaseAssignment5) AddAssgne() *Party40Choice

func (*CaseAssignment5) AddAssgnr

func (c *CaseAssignment5) AddAssgnr() *Party40Choice

func (*CaseAssignment5) SetCreDtTm

func (c *CaseAssignment5) SetCreDtTm(value string)

func (*CaseAssignment5) SetId

func (c *CaseAssignment5) SetId(value string)

type CaseForwardingNotification3

type CaseForwardingNotification3 struct {
	XMLName xml.Name

	// Justification for the forward action.
	Justfn *CaseForwardingNotification3Code `xml:"Justfn" json:"justfn" `
}

Status of a case resulting from a case assignment.

func (*CaseForwardingNotification3) SetJustfn

func (c *CaseForwardingNotification3) SetJustfn(value string)

type CaseForwardingNotification3Code

type CaseForwardingNotification3Code string

type CashAccount24

type CashAccount24 struct {
	XMLName xml.Name

	// Unique and unambiguous identification for the account between the account owner and the account servicer.
	Id *AccountIdentification4Choice `xml:"Id" json:"id" `

	// Specifies the nature, or use of the account.
	Tp *CashAccountType2Choice `xml:"Tp,omitempty" json:"tp" `

	// Identification of the currency in which the account is held.
	//
	// Usage: Currency should only be used in case one and the same account number covers several currencies
	// and the initiating party needs to identify which currency needs to be used for settlement on the account.
	Ccy *ActiveOrHistoricCurrencyCode `xml:"Ccy,omitempty" json:"ccy" `

	// Name of the account, as assigned by the account servicing institution, in agreement with the account owner in order to provide an additional means of identification of the account.
	//
	// Usage: The account name is different from the account owner name. The account name is used in certain user communities to provide a means of identifying the account, in addition to the account owner's identity and the account number.
	Nm *Max70Text `xml:"Nm,omitempty" json:"nm" `
}

Provides the details to identify an account.

func (*CashAccount24) AddId

func (*CashAccount24) AddTp

func (*CashAccount24) SetCcy

func (c *CashAccount24) SetCcy(value string)

func (*CashAccount24) SetNm

func (c *CashAccount24) SetNm(value string)

type CashAccount38

type CashAccount38 struct {
	XMLName xml.Name

	// Unique and unambiguous identification for the account between the account owner and the account servicer.
	Id *AccountIdentification4Choice `xml:"Id" json:"id" `

	// Specifies the nature, or use of the account.
	Tp *CashAccountType2Choice `xml:"Tp,omitempty" json:"tp" `

	// Identification of the currency in which the account is held.
	//
	// Usage: Currency should only be used in case one and the same account number covers several currencies
	// and the initiating party needs to identify which currency needs to be used for settlement on the account.
	Ccy *ActiveOrHistoricCurrencyCode `xml:"Ccy,omitempty" json:"ccy" `

	// Name of the account, as assigned by the account servicing institution, in agreement with the account owner in order to provide an additional means of identification of the account.
	//
	// Usage: The account name is different from the account owner name. The account name is used in certain user communities to provide a means of identifying the account, in addition to the account owner's identity and the account number.
	Nm *Max70Text `xml:"Nm,omitempty" json:"nm" `

	// Specifies an alternate assumed name for the identification of the account.
	Prxy *ProxyAccountIdentification1 `xml:"Prxy,omitempty" json:"prxy" `
}

Provides the details to identify an account.

func (*CashAccount38) AddId

func (*CashAccount38) AddPrxy

func (*CashAccount38) AddTp

func (*CashAccount38) SetCcy

func (c *CashAccount38) SetCcy(value string)

func (*CashAccount38) SetNm

func (c *CashAccount38) SetNm(value string)

type CashAccountType2Choice

type CashAccountType2Choice struct {
	XMLName xml.Name

	// Account type, in a coded form.
	Cd *ExternalCashAccountType1Code `xml:"Cd" json:"cd" `

	// Nature or use of the account in a proprietary form.
	Prtry *Max35Text `xml:"Prtry" json:"prtry" `
}

Nature or use of the account.

func (*CashAccountType2Choice) SetCd

func (c *CashAccountType2Choice) SetCd(value string)

func (*CashAccountType2Choice) SetPrtry

func (c *CashAccountType2Choice) SetPrtry(value string)

type CategoryPurpose1Choice

type CategoryPurpose1Choice struct {
	XMLName xml.Name

	// Category purpose, as published in an external category purpose code list.
	Cd *ExternalCategoryPurpose1Code `xml:"Cd" json:"cd" `

	// Category purpose, in a proprietary form.
	Prtry *Max35Text `xml:"Prtry" json:"prtry" `
}

Specifies the high level purpose of the instruction based on a set of pre-defined categories. Usage: This is used by the initiating party to provide information concerning the processing of the payment. It is likely to trigger special processing by any of the agents involved in the payment chain.

func (*CategoryPurpose1Choice) SetCd

func (c *CategoryPurpose1Choice) SetCd(value string)

func (*CategoryPurpose1Choice) SetPrtry

func (c *CategoryPurpose1Choice) SetPrtry(value string)

type ChargeBearerType1Code

type ChargeBearerType1Code string

type ChargeIncludedIndicator

type ChargeIncludedIndicator string

type ChargeType3Choice

type ChargeType3Choice struct {
	XMLName xml.Name

	// Charge type, in a coded form.
	Cd *ExternalChargeType1Code `xml:"Cd" json:"cd" `

	// Type of charge in a proprietary form, as defined by the issuer.
	Prtry *GenericIdentification3 `xml:"Prtry" json:"prtry" `
}

Specifies the charge type.

func (*ChargeType3Choice) AddPrtry

func (*ChargeType3Choice) SetCd

func (c *ChargeType3Choice) SetCd(value string)

type Charges2

type Charges2 struct {
	XMLName xml.Name

	// Transaction charges to be paid by the charge bearer.
	Amt *ActiveOrHistoricCurrencyAndAmount `xml:"Amt" json:"amt" `

	// Agent that takes the transaction charges or to which the transaction charges are due.
	Agt *BranchAndFinancialInstitutionIdentification5 `xml:"Agt" json:"agt" `
}

Set of elements used to provide information on the charges related to the payment transaction.

func (*Charges2) AddAgt

func (*Charges2) SetAmt

func (c *Charges2) SetAmt(value, currency string)

type Charges6

type Charges6 struct {
	XMLName xml.Name

	// Total of all charges and taxes applied to the entry.
	TtlChrgsAndTaxAmt *ActiveOrHistoricCurrencyAndAmount `xml:"TtlChrgsAndTaxAmt,omitempty" json:"ttl_chrgs_and_tax_amt" `

	// Provides details of the individual charges record.
	Rcrd []*ChargesRecord3 `xml:"Rcrd,omitempty" json:"rcrd" `
}

Provides further details on the charges related to the payment transaction.

func (*Charges6) AddRcrd

func (c *Charges6) AddRcrd() *ChargesRecord3

func (*Charges6) SetTtlChrgsAndTaxAmt

func (c *Charges6) SetTtlChrgsAndTaxAmt(value, currency string)

type Charges7

type Charges7 struct {
	XMLName xml.Name

	// Transaction charges to be paid by the charge bearer.
	Amt *ActiveOrHistoricCurrencyAndAmount `xml:"Amt" json:"amt" `

	// Agent that takes the transaction charges or to which the transaction charges are due.
	Agt *BranchAndFinancialInstitutionIdentification6 `xml:"Agt" json:"agt" `
}

Provides information on the charges related to the payment transaction.

func (*Charges7) AddAgt

func (*Charges7) SetAmt

func (c *Charges7) SetAmt(value, currency string)

type ChargesRecord3

type ChargesRecord3 struct {
	XMLName xml.Name

	// Transaction charges to be paid by the charge bearer.
	Amt *ActiveOrHistoricCurrencyAndAmount `xml:"Amt" json:"amt" `

	// Indicates whether the charges amount is a credit or a debit amount.
	// Usage: A zero amount is considered to be a credit.
	CdtDbtInd *CreditDebitCode `xml:"CdtDbtInd,omitempty" json:"cdt_dbt_ind" `

	// Indicates whether the charge should be included in the amount or is added as pre-advice.
	ChrgInclInd *ChargeIncludedIndicator `xml:"ChrgInclInd,omitempty" json:"chrg_incl_ind" `

	// Specifies the type of charge.
	Tp *ChargeType3Choice `xml:"Tp,omitempty" json:"tp" `

	// Rate used to calculate the amount of the charge or fee.
	Rate *PercentageRate `xml:"Rate,omitempty" json:"rate" `

	// Specifies which party/parties will bear the charges associated with the processing of the payment transaction.
	Br *ChargeBearerType1Code `xml:"Br,omitempty" json:"br" `

	// Agent that takes the transaction charges or to which the transaction charges are due.
	Agt *BranchAndFinancialInstitutionIdentification6 `xml:"Agt,omitempty" json:"agt" `

	// Provides details on the tax applied to charges.
	Tax *TaxCharges2 `xml:"Tax,omitempty" json:"tax" `
}

Provides further individual record details on the charges related to the payment transaction.

func (*ChargesRecord3) AddAgt

func (*ChargesRecord3) AddTax

func (c *ChargesRecord3) AddTax() *TaxCharges2

func (*ChargesRecord3) AddTp

func (c *ChargesRecord3) AddTp() *ChargeType3Choice

func (*ChargesRecord3) SetAmt

func (c *ChargesRecord3) SetAmt(value, currency string)

func (*ChargesRecord3) SetBr

func (c *ChargesRecord3) SetBr(value string)

func (*ChargesRecord3) SetCdtDbtInd

func (c *ChargesRecord3) SetCdtDbtInd(value string)

func (*ChargesRecord3) SetChrgInclInd

func (c *ChargesRecord3) SetChrgInclInd(value string)

func (*ChargesRecord3) SetRate

func (c *ChargesRecord3) SetRate(value string)

type ClaimNonReceipt2

type ClaimNonReceipt2 struct {
	XMLName xml.Name

	// Specifies the date the original payment instruction was processed.
	DtPrcd *ISODate `xml:"DtPrcd" json:"dt_prcd" `

	// Specifies the next party the original payment instruction was sent to.
	OrgnlNxtAgt *BranchAndFinancialInstitutionIdentification6 `xml:"OrgnlNxtAgt,omitempty" json:"orgnl_nxt_agt" `
}

Specifies details of a claim non receipt status advice.

func (*ClaimNonReceipt2) AddOrgnlNxtAgt

func (*ClaimNonReceipt2) SetDtPrcd

func (c *ClaimNonReceipt2) SetDtPrcd(value string)

type ClaimNonReceipt2Choice

type ClaimNonReceipt2Choice struct {
	XMLName xml.Name

	// Claim non-receipt is accepted and processed by the agent.
	Accptd *ClaimNonReceipt2 `xml:"Accptd" json:"accptd" `

	// Specifies that the claim non receipt has been rejected and provides the reason for the rejection.
	Rjctd *ClaimNonReceiptRejectReason1Choice `xml:"Rjctd" json:"rjctd" `
}

Specifies whether the claim non receipt is accepted or rejected.

func (*ClaimNonReceipt2Choice) AddAccptd

func (c *ClaimNonReceipt2Choice) AddAccptd() *ClaimNonReceipt2

func (*ClaimNonReceipt2Choice) AddRjctd

type ClaimNonReceiptRejectReason1Choice

type ClaimNonReceiptRejectReason1Choice struct {
	XMLName xml.Name

	// Reason for the rejection, in a coded form.
	Cd *ExternalClaimNonReceiptRejection1Code `xml:"Cd" json:"cd" `

	// Reason for the rejection, in a proprietary form.
	Prtry *Max35Text `xml:"Prtry" json:"prtry" `
}

Specifies the rejection reason of a claim non receipt.

func (*ClaimNonReceiptRejectReason1Choice) SetCd

func (*ClaimNonReceiptRejectReason1Choice) SetPrtry

func (c *ClaimNonReceiptRejectReason1Choice) SetPrtry(value string)

type ClearingChannel2Code

type ClearingChannel2Code string

type ClearingSystemIdentification2Choice

type ClearingSystemIdentification2Choice struct {
	XMLName xml.Name

	// Identification of a clearing system, in a coded form as published in an external list.
	Cd *ExternalClearingSystemIdentification1Code `xml:"Cd" json:"cd" `

	// Identification code for a clearing system, that has not yet been identified in the list of clearing systems.
	Prtry *Max35Text `xml:"Prtry" json:"prtry" `
}

Choice of a clearing system identifier.

func (*ClearingSystemIdentification2Choice) SetCd

func (*ClearingSystemIdentification2Choice) SetPrtry

func (c *ClearingSystemIdentification2Choice) SetPrtry(value string)

type ClearingSystemIdentification3Choice

type ClearingSystemIdentification3Choice struct {
	XMLName xml.Name

	// Infrastructure through which the payment instruction is processed, as published in an external clearing system identification code list.
	Cd *ExternalCashClearingSystem1Code `xml:"Cd" json:"cd" `

	// Clearing system identification in a proprietary form.
	Prtry *Max35Text `xml:"Prtry" json:"prtry" `
}

Specifies the clearing system identification.

func (*ClearingSystemIdentification3Choice) SetCd

func (*ClearingSystemIdentification3Choice) SetPrtry

func (c *ClearingSystemIdentification3Choice) SetPrtry(value string)

type ClearingSystemMemberIdentification2

type ClearingSystemMemberIdentification2 struct {
	XMLName xml.Name

	// Specification of a pre-agreed offering between clearing agents or the channel through which the payment instruction is processed.
	ClrSysId *ClearingSystemIdentification2Choice `xml:"ClrSysId,omitempty" json:"clr_sys_id" `

	// Identification of a member of a clearing system.
	MmbId *Max35Text `xml:"MmbId" json:"mmb_id" `
}

Unique identification, as assigned by a clearing system, to unambiguously identify a member of the clearing system.

func (*ClearingSystemMemberIdentification2) AddClrSysId

func (*ClearingSystemMemberIdentification2) SetMmbId

func (c *ClearingSystemMemberIdentification2) SetMmbId(value string)

type Compensation2

type Compensation2 struct {
	XMLName xml.Name

	// Amount of money to be paid in compensation.
	Amt *ActiveCurrencyAndAmount `xml:"Amt" json:"amt" `

	// Financial institution servicing an account for the debtor.
	//
	// Usage: The debtor agent is the payer of the compensation amount.
	DbtrAgt *BranchAndFinancialInstitutionIdentification6 `xml:"DbtrAgt" json:"dbtr_agt" `

	// Financial institution servicing an account for the creditor.
	//
	// Usage: The creditor agent is the payee of the compensation amount.
	CdtrAgt *BranchAndFinancialInstitutionIdentification6 `xml:"CdtrAgt" json:"cdtr_agt" `

	// Reason for the payment compensation.
	Rsn *CompensationReason1Choice `xml:"Rsn" json:"rsn" `
}

Specifies the details of a payment compensation.

func (*Compensation2) AddCdtrAgt

func (*Compensation2) AddDbtrAgt

func (*Compensation2) AddRsn

func (*Compensation2) SetAmt

func (c *Compensation2) SetAmt(value, currency string)

type CompensationReason1Choice

type CompensationReason1Choice struct {
	XMLName xml.Name

	// Reason for the payment compensation, in a coded form.
	Cd *ExternalPaymentCompensationReason1Code `xml:"Cd" json:"cd" `

	// Reason for the payment compensation, in a proprietary form.
	Prtry *Max35Text `xml:"Prtry" json:"prtry" `
}

Specifies the reason for the payment compensation.

func (*CompensationReason1Choice) SetCd

func (c *CompensationReason1Choice) SetCd(value string)

func (*CompensationReason1Choice) SetPrtry

func (c *CompensationReason1Choice) SetPrtry(value string)

type Contact4

type Contact4 struct {
	XMLName xml.Name

	// Specifies the terms used to formally address a person.
	NmPrfx *NamePrefix2Code `xml:"NmPrfx,omitempty" json:"nm_prfx" `

	// Name by which a party is known and which is usually used to identify that party.
	Nm *Max140Text `xml:"Nm,omitempty" json:"nm" `

	// Collection of information that identifies a phone number, as defined by telecom services.
	PhneNb *PhoneNumber `xml:"PhneNb,omitempty" json:"phne_nb" `

	// Collection of information that identifies a mobile phone number, as defined by telecom services.
	MobNb *PhoneNumber `xml:"MobNb,omitempty" json:"mob_nb" `

	// Collection of information that identifies a FAX number, as defined by telecom services.
	FaxNb *PhoneNumber `xml:"FaxNb,omitempty" json:"fax_nb" `

	// Address for electronic mail (e-mail).
	EmailAdr *Max2048Text `xml:"EmailAdr,omitempty" json:"email_adr" `

	// Purpose for which an email address may be used.
	EmailPurp *Max35Text `xml:"EmailPurp,omitempty" json:"email_purp" `

	// Title of the function.
	JobTitl *Max35Text `xml:"JobTitl,omitempty" json:"job_titl" `

	// Role of a person in an organisation.
	Rspnsblty *Max35Text `xml:"Rspnsblty,omitempty" json:"rspnsblty" `

	// Identification of a division of a large organisation or building.
	Dept *Max70Text `xml:"Dept,omitempty" json:"dept" `

	// Contact details in another form.
	Othr []*OtherContact1 `xml:"Othr,omitempty" json:"othr" `

	// Preferred method used to reach the contact.
	PrefrdMtd *PreferredContactMethod1Code `xml:"PrefrdMtd,omitempty" json:"prefrd_mtd" `
}

Specifies the details of the contact person.

func (*Contact4) AddOthr

func (c *Contact4) AddOthr() *OtherContact1

func (*Contact4) SetDept

func (c *Contact4) SetDept(value string)

func (*Contact4) SetEmailAdr

func (c *Contact4) SetEmailAdr(value string)

func (*Contact4) SetEmailPurp

func (c *Contact4) SetEmailPurp(value string)

func (*Contact4) SetFaxNb

func (c *Contact4) SetFaxNb(value string)

func (*Contact4) SetJobTitl

func (c *Contact4) SetJobTitl(value string)

func (*Contact4) SetMobNb

func (c *Contact4) SetMobNb(value string)

func (*Contact4) SetNm

func (c *Contact4) SetNm(value string)

func (*Contact4) SetNmPrfx

func (c *Contact4) SetNmPrfx(value string)

func (*Contact4) SetPhneNb

func (c *Contact4) SetPhneNb(value string)

func (*Contact4) SetPrefrdMtd

func (c *Contact4) SetPrefrdMtd(value string)

func (*Contact4) SetRspnsblty

func (c *Contact4) SetRspnsblty(value string)

type ContactDetails2

type ContactDetails2 struct {
	XMLName xml.Name

	// Specifies the terms used to formally address a person.
	NmPrfx *NamePrefix1Code `xml:"NmPrfx,omitempty" json:"nm_prfx" `

	// Name by which a party is known and which is usually used to identify that party.
	Nm *Max140Text `xml:"Nm,omitempty" json:"nm" `

	// Collection of information that identifies a phone number, as defined by telecom services.
	PhneNb *PhoneNumber `xml:"PhneNb,omitempty" json:"phne_nb" `

	// Collection of information that identifies a mobile phone number, as defined by telecom services.
	MobNb *PhoneNumber `xml:"MobNb,omitempty" json:"mob_nb" `

	// Collection of information that identifies a FAX number, as defined by telecom services.
	FaxNb *PhoneNumber `xml:"FaxNb,omitempty" json:"fax_nb" `

	// Address for electronic mail (e-mail).
	EmailAdr *Max2048Text `xml:"EmailAdr,omitempty" json:"email_adr" `

	// Contact details in another form.
	Othr *Max35Text `xml:"Othr,omitempty" json:"othr" `
}

Communication device number or electronic address used for communication.

func (*ContactDetails2) SetEmailAdr

func (c *ContactDetails2) SetEmailAdr(value string)

func (*ContactDetails2) SetFaxNb

func (c *ContactDetails2) SetFaxNb(value string)

func (*ContactDetails2) SetMobNb

func (c *ContactDetails2) SetMobNb(value string)

func (*ContactDetails2) SetNm

func (c *ContactDetails2) SetNm(value string)

func (*ContactDetails2) SetNmPrfx

func (c *ContactDetails2) SetNmPrfx(value string)

func (*ContactDetails2) SetOthr

func (c *ContactDetails2) SetOthr(value string)

func (*ContactDetails2) SetPhneNb

func (c *ContactDetails2) SetPhneNb(value string)

type ControlData1

type ControlData1 struct {
	XMLName xml.Name

	// Number of individual transactions contained in the message.
	NbOfTxs *Max15NumericText `xml:"NbOfTxs" json:"nb_of_txs" `

	// Total of all individual amounts included in the message, irrespective of currencies.
	CtrlSum *DecimalNumber `xml:"CtrlSum,omitempty" json:"ctrl_sum" `
}

Provides details of the number of transactions and the control sum of the message.

func (*ControlData1) SetCtrlSum

func (c *ControlData1) SetCtrlSum(value string)

func (*ControlData1) SetNbOfTxs

func (c *ControlData1) SetNbOfTxs(value string)

type CopyDuplicate1Code

type CopyDuplicate1Code string

type CorrectiveGroupInformation1

type CorrectiveGroupInformation1 struct {
	XMLName xml.Name

	// Point to point reference, as assigned by the instructing party, and sent to the next party in the chain to unambiguously identify the message.
	// Usage: The instructing party has to make sure that 'MessageIdentification' is unique per instructed party for a pre-agreed period.
	MsgId *Max35Text `xml:"MsgId" json:"msg_id" `

	// Specifies the message name identifier to which the message refers.
	MsgNmId *Max35Text `xml:"MsgNmId" json:"msg_nm_id" `

	// Date and time at which the message was created.
	CreDtTm *ISODateTime `xml:"CreDtTm,omitempty" json:"cre_dt_tm" `
}

Set of elements used to provide information on the group of the corrective transaction, to which the resolution message refers.

func (*CorrectiveGroupInformation1) SetCreDtTm

func (c *CorrectiveGroupInformation1) SetCreDtTm(value string)

func (*CorrectiveGroupInformation1) SetMsgId

func (c *CorrectiveGroupInformation1) SetMsgId(value string)

func (*CorrectiveGroupInformation1) SetMsgNmId

func (c *CorrectiveGroupInformation1) SetMsgNmId(value string)

type CorrectiveInterbankTransaction2

type CorrectiveInterbankTransaction2 struct {
	XMLName xml.Name

	// Set of elements used to provide corrective information for the group header of the message under investigation.
	GrpHdr *CorrectiveGroupInformation1 `xml:"GrpHdr,omitempty" json:"grp_hdr" `

	// Unique identification, as assigned by an instructing party for an instructed party, to unambiguously identify the instruction.
	//
	// Usage: The instruction identification is a point to point reference that can be used between the instructing party and the instructed party to refer to the individual instruction. It can be included in several messages related to the instruction.
	InstrId *Max35Text `xml:"InstrId,omitempty" json:"instr_id" `

	// Unique identification, as assigned by the initiating party, to unambiguously identify the transaction. This identification is passed on, unchanged, throughout the entire end-to-end chain.
	//
	// Usage: The end-to-end identification can be used for reconciliation or to link tasks relating to the transaction. It can be included in several messages related to the transaction.
	//
	// Usage: In case there are technical limitations to pass on multiple references, the end-to-end identification must be passed on throughout the entire end-to-end chain.
	EndToEndId *Max35Text `xml:"EndToEndId,omitempty" json:"end_to_end_id" `

	// Unique identification, as assigned by the first instructing agent, to unambiguously identify the transaction that is passed on, unchanged, throughout the entire interbank chain.
	// Usage: The transaction identification can be used for reconciliation, tracking or to link tasks relating to the transaction on the interbank level.
	// Usage: The instructing agent has to make sure that the transaction identification is unique for a pre-agreed period.
	TxId *Max35Text `xml:"TxId,omitempty" json:"tx_id" `

	// Universally unique identifier to provide an end-to-end reference of a payment transaction.
	UETR *UUIDv4Identifier `xml:"UETR,omitempty" json:"uetr" `

	// Amount of money moved between the instructing agent and the instructed agent.
	IntrBkSttlmAmt *ActiveOrHistoricCurrencyAndAmount `xml:"IntrBkSttlmAmt" json:"intr_bk_sttlm_amt" `

	// Date on which the amount of money ceases to be available to the agent that owes it and when the amount of money becomes available to the agent to which it is due.
	IntrBkSttlmDt *ISODate `xml:"IntrBkSttlmDt" json:"intr_bk_sttlm_dt" `
}

Provides information on the corrective interbank transaction, to which the resolution message refers.

func (*CorrectiveInterbankTransaction2) AddGrpHdr

func (*CorrectiveInterbankTransaction2) SetEndToEndId

func (c *CorrectiveInterbankTransaction2) SetEndToEndId(value string)

func (*CorrectiveInterbankTransaction2) SetInstrId

func (c *CorrectiveInterbankTransaction2) SetInstrId(value string)

func (*CorrectiveInterbankTransaction2) SetIntrBkSttlmAmt

func (c *CorrectiveInterbankTransaction2) SetIntrBkSttlmAmt(value, currency string)

func (*CorrectiveInterbankTransaction2) SetIntrBkSttlmDt

func (c *CorrectiveInterbankTransaction2) SetIntrBkSttlmDt(value string)

func (*CorrectiveInterbankTransaction2) SetTxId

func (c *CorrectiveInterbankTransaction2) SetTxId(value string)

func (*CorrectiveInterbankTransaction2) SetUETR

func (c *CorrectiveInterbankTransaction2) SetUETR(value string)

type CorrectivePaymentInitiation4

type CorrectivePaymentInitiation4 struct {
	XMLName xml.Name

	// Set of elements used to provide corrective information for the group header of the message under investigation.
	GrpHdr *CorrectiveGroupInformation1 `xml:"GrpHdr,omitempty" json:"grp_hdr" `

	// Unique identification, as assigned by a sending party, to unambiguously identify the payment information group within the message.
	PmtInfId *Max35Text `xml:"PmtInfId,omitempty" json:"pmt_inf_id" `

	// Unique identification, as assigned by an instructing party for an instructed party, to unambiguously identify the instruction.
	//
	// Usage: The instruction identification is a point to point reference that can be used between the instructing party and the instructed party to refer to the individual instruction. It can be included in several messages related to the instruction.
	InstrId *Max35Text `xml:"InstrId,omitempty" json:"instr_id" `

	// Unique identification, as assigned by the initiating party, to unambiguously identify the transaction. This identification is passed on, unchanged, throughout the entire end-to-end chain.
	//
	// Usage: The end-to-end identification can be used for reconciliation or to link tasks relating to the transaction. It can be included in several messages related to the transaction.
	//
	// Usage: In case there are technical limitations to pass on multiple references, the end-to-end identification must be passed on throughout the entire end-to-end chain.
	EndToEndId *Max35Text `xml:"EndToEndId,omitempty" json:"end_to_end_id" `

	// Universally unique identifier to provide an end-to-end reference of a payment transaction.
	UETR *UUIDv4Identifier `xml:"UETR,omitempty" json:"uetr" `

	// Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.
	InstdAmt *ActiveOrHistoricCurrencyAndAmount `xml:"InstdAmt" json:"instd_amt" `

	// Date or date time at which the initiating party requests the clearing agent to process the payment.
	// Usage: This is the date or date time on which the debtor's account is to be debited. If payment by cheque, the date when the cheque must be generated by the bank.
	ReqdExctnDt *DateAndDateTime2Choice `xml:"ReqdExctnDt,omitempty" json:"reqd_exctn_dt" `

	// Date at which the creditor requests the amount of money to be collected from the debtor.
	ReqdColltnDt *ISODate `xml:"ReqdColltnDt,omitempty" json:"reqd_colltn_dt" `
}

Provides information on the corrective payment initiation transaction, to which the resolution message refers.

func (*CorrectivePaymentInitiation4) AddGrpHdr

func (*CorrectivePaymentInitiation4) AddReqdExctnDt

func (*CorrectivePaymentInitiation4) SetEndToEndId

func (c *CorrectivePaymentInitiation4) SetEndToEndId(value string)

func (*CorrectivePaymentInitiation4) SetInstdAmt

func (c *CorrectivePaymentInitiation4) SetInstdAmt(value, currency string)

func (*CorrectivePaymentInitiation4) SetInstrId

func (c *CorrectivePaymentInitiation4) SetInstrId(value string)

func (*CorrectivePaymentInitiation4) SetPmtInfId

func (c *CorrectivePaymentInitiation4) SetPmtInfId(value string)

func (*CorrectivePaymentInitiation4) SetReqdColltnDt

func (c *CorrectivePaymentInitiation4) SetReqdColltnDt(value string)

func (*CorrectivePaymentInitiation4) SetUETR

func (c *CorrectivePaymentInitiation4) SetUETR(value string)

type CorrectiveTransaction4Choice

type CorrectiveTransaction4Choice struct {
	XMLName xml.Name

	// Set of elements used to reference the details of the corrective payment initiation.
	Initn *CorrectivePaymentInitiation4 `xml:"Initn" json:"initn" `

	// Set of elements used to reference the details of the corrective interbank payment transaction.
	IntrBk *CorrectiveInterbankTransaction2 `xml:"IntrBk" json:"intr_bk" `
}

Specifies the corrective transaction on which the investigation is processed.

func (*CorrectiveTransaction4Choice) AddInitn

func (*CorrectiveTransaction4Choice) AddIntrBk

type CountryCode

type CountryCode string

type CreditDebitCode

type CreditDebitCode string

type CreditTransferTransaction30

type CreditTransferTransaction30 struct {
	XMLName xml.Name

	// Set of elements used to reference a payment instruction.
	PmtId *PaymentIdentification3 `xml:"PmtId" json:"pmt_id" `

	// Set of elements used to further specify the type of transaction.
	PmtTpInf *PaymentTypeInformation21 `xml:"PmtTpInf,omitempty" json:"pmt_tp_inf" `

	// Amount of money moved between the instructing agent and the instructed agent.
	IntrBkSttlmAmt *ActiveCurrencyAndAmount `xml:"IntrBkSttlmAmt" json:"intr_bk_sttlm_amt" `

	// Date on which the amount of money ceases to be available to the agent that owes it and when the amount of money becomes available to the agent to which it is due.
	IntrBkSttlmDt *ISODate `xml:"IntrBkSttlmDt,omitempty" json:"intr_bk_sttlm_dt" `

	// Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the settlement instruction.
	SttlmPrty *Priority3Code `xml:"SttlmPrty,omitempty" json:"sttlm_prty" `

	// Provides information on the occurred settlement time(s) of the payment transaction.
	SttlmTmIndctn *SettlementDateTimeIndication1 `xml:"SttlmTmIndctn,omitempty" json:"sttlm_tm_indctn" `

	// Provides information on the requested settlement time(s) of the payment instruction.
	SttlmTmReq *SettlementTimeRequest2 `xml:"SttlmTmReq,omitempty" json:"sttlm_tm_req" `

	// Point in time when the payment order from the initiating party meets the processing conditions of the account servicing agent. This means that the account servicing agent has received the payment order and has applied checks such as authorisation, availability of funds.
	AccptncDtTm *ISODateTime `xml:"AccptncDtTm,omitempty" json:"accptnc_dt_tm" `

	// Date used for the correction of the value date of a cash pool movement that has been posted with a different value date.
	PoolgAdjstmntDt *ISODate `xml:"PoolgAdjstmntDt,omitempty" json:"poolg_adjstmnt_dt" `

	// Amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party.
	// Usage: This amount has to be transported unchanged through the transaction chain.
	InstdAmt *ActiveOrHistoricCurrencyAndAmount `xml:"InstdAmt,omitempty" json:"instd_amt" `

	// Factor used to convert an amount from one currency into another. This reflects the price at which one currency was bought with another currency.
	XchgRate *BaseOneRate `xml:"XchgRate,omitempty" json:"xchg_rate" `

	// Specifies which party/parties will bear the charges associated with the processing of the payment transaction.
	ChrgBr *ChargeBearerType1Code `xml:"ChrgBr" json:"chrg_br" `

	// Provides information on the charges to be paid by the charge bearer(s) related to the payment transaction.
	ChrgsInf []*Charges2 `xml:"ChrgsInf,omitempty" json:"chrgs_inf" `

	// Agent immediately prior to the instructing agent.
	PrvsInstgAgt1 *BranchAndFinancialInstitutionIdentification5 `xml:"PrvsInstgAgt1,omitempty" json:"prvs_instg_agt_1" `

	// Unambiguous identification of the account of the previous instructing agent at its servicing agent in the payment chain.
	PrvsInstgAgt1Acct *CashAccount24 `xml:"PrvsInstgAgt1Acct,omitempty" json:"prvs_instg_agt_1_acct" `

	// Agent immediately prior to the instructing agent.
	PrvsInstgAgt2 *BranchAndFinancialInstitutionIdentification5 `xml:"PrvsInstgAgt2,omitempty" json:"prvs_instg_agt_2" `

	// Unambiguous identification of the account of the previous instructing agent at its servicing agent in the payment chain.
	PrvsInstgAgt2Acct *CashAccount24 `xml:"PrvsInstgAgt2Acct,omitempty" json:"prvs_instg_agt_2_acct" `

	// Agent immediately prior to the instructing agent.
	PrvsInstgAgt3 *BranchAndFinancialInstitutionIdentification5 `xml:"PrvsInstgAgt3,omitempty" json:"prvs_instg_agt_3" `

	// Unambiguous identification of the account of the previous instructing agent at its servicing agent in the payment chain.
	PrvsInstgAgt3Acct *CashAccount24 `xml:"PrvsInstgAgt3Acct,omitempty" json:"prvs_instg_agt_3_acct" `

	// Agent that instructs the next party in the chain to carry out the (set of) instruction(s).
	InstgAgt *BranchAndFinancialInstitutionIdentification5 `xml:"InstgAgt,omitempty" json:"instg_agt" `

	// Agent that is instructed by the previous party in the chain to carry out the (set of) instruction(s).
	InstdAgt *BranchAndFinancialInstitutionIdentification5 `xml:"InstdAgt,omitempty" json:"instd_agt" `

	// Agent between the debtor's agent and the creditor's agent.
	//
	// Usage: If more than one intermediary agent is present, then IntermediaryAgent1 identifies the agent between the DebtorAgent and the IntermediaryAgent2.
	IntrmyAgt1 *BranchAndFinancialInstitutionIdentification5 `xml:"IntrmyAgt1,omitempty" json:"intrmy_agt_1" `

	// Unambiguous identification of the account of the intermediary agent 1 at its servicing agent in the payment chain.
	IntrmyAgt1Acct *CashAccount24 `xml:"IntrmyAgt1Acct,omitempty" json:"intrmy_agt_1_acct" `

	// Agent between the debtor's agent and the creditor's agent.
	//
	// Usage: If more than two intermediary agents are present, then IntermediaryAgent2 identifies the agent between the IntermediaryAgent1 and the IntermediaryAgent3.
	IntrmyAgt2 *BranchAndFinancialInstitutionIdentification5 `xml:"IntrmyAgt2,omitempty" json:"intrmy_agt_2" `

	// Unambiguous identification of the account of the intermediary agent 2 at its servicing agent in the payment chain.
	IntrmyAgt2Acct *CashAccount24 `xml:"IntrmyAgt2Acct,omitempty" json:"intrmy_agt_2_acct" `

	// Agent between the debtor's agent and the creditor's agent.
	//
	// Usage: If IntermediaryAgent3 is present, then it identifies the agent between the IntermediaryAgent 2 and the CreditorAgent.
	IntrmyAgt3 *BranchAndFinancialInstitutionIdentification5 `xml:"IntrmyAgt3,omitempty" json:"intrmy_agt_3" `

	// Unambiguous identification of the account of the intermediary agent 3 at its servicing agent in the payment chain.
	IntrmyAgt3Acct *CashAccount24 `xml:"IntrmyAgt3Acct,omitempty" json:"intrmy_agt_3_acct" `

	// Ultimate party that owes an amount of money to the (ultimate) creditor.
	UltmtDbtr *PartyIdentification125 `xml:"UltmtDbtr,omitempty" json:"ultmt_dbtr" `

	// Party that initiates the payment.
	// Usage: This can be either the debtor or a party that initiates the credit transfer on behalf of the debtor.
	InitgPty *PartyIdentification125 `xml:"InitgPty,omitempty" json:"initg_pty" `

	// Party that owes an amount of money to the (ultimate) creditor.
	Dbtr *PartyIdentification125 `xml:"Dbtr" json:"dbtr" `

	// Unambiguous identification of the account of the debtor to which a debit entry will be made as a result of the transaction.
	DbtrAcct *CashAccount24 `xml:"DbtrAcct,omitempty" json:"dbtr_acct" `

	// Financial institution servicing an account for the debtor.
	DbtrAgt *BranchAndFinancialInstitutionIdentification5 `xml:"DbtrAgt" json:"dbtr_agt" `

	// Unambiguous identification of the account of the debtor agent at its servicing agent in the payment chain.
	DbtrAgtAcct *CashAccount24 `xml:"DbtrAgtAcct,omitempty" json:"dbtr_agt_acct" `

	// Financial institution servicing an account for the creditor.
	CdtrAgt *BranchAndFinancialInstitutionIdentification5 `xml:"CdtrAgt" json:"cdtr_agt" `

	// Unambiguous identification of the account of the creditor agent at its servicing agent to which a credit entry will be made as a result of the payment transaction.
	CdtrAgtAcct *CashAccount24 `xml:"CdtrAgtAcct,omitempty" json:"cdtr_agt_acct" `

	// Party to which an amount of money is due.
	Cdtr *PartyIdentification125 `xml:"Cdtr" json:"cdtr" `

	// Unambiguous identification of the account of the creditor to which a credit entry will be posted as a result of the payment transaction.
	CdtrAcct *CashAccount24 `xml:"CdtrAcct,omitempty" json:"cdtr_acct" `

	// Ultimate party to which an amount of money is due.
	UltmtCdtr *PartyIdentification125 `xml:"UltmtCdtr,omitempty" json:"ultmt_cdtr" `

	// Further information related to the processing of the payment instruction, provided by the initiating party, and intended for the creditor agent.
	InstrForCdtrAgt []*InstructionForCreditorAgent1 `xml:"InstrForCdtrAgt,omitempty" json:"instr_for_cdtr_agt" `

	// Further information related to the processing of the payment instruction that may need to be acted upon by the next agent.
	//
	// Usage: The next agent may not be the creditor agent.
	// The instruction can relate to a level of service, can be an instruction that has to be executed by the agent, or can be information required by the next agent.
	InstrForNxtAgt []*InstructionForNextAgent1 `xml:"InstrForNxtAgt,omitempty" json:"instr_for_nxt_agt" `

	// Underlying reason for the payment transaction.
	// Usage: Purpose is used by the end-customers, that is initiating party, (ultimate) debtor, (ultimate) creditor to provide information concerning the nature of the payment. Purpose is a content element, which is not used for processing by any of the agents involved in the payment chain.
	Purp *Purpose2Choice `xml:"Purp,omitempty" json:"purp" `

	// Information needed due to regulatory and statutory requirements.
	RgltryRptg []*RegulatoryReporting3 `xml:"RgltryRptg,omitempty" json:"rgltry_rptg" `

	// Provides details on the tax.
	Tax *TaxInformation6 `xml:"Tax,omitempty" json:"tax" `

	// Provides information related to the handling of the remittance information by any of the agents in the transaction processing chain.
	RltdRmtInf []*RemittanceLocation4 `xml:"RltdRmtInf,omitempty" json:"rltd_rmt_inf" `

	// Information supplied to enable the matching of an entry with the items that the transfer is intended to settle, such as commercial invoices in an accounts' receivable system.
	RmtInf *RemittanceInformation15 `xml:"RmtInf,omitempty" json:"rmt_inf" `

	// Additional information that cannot be captured in the structured elements and/or any other specific block.
	SplmtryData []*SupplementaryData1 `xml:"SplmtryData,omitempty" json:"splmtry_data" `
}

Provides further details specific to the individual transaction(s) included in the message.

func (*CreditTransferTransaction30) AddCdtr

func (*CreditTransferTransaction30) AddCdtrAcct

func (c *CreditTransferTransaction30) AddCdtrAcct() *CashAccount24

func (*CreditTransferTransaction30) AddCdtrAgt

func (*CreditTransferTransaction30) AddCdtrAgtAcct

func (c *CreditTransferTransaction30) AddCdtrAgtAcct() *CashAccount24

func (*CreditTransferTransaction30) AddChrgsInf

func (c *CreditTransferTransaction30) AddChrgsInf() *Charges2

func (*CreditTransferTransaction30) AddDbtr

func (*CreditTransferTransaction30) AddDbtrAcct

func (c *CreditTransferTransaction30) AddDbtrAcct() *CashAccount24

func (*CreditTransferTransaction30) AddDbtrAgt

func (*CreditTransferTransaction30) AddDbtrAgtAcct

func (c *CreditTransferTransaction30) AddDbtrAgtAcct() *CashAccount24

func (*CreditTransferTransaction30) AddInitgPty

func (*CreditTransferTransaction30) AddInstdAgt

func (*CreditTransferTransaction30) AddInstgAgt

func (*CreditTransferTransaction30) AddInstrForCdtrAgt

func (*CreditTransferTransaction30) AddInstrForNxtAgt

func (c *CreditTransferTransaction30) AddInstrForNxtAgt() *InstructionForNextAgent1

func (*CreditTransferTransaction30) AddIntrmyAgt1

func (*CreditTransferTransaction30) AddIntrmyAgt1Acct

func (c *CreditTransferTransaction30) AddIntrmyAgt1Acct() *CashAccount24

func (*CreditTransferTransaction30) AddIntrmyAgt2

func (*CreditTransferTransaction30) AddIntrmyAgt2Acct

func (c *CreditTransferTransaction30) AddIntrmyAgt2Acct() *CashAccount24

func (*CreditTransferTransaction30) AddIntrmyAgt3

func (*CreditTransferTransaction30) AddIntrmyAgt3Acct

func (c *CreditTransferTransaction30) AddIntrmyAgt3Acct() *CashAccount24

func (*CreditTransferTransaction30) AddPmtId

func (*CreditTransferTransaction30) AddPmtTpInf

func (*CreditTransferTransaction30) AddPrvsInstgAgt1

func (*CreditTransferTransaction30) AddPrvsInstgAgt1Acct

func (c *CreditTransferTransaction30) AddPrvsInstgAgt1Acct() *CashAccount24

func (*CreditTransferTransaction30) AddPrvsInstgAgt2

func (*CreditTransferTransaction30) AddPrvsInstgAgt2Acct

func (c *CreditTransferTransaction30) AddPrvsInstgAgt2Acct() *CashAccount24

func (*CreditTransferTransaction30) AddPrvsInstgAgt3

func (*CreditTransferTransaction30) AddPrvsInstgAgt3Acct

func (c *CreditTransferTransaction30) AddPrvsInstgAgt3Acct() *CashAccount24

func (*CreditTransferTransaction30) AddPurp

func (*CreditTransferTransaction30) AddRgltryRptg

func (*CreditTransferTransaction30) AddRltdRmtInf

func (*CreditTransferTransaction30) AddRmtInf

func (*CreditTransferTransaction30) AddSplmtryData

func (c *CreditTransferTransaction30) AddSplmtryData() *SupplementaryData1

func (*CreditTransferTransaction30) AddSttlmTmIndctn

func (*CreditTransferTransaction30) AddSttlmTmReq

func (*CreditTransferTransaction30) AddTax

func (*CreditTransferTransaction30) AddUltmtCdtr

func (*CreditTransferTransaction30) AddUltmtDbtr

func (*CreditTransferTransaction30) SetAccptncDtTm

func (c *CreditTransferTransaction30) SetAccptncDtTm(value string)

func (*CreditTransferTransaction30) SetChrgBr

func (c *CreditTransferTransaction30) SetChrgBr(value string)

func (*CreditTransferTransaction30) SetInstdAmt

func (c *CreditTransferTransaction30) SetInstdAmt(value, currency string)

func (*CreditTransferTransaction30) SetIntrBkSttlmAmt

func (c *CreditTransferTransaction30) SetIntrBkSttlmAmt(value, currency string)

func (*CreditTransferTransaction30) SetIntrBkSttlmDt

func (c *CreditTransferTransaction30) SetIntrBkSttlmDt(value string)

func (*CreditTransferTransaction30) SetPoolgAdjstmntDt

func (c *CreditTransferTransaction30) SetPoolgAdjstmntDt(value string)

func (*CreditTransferTransaction30) SetSttlmPrty

func (c *CreditTransferTransaction30) SetSttlmPrty(value string)

func (*CreditTransferTransaction30) SetXchgRate

func (c *CreditTransferTransaction30) SetXchgRate(value string)

type CreditTransferTransaction36

type CreditTransferTransaction36 struct {
	XMLName xml.Name

	// Set of elements used to reference a payment instruction.
	PmtId *PaymentIdentification7 `xml:"PmtId" json:"pmt_id" `

	// Set of elements used to further specify the type of transaction.
	PmtTpInf *PaymentTypeInformation28 `xml:"PmtTpInf,omitempty" json:"pmt_tp_inf" `

	// Amount of money moved between the instructing agent and the instructed agent.
	IntrBkSttlmAmt *ActiveCurrencyAndAmount `xml:"IntrBkSttlmAmt" json:"intr_bk_sttlm_amt" `

	// Date on which the amount of money ceases to be available to the agent that owes it and when the amount of money becomes available to the agent to which it is due.
	IntrBkSttlmDt *ISODate `xml:"IntrBkSttlmDt,omitempty" json:"intr_bk_sttlm_dt" `

	// Indicator of the urgency or order of importance that the instructing party would like the instructed party to apply to the processing of the settlement instruction.
	SttlmPrty *Priority3Code `xml:"SttlmPrty,omitempty" json:"sttlm_prty" `

	// Provides information on the occurred settlement time(s) of the payment transaction.
	SttlmTmIndctn *SettlementDateTimeIndication1 `xml:"SttlmTmIndctn,omitempty" json:"sttlm_tm_indctn" `

	// Provides information on the requested settlement time(s) of the payment instruction.
	SttlmTmReq *SettlementTimeRequest2 `xml:"SttlmTmReq,omitempty" json:"sttlm_tm_req" `

	// Agent immediately prior to the instructing agent.
	PrvsInstgAgt1 *BranchAndFinancialInstitutionIdentification6 `xml:"PrvsInstgAgt1,omitempty" json:"prvs_instg_agt_1" `

	// Unambiguous identification of the account of the previous instructing agent at its servicing agent in the payment chain.
	PrvsInstgAgt1Acct *CashAccount38 `xml:"PrvsInstgAgt1Acct,omitempty" json:"prvs_instg_agt_1_acct" `

	// Agent immediately prior to the instructing agent.
	PrvsInstgAgt2 *BranchAndFinancialInstitutionIdentification6 `xml:"PrvsInstgAgt2,omitempty" json:"prvs_instg_agt_2" `

	// Unambiguous identification of the account of the previous instructing agent at its servicing agent in the payment chain.
	PrvsInstgAgt2Acct *CashAccount38 `xml:"PrvsInstgAgt2Acct,omitempty" json:"prvs_instg_agt_2_acct" `

	// Agent immediately prior to the instructing agent.
	PrvsInstgAgt3 *BranchAndFinancialInstitutionIdentification6 `xml:"PrvsInstgAgt3,omitempty" json:"prvs_instg_agt_3" `

	// Unambiguous identification of the account of the previous instructing agent at its servicing agent in the payment chain.
	PrvsInstgAgt3Acct *CashAccount38 `xml:"PrvsInstgAgt3Acct,omitempty" json:"prvs_instg_agt_3_acct" `

	// Agent that instructs the next party in the chain to carry out the (set of) instruction(s).
	InstgAgt *BranchAndFinancialInstitutionIdentification6 `xml:"InstgAgt,omitempty" json:"instg_agt" `

	// Agent that is instructed by the previous party in the chain to carry out the (set of) instruction(s).
	InstdAgt *BranchAndFinancialInstitutionIdentification6 `xml:"InstdAgt,omitempty" json:"instd_agt" `

	// Agent between the debtor's agent and the creditor's agent.
	//
	// Usage: If more than one intermediary agent is present, then IntermediaryAgent1 identifies the agent between the DebtorAgent and the IntermediaryAgent2.
	IntrmyAgt1 *BranchAndFinancialInstitutionIdentification6 `xml:"IntrmyAgt1,omitempty" json:"intrmy_agt_1" `

	// Unambiguous identification of the account of the intermediary agent 1 at its servicing agent in the payment chain.
	IntrmyAgt1Acct *CashAccount38 `xml:"IntrmyAgt1Acct,omitempty" json:"intrmy_agt_1_acct" `

	// Agent between the debtor's agent and the creditor's agent.
	//
	// Usage: If more than two intermediary agents are present, then IntermediaryAgent2 identifies the agent between the IntermediaryAgent1 and the IntermediaryAgent3.
	IntrmyAgt2 *BranchAndFinancialInstitutionIdentification6 `xml:"IntrmyAgt2,omitempty" json:"intrmy_agt_2" `

	// Unambiguous identification of the account of the intermediary agent 2 at its servicing agent in the payment chain.
	IntrmyAgt2Acct *CashAccount38 `xml:"IntrmyAgt2Acct,omitempty" json:"intrmy_agt_2_acct" `

	// Agent between the debtor's agent and the creditor's agent.
	//
	// Usage: If IntermediaryAgent3 is present, then it identifies the agent between the IntermediaryAgent 2 and the CreditorAgent.
	IntrmyAgt3 *BranchAndFinancialInstitutionIdentification6 `xml:"IntrmyAgt3,omitempty" json:"intrmy_agt_3" `

	// Unambiguous identification of the account of the intermediary agent 3 at its servicing agent in the payment chain.
	IntrmyAgt3Acct *CashAccount38 `xml:"IntrmyAgt3Acct,omitempty" json:"intrmy_agt_3_acct" `

	// Ultimate financial institution that owes an amount of money to the (ultimate) institutional creditor.
	UltmtDbtr *BranchAndFinancialInstitutionIdentification6 `xml:"UltmtDbtr,omitempty" json:"ultmt_dbtr" `

	// Financial institution that owes an amount of money to the (ultimate) financial institutional creditor.
	Dbtr *BranchAndFinancialInstitutionIdentification6 `xml:"Dbtr" json:"dbtr" `

	// Unambiguous identification of the account of the debtor to which a debit entry will be made as a result of the transaction.
	DbtrAcct *CashAccount38 `xml:"DbtrAcct,omitempty" json:"dbtr_acct" `

	// Financial institution servicing an account for the debtor.
	DbtrAgt *BranchAndFinancialInstitutionIdentification6 `xml:"DbtrAgt,omitempty" json:"dbtr_agt" `

	// Unambiguous identification of the account of the debtor agent at its servicing agent in the payment chain.
	DbtrAgtAcct *CashAccount38 `xml:"DbtrAgtAcct,omitempty" json:"dbtr_agt_acct" `

	// Financial institution servicing an account for the creditor.
	CdtrAgt *BranchAndFinancialInstitutionIdentification6 `xml:"CdtrAgt,omitempty" json:"cdtr_agt" `

	// Unambiguous identification of the account of the creditor agent at its servicing agent to which a credit entry will be made as a result of the payment transaction.
	CdtrAgtAcct *CashAccount38 `xml:"CdtrAgtAcct,omitempty" json:"cdtr_agt_acct" `

	// Financial institution that receives an amount of money from the financial institutional debtor.
	Cdtr *BranchAndFinancialInstitutionIdentification6 `xml:"Cdtr" json:"cdtr" `

	// Unambiguous identification of the account of the creditor to which a credit entry will be posted as a result of the payment transaction.
	CdtrAcct *CashAccount38 `xml:"CdtrAcct,omitempty" json:"cdtr_acct" `

	// Ultimate financial institution to which an amount of money is due.
	UltmtCdtr *BranchAndFinancialInstitutionIdentification6 `xml:"UltmtCdtr,omitempty" json:"ultmt_cdtr" `

	// Further information related to the processing of the payment instruction, provided by the initiating party, and intended for the creditor agent.
	InstrForCdtrAgt []*InstructionForCreditorAgent2 `xml:"InstrForCdtrAgt,omitempty" json:"instr_for_cdtr_agt" `

	// Further information related to the processing of the payment instruction that may need to be acted upon by the next agent.
	//
	// Usage: The next agent may not be the creditor agent.
	// The instruction can relate to a level of service, can be an instruction that has to be executed by the agent, or can be information required by the next agent.
	InstrForNxtAgt []*InstructionForNextAgent1 `xml:"InstrForNxtAgt,omitempty" json:"instr_for_nxt_agt" `

	// Underlying reason for the payment transaction.
	// Usage: Purpose is used by the end-customers, that is initiating party, (ultimate) debtor, (ultimate) creditor to provide information concerning the nature of the payment. Purpose is a content element, which is not used for processing by any of the agents involved in the payment chain.
	Purp *Purpose2Choice `xml:"Purp,omitempty" json:"purp" `

	// Information supplied to enable the matching of an entry with the items that the transfer is intended to settle, such as commercial invoices in an accounts' receivable system.
	RmtInf *RemittanceInformation2 `xml:"RmtInf,omitempty" json:"rmt_inf" `

	// Provides information on the underlying customer credit transfer for which cover is provided.
	UndrlygCstmrCdtTrf *CreditTransferTransaction37 `xml:"UndrlygCstmrCdtTrf,omitempty" json:"undrlyg_cstmr_cdt_trf" `

	// Additional information that cannot be captured in the structured elements and/or any other specific block.
	SplmtryData []*SupplementaryData1 `xml:"SplmtryData,omitempty" json:"splmtry_data" `
}

Provide further details specific to the individual transaction(s) included in the message.

func (*CreditTransferTransaction36) AddCdtr

func (*CreditTransferTransaction36) AddCdtrAcct

func (c *CreditTransferTransaction36) AddCdtrAcct() *CashAccount38

func (*CreditTransferTransaction36) AddCdtrAgt

func (*CreditTransferTransaction36) AddCdtrAgtAcct

func (c *CreditTransferTransaction36) AddCdtrAgtAcct() *CashAccount38

func (*CreditTransferTransaction36) AddDbtr

func (*CreditTransferTransaction36) AddDbtrAcct

func (c *CreditTransferTransaction36) AddDbtrAcct() *CashAccount38

func (*CreditTransferTransaction36) AddDbtrAgt

func (*CreditTransferTransaction36) AddDbtrAgtAcct

func (c *CreditTransferTransaction36) AddDbtrAgtAcct() *CashAccount38

func (*CreditTransferTransaction36) AddInstdAgt

func (*CreditTransferTransaction36) AddInstgAgt

func (*CreditTransferTransaction36) AddInstrForCdtrAgt

func (*CreditTransferTransaction36) AddInstrForNxtAgt

func (c *CreditTransferTransaction36) AddInstrForNxtAgt() *InstructionForNextAgent1

func (*CreditTransferTransaction36) AddIntrmyAgt1

func (*CreditTransferTransaction36) AddIntrmyAgt1Acct

func (c *CreditTransferTransaction36) AddIntrmyAgt1Acct() *CashAccount38

func (*CreditTransferTransaction36) AddIntrmyAgt2

func (*CreditTransferTransaction36) AddIntrmyAgt2Acct

func (c *CreditTransferTransaction36) AddIntrmyAgt2Acct() *CashAccount38

func (*CreditTransferTransaction36) AddIntrmyAgt3

func (*CreditTransferTransaction36) AddIntrmyAgt3Acct

func (c *CreditTransferTransaction36) AddIntrmyAgt3Acct() *CashAccount38

func (*CreditTransferTransaction36) AddPmtId

func (*CreditTransferTransaction36) AddPmtTpInf

func (*CreditTransferTransaction36) AddPrvsInstgAgt1

func (*CreditTransferTransaction36) AddPrvsInstgAgt1Acct

func (c *CreditTransferTransaction36) AddPrvsInstgAgt1Acct() *CashAccount38

func (*CreditTransferTransaction36) AddPrvsInstgAgt2

func (*CreditTransferTransaction36) AddPrvsInstgAgt2Acct

func (c *CreditTransferTransaction36) AddPrvsInstgAgt2Acct() *CashAccount38

func (*CreditTransferTransaction36) AddPrvsInstgAgt3

func (*CreditTransferTransaction36) AddPrvsInstgAgt3Acct

func (c *CreditTransferTransaction36) AddPrvsInstgAgt3Acct() *CashAccount38

func (*CreditTransferTransaction36) AddPurp

func (*CreditTransferTransaction36) AddRmtInf

func (*CreditTransferTransaction36) AddSplmtryData

func (c *CreditTransferTransaction36) AddSplmtryData() *SupplementaryData1

func (*CreditTransferTransaction36) AddSttlmTmIndctn

func (*CreditTransferTransaction36) AddSttlmTmReq

func (*CreditTransferTransaction36) AddUltmtCdtr

func (*CreditTransferTransaction36) AddUltmtDbtr

func (*CreditTransferTransaction36) AddUndrlygCstmrCdtTrf

func (c *CreditTransferTransaction36) AddUndrlygCstmrCdtTrf() *CreditTransferTransaction37

func (*CreditTransferTransaction36) SetIntrBkSttlmAmt

func (c *CreditTransferTransaction36) SetIntrBkSttlmAmt(value, currency string)

func (*CreditTransferTransaction36) SetIntrBkSttlmDt

func (c *CreditTransferTransaction36) SetIntrBkSttlmDt(value string)

func (*CreditTransferTransaction36) SetSttlmPrty

func (c *CreditTransferTransaction36) SetSttlmPrty(value string)

type CreditTransferTransaction37

type CreditTransferTransaction37 struct {