]>
git.rmz.io Git - dotfiles.git/blob - bin/monzo.py
3c79c714b820b38c69175b4d8d747120e6f30c7d
3 from datetime
import datetime
10 if __name__
== "__main__":
11 if outformat
== "qif":
14 with open(sys
.argv
[1], 'r') if len(sys
.argv
) > 1 else sys
.stdin
as fp
:
16 for t
in data
.get("transactions"):
18 date
= datetime
.strptime(t
["created"], "%Y-%m-%dT%H:%M:%S.%fZ")
20 date
= datetime
.strptime(t
["created"], "%Y-%m-%dT%H:%M:%SZ")
21 amount
= t
["amount"] / 100
22 if "name" in t
.get("counterparty", {}):
23 payee
= t
["counterparty"]["name"]
24 elif t
["merchant"] is None:
25 payee
= t
["description"]
27 payee
= t
["merchant"]["name"]
28 memo
= t
["description"]
29 memo
+= "\n{local_amount} {local_currency}".format(**t
)
31 if outformat
== "csv":
32 print('{date:%Y-%m-%d},{amount},"{payee}","{description}","{notes}"'.format(date
=date
,
36 elif outformat
== "qif":
37 print("D{:%Y-%m-%d}".format(date
))
38 print("T{}".format(amount
))
39 print("P{}".format(payee
))
40 print("M{}".format(memo
))
41 print("#{}".format(t
['id']))