summaryrefslogtreecommitdiff
path: root/PKG-INFO
blob: a80c066a702e5ab2dd44352cc3c878a3df0cd0f3 (plain)
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
Metadata-Version: 1.1
Name: ofxparse
Version: 0.19
Summary: Tools for working with the OFX (Open Financial Exchange) file format
Home-page: http://sites.google.com/site/ofxparse
Author: Jerry Seutter
Author-email: jseutter.ofxparse@gmail.com
License: MIT License
Description-Content-Type: UNKNOWN
Description: ofxparse
        ========
        
        ofxparse is a parser for Open Financial Exchange (.ofx) format files.  OFX
        files are available from almost any online banking site, so they work well
        if you want to pull together your finances from multiple sources.  Online
        trading accounts also provide account statements in OFX files.
        
        There are three different types of OFX files, called BankAccount,
        CreditAccount and InvestmentAccount files.  This library has been tested with
        real-world samples of all three types.  If you find a file that does not work
        with this library, please consider contributing the file so ofxparse can be
        improved.  See the Help! section below for directions on how to do this.
        
        Example Usage
        =============
        
        Here's a sample program
        
        .. code:: python
        
          from ofxparse import OfxParser
          with codecs.open('file.ofx') as fileobj:
              ofx = OfxParser.parse(fileobj)
          
          # The OFX object
          
          ofx.account               # An Account object
        
          # AccountType
          # (Unknown, Bank, CreditCard, Investment)
        
          # Account
          
          account = ofx.occount 
          account.account_id        # The account number
          account.number            # The account number (deprecated -- returns account_id)
          account.routing_number    # The bank routing number
          account.branch_id         # Transit ID / branch number
          account.type              # An AccountType object
          account.statement         # A Statement object
          account.institution       # An Institution object
        
          # InvestmentAccount(Account)
        
          account.brokerid          # Investment broker ID
          account.statement         # An InvestmentStatement object
        
          # Institution
          
          institution = account.institution
          institution.organization
          institution.fid
            
          # Statement
          
          statement = account.statement
          statement.start_date          # The start date of the transactions
          statement.end_date            # The end date of the transactions
          statement.balance             # The money in the account as of the statement date
          statement.available_balance   # The money available from the account as of the statement date
          statement.transactions        # A list of Transaction objects
        
          # InvestmentStatement
        
          statement = account.statement  
          statement.positions           # A list of Position objects
          statement.transactions        # A list of InvestmentTransaction objects
        
          # Transaction
          
          for transaction in statement.transactions:
            transaction.payee
            transaction.type
            transaction.date
            transaction.amount
            transaction.id
            transaction.memo
            transaction.sic
            transaction.mcc
            transaction.checknum
        
          # InvestmentTransaction
          
          for transaction in statement.transactions:
            transaction.type
            transaction.tradeDate
            transaction.settleDate
            transaction.memo
            transaction.security      # A Security object
            transaction.income_type
            transaction.units
            transaction.unit_price
            transaction.comission
            transaction.fees
            transaction.total
            transaction.tferaction
        
          # Positions
          
          for position in statement.positions:
            position.security       # A Security object
            position.units
            position.unit_price
            position.market_value
        
          # Security
          
          security = transaction.security
          # or
          security = position.security
          security.uniqueid
          security.name
          security.ticker
          security.memo
          
        
        Help!
        =====
        
        Sample ``.ofx`` and ``.qfx`` files are very useful.  If you want to help us out,
        please edit all identifying information from the file and then email it to
        jseutter dot ofxparse at gmail dot com.
        
        Development
        ===========
        
        Prerequisites::
          # Ubuntu
          sudo apt-get install python-beautifulsoup python-nose python-coverage-test-runner
          # Python 3 (pip)
          pip install BeautifulSoup4 six lxml nose coverage
          # Python 2 (pip)
          pip install BeautifulSoup six nose coverage
        
        The `six` package is required for python 2.X compatibility
        
        Tests:
        Simply running the ``nosetests`` command should run the tests.
        
        .. code:: bash
        
          nosetests
        
        If you don't have nose installed, the following might also work:
        
        .. code:: bash
        
          python -m unittest tests.test_parse
        
        Test Coverage Report:
        
        .. code:: bash
        
          coverage run -m unittest tests.test_parse
          
          # text report
          coverage report
        
          # html report
          coverage html
          firefox htmlcov/index.html
        
        
        Homepage
        ========
        | Homepage: https://sites.google.com/site/ofxparse
        | Source: https://github.com/jseutter/ofxparse
        
        License
        =======
        
        ofxparse is released under an MIT license.  See the LICENSE file for the actual
        license text.  The basic idea is that if you can use Python to do what you are
        doing, you can also use this library.
        
        
Keywords: ofx,Open Financial Exchange,file formats
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Utilities
Classifier: License :: OSI Approved :: MIT License