mirror of
https://github.com/mayswind/ezbookkeeping.git
synced 2026-05-21 10:14:26 +08:00
import transactions from camt.053 file
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
package camt
|
||||
|
||||
import "encoding/xml"
|
||||
|
||||
type camtCreditDebitIndicator string
|
||||
|
||||
const (
|
||||
CAMT_INDICATOR_CREDIT camtCreditDebitIndicator = "CRDT"
|
||||
CAMT_INDICATOR_DEBIT camtCreditDebitIndicator = "DBIT"
|
||||
)
|
||||
|
||||
type camt053File struct {
|
||||
XMLName xml.Name `xml:"Document"`
|
||||
BankToCustomerStatement *camtBankToCustomerStatement `xml:"BkToCstmrStmt"`
|
||||
}
|
||||
|
||||
type camtBankToCustomerStatement struct {
|
||||
Statements []*camtStatement `xml:"Stmt"`
|
||||
}
|
||||
|
||||
type camtStatement struct {
|
||||
Account *camtAccount `xml:"Acct"`
|
||||
Entries []*camtEntry `xml:"Ntry"`
|
||||
}
|
||||
|
||||
type camtAccount struct {
|
||||
IBAN string `xml:"Id>IBAN"`
|
||||
OtherIdentification string `xml:"Id>Othr>Id"`
|
||||
Currency string `xml:"Ccy"`
|
||||
}
|
||||
|
||||
type camtEntry struct {
|
||||
Amount *camtAmount `xml:"Amt"`
|
||||
CreditDebitIndicator camtCreditDebitIndicator `xml:"CdtDbtInd"`
|
||||
BookingDate *camtDate `xml:"BookgDt"`
|
||||
EntryDetails *camtEntryDetails `xml:"NtryDtls"`
|
||||
AdditionalEntryInformation string `xml:"AddtlNtryInf"`
|
||||
}
|
||||
|
||||
type camtAmount struct {
|
||||
Value string `xml:",chardata"`
|
||||
Currency string `xml:"Ccy,attr"`
|
||||
}
|
||||
|
||||
type camtDate struct {
|
||||
Date string `xml:"Dt"`
|
||||
DateTime string `xml:"DtTm"`
|
||||
}
|
||||
|
||||
type camtEntryDetails struct {
|
||||
TransactionDetails []*camtTransactionDetails `xml:"TxDtls"`
|
||||
}
|
||||
|
||||
type camtTransactionDetails struct {
|
||||
AmountDetails *camtAmountDetails `xml:"AmtDtls"`
|
||||
RemittanceInformation *camtRemittanceInformation `xml:"RmtInf"`
|
||||
AdditionalTransactionInformation string `xml:"AddtlTxInf"`
|
||||
}
|
||||
|
||||
type camtAmountDetails struct {
|
||||
InstructedAmount *camtAmount `xml:"InstdAmt>Amt"`
|
||||
TransactionAmount *camtAmount `xml:"TxAmt>Amt"`
|
||||
}
|
||||
|
||||
type camtRemittanceInformation struct {
|
||||
Unstructured []string `xml:"Ustrd"`
|
||||
}
|
||||
Reference in New Issue
Block a user