[GNC-dev] [GNC] ofxtools - a Python OFX library

Christopher Lam christopher.lck at gmail.com
Thu May 30 09:49:59 EDT 2019


Hi Csingley

I've experimented with your ofxtools and it works well on my bank datafile.

I've this idea brewing that's quite difficult to do, but would greatly
multiply the usability of the current OFX importer. Here's gist of current
importer (I think), as well as some followup desired functionality:

Input: ofxfile, gnucash datafile
Options: target acct

1. Use your ofxtools to read .ofx file
2. Use gnucash python bindings to read .gnucash datafile
3. Each ofx transaction attempts to match against datafile target-acct's
transactions
4. Highest matches are whereby ofx's transaction's FITID already matches
target-acct' transaction's online_id metadata
5. Otherwise try matching by amount, date, or description

The desired addition to the above process is
6. Present UI in a split-screen; left = ofx-transactions, right = matched
acct-transaction
7. Matched ofx-txns are shown on the same line as its acct-transaction
8. Unmatched ofx-transactions are shown on left-pane only
9. Unmatched acct-transactions are shown on right-pane only
10. Each ofx-transaction is offered choice, to become a tasklist
 (a) maintain current match, do nothing
 (b) maintain current match, update register txns->desc/memo with ofx
details
 (c) match to existing unmatched acct-txn which removes the acct-txn from
the unmatched-txns list, and refreshes the display to reflect the new match
 (d) add as a new acct-transaction
 (e) ignore
11. Process ofx-txns as per task list
 - note matching an ofx-txn to acct-split also copies ofx->fitid to
txn->online_id

The above may be created as a standalone python package, or ideally
upgrading current ofx importer.
I think it'll be quite difficult to do well, though.

On Tue, 28 May 2019 at 16:20, csingley <csingley at gmail.com> wrote:

> John Ralls-2 wrote
> >
> > Thanks.
> >
> > A couple of things you might be interested in: We use AQBanking for OFX
> > Direct Connect imports, but if you import an OFX or QFX file we use
> > https://github.com/libofx/libofx.
> >
> > The other is that there's a more up-to-date database of OFX
> Direct-Connect
> > supporting institutions at https://ofxhome.com. AQBanking retrieves its
> > connection parameters from there.
> >
> > Regards,
> > John Ralls
> > _______________________________________________
> > gnucash-user mailing list
>
> > gnucash-user@
>
> > To update your subscription preferences or to unsubscribe:
> > https://lists.gnucash.org/mailman/listinfo/gnucash-user
> > If you are using Nabble or Gmane, please see
> > https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
> > -----
> > Please remember to CC this list on all your replies.
> > You can do this by using Reply-To-List or Reply-All.
>
> libofx is great, and certainly much faster than my parser.  On the other
> hand, ofxtools can generate arbitrary OFX, and I believe covers
> significantly more of the spec.  Different tasks, different tools.
>
> OFX Home is where I pulled down the FI data for ofxtools (I've been talking
> to Jesse about it - he provides a great service).  I walked through every
> FI
> he's got, recording connection parameters that resulted in receiving an OFX
> profile response.  Some of them have odd formatting requirements, like SGML
> must not have closing tags on leaf elements, or XML must have newlines
> inserted between tags.  This database is included in ofxtools, and is the
> part I imagine would be most immediately useful to GnuCash users.... very
> easy to configure OFX downloads, with settings that can be transferred to
> GnuCash.   It would be great if some of this information were published
> through the OFX Home API.
>
> One of these days I'm going to set up wireshark and capture an updated list
> of URL/FI/ORG parameters for OFX servers that Quicken knows about...
>
>
>
> --
> Sent from: http://gnucash.1415818.n4.nabble.com/GnuCash-User-f1415819.html
> _______________________________________________
> gnucash-user mailing list
> gnucash-user at gnucash.org
> To update your subscription preferences or to unsubscribe:
> https://lists.gnucash.org/mailman/listinfo/gnucash-user
> If you are using Nabble or Gmane, please see
> https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
> -----
> Please remember to CC this list on all your replies.
> You can do this by using Reply-To-List or Reply-All.
>


More information about the gnucash-devel mailing list