-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtypes.go
More file actions
59 lines (55 loc) · 2.23 KB
/
types.go
File metadata and controls
59 lines (55 loc) · 2.23 KB
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
package main
// Transaction represents a single credit card transaction
type Transaction struct {
Amount string `json:"amount"`
Description string `json:"description"`
AmtCy string `json:"amtCy"`
TxnLoc string `json:"txnLoc"`
TxnDate string `json:"txnDate"`
CyCnvDate string `json:"cyCnvDate"`
PostingDate string `json:"postingDate"`
NtdAmount string `json:"ntdAmount"`
IsForeignTxn bool `json:"isForeignTxn"`
IsInstallmentTxn bool `json:"isInstallmentTxn"`
CardNo string `json:"cardNo"`
RelationShip string `json:"relationShip"`
// Added fields for categorization
NormalizedDescription string
ApplePayCardLast4 string
Category string
}
// Statement represents a monthly credit card statement
type Statement struct {
NationalID string `json:"nationalId"`
PaymentKey string `json:"paymentKey"`
CardType string `json:"cardType"`
StmtMo string `json:"stmtMo"`
StmtYr string `json:"stmtYr"`
PmtDue string `json:"pmtDue"`
CurTotAmt string `json:"curTotAmt"`
MinAmt string `json:"minAmt"`
StmtDate string `json:"stmtDate"`
IntRate string `json:"intRate"`
CreditLmt string `json:"creditLmt"`
CashAdvLmt string `json:"cashAdvLmt"`
PreBal string `json:"preBal"`
PreAdjAmt string `json:"preAdjAmt"`
PreTotAmt string `json:"preTotAmt"`
CurIncExpense string `json:"curIncExpense"`
CurOthExpense string `json:"curOthExpense"`
PointCurPtBal string `json:"pointCurPtBal"`
PointPrebal string `json:"pointPrebal"`
PointCurIncPt string `json:"pointCurIncPt"`
PointCurUsePt string `json:"pointCurUsePt"`
Message string `json:"message"`
Transactions []Transaction `json:"transactions"`
}
// CategorizedTransactions holds transactions grouped by category
type CategorizedTransactions struct {
ApplePay []Transaction
PayPal []Transaction
LinePay []Transaction
Jkopay []Transaction
ForeignFees []Transaction
Other []Transaction
}