-
Notifications
You must be signed in to change notification settings - Fork 15
/
Copy pathAccountReport1.go
62 lines (47 loc) · 2.31 KB
/
AccountReport1.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
package iso20022
// Message used to report to a corporate on the actual set up up of the account, related services and mandates.
type AccountReport1 struct {
// Characteristics of the account.
Account *CustomerAccount1 `xml:"Acct"`
// Account contract established between the organisation or the group to which the organisation belongs, and the account servicer. This contract has to be applied for the new account to be opened and maintained.
UnderlyingMasterAgreement *ContractDocument1 `xml:"UndrlygMstrAgrmt,omitempty"`
// Specifies target and actual dates.
ContractDates *AccountContract3 `xml:"CtrctDts,omitempty"`
// Information specifying the account mandate.
Mandate []*OperationMandate1 `xml:"Mndt,omitempty"`
// Unique and unambiguous identification of the account used as a reference for the opening of another account.
ReferenceAccount *CashAccount16 `xml:"RefAcct,omitempty"`
// Unique and unambiguous identification of the account where to transfer the balance.
BalanceTransferAccount *AccountForAction1 `xml:"BalTrfAcct,omitempty"`
// Identification of the transfer account servicer.
TransferAccountServicerIdentification *BranchAndFinancialInstitutionIdentification4 `xml:"TrfAcctSvcrId,omitempty"`
}
func (a *AccountReport1) AddAccount() *CustomerAccount1 {
a.Account = new(CustomerAccount1)
return a.Account
}
func (a *AccountReport1) AddUnderlyingMasterAgreement() *ContractDocument1 {
a.UnderlyingMasterAgreement = new(ContractDocument1)
return a.UnderlyingMasterAgreement
}
func (a *AccountReport1) AddContractDates() *AccountContract3 {
a.ContractDates = new(AccountContract3)
return a.ContractDates
}
func (a *AccountReport1) AddMandate() *OperationMandate1 {
newValue := new(OperationMandate1)
a.Mandate = append(a.Mandate, newValue)
return newValue
}
func (a *AccountReport1) AddReferenceAccount() *CashAccount16 {
a.ReferenceAccount = new(CashAccount16)
return a.ReferenceAccount
}
func (a *AccountReport1) AddBalanceTransferAccount() *AccountForAction1 {
a.BalanceTransferAccount = new(AccountForAction1)
return a.BalanceTransferAccount
}
func (a *AccountReport1) AddTransferAccountServicerIdentification() *BranchAndFinancialInstitutionIdentification4 {
a.TransferAccountServicerIdentification = new(BranchAndFinancialInstitutionIdentification4)
return a.TransferAccountServicerIdentification
}