Generic Transaction import discussion

Derek Atkins warlord@MIT.EDU
20 Oct 2002 11:28:00 -0400


John F Meinel Jr <gnucash@johnmeinel.com> writes:

> The question is, if you already have a listing of files in
> double-entry bookkeeping, what is the best way to get them imported
> into gnucash.  As far as I'm aware, the only import mechanism is QIF
> files.  And from the discussions I've been reading, and from what I've
> read about the QIF spec [albeit not a lot], they don't support that
> style.  You just have simple transactions [not linked to another
> transaction].

The current way to import is via QIF.  OFX and HBCI import is under
development in CVS.  Supposedly with OFX you can provide the
cross-link information.

> We've been able to create an XML file that gnucash will read as a
> 'real' gnucash account file, however, I don't believe there is a way
> to merge these transactions with another account.  Is there plans to
> do this?  Is it planned but won't happen for some time?  I'm willing

No, there is currently no way to merge transactions from multiple XML
"files", but not because the architecture does not support it.  The
XML parsers could (relatively easily) be given XML 'snippets' and add
them to an existing "open book".  This was part of the design of the
(now dead?) Gnucash Network, where one could pull down XML
transactions over the web.

> to scratch an itch here, except what I saw in the qif import, it was
> written in Scheme, and I don't know enough about functional languages
> to make it work.  I'm pretty good in C/C++, a little bit of Java, etc,
> but I'm an engineer, not a comp sci major :).

Well, the XML parser is in C (see src/backend/file).  You're certainly
welcome to try to write an "XML Importer" (and even an XML exporter if
you want to send out a limited number of Transactions rather than a
complete file).

On problem you may run into is that I don't think there is a complete
Schema or DTD of the Gnucash file.  Someone with more XML knowledge
than I should work on that. :)

> The basic goal would be a program that takes the database files from
> freecoins, tries to import them into gnucash [possibly with user
> help], and then removes everything except account summaries, and
> possibly the last few weeks [adjustable] worth of transactions.

Well, what is the goal of "freecoins" here?  How do you expect it to
be used?  I would imagine that freecoins would be used as a
transaction recorder in real-time.  ("I had dinner for $25.39", "I
paid a parking fee of $5", etc), and these could be imported into
Gnucash.

> Am I going to have to work with an XML parser and manually change the
> gnucash account file? That sounds like a good way to break a lot of

I would hope not...  That would be "bad".  However, using the XML
parser to pull in individual transactions might work, maybe..

> stuff.  Is there a simple method for importing an XML file instead of
> a QIF file?  Do QIF files support splits and I'm just not aware of it?

QIF files _do_ support splits, and QIF files DO give you the ability
to transfer between accounts...

> Any answers would be appreciated.
> John
> =:->

-derek

-- 
       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL: http://web.mit.edu/warlord/    PP-ASEL-IA     N1NWH
       warlord@MIT.EDU                        PGP key available