sorting of transactions within day

marcus.wolschon at marcus.wolschon at
Wed Apr 29 02:04:18 EDT 2009

On Tue, 28 Apr 2009 08:24:34 -0400, Mike or Penny Novack
<stepbystepfarm at> wrote:
> marcus.wolschon at wrote:
> You would first have to look at "what rule does the bank follow" with of 
> course no expectation that any two banks would be following the same 
> rule. That should be enough to convince you that nothing done at the 
> Gnucash end could guarantee the same order except the ability to define 
> a complex set of rules for order.

In HBCI it is guaranteed that processed orders keep their position in
a day. New orders are appended to the day. That end is not the issue.
I have found the ordering to be stable enough to help my users in
compating days with many orders to find that one transaction that differs
by enforcing the same ordering. As I am creating and modifying the
gnucash-transactions on the XML-level I can alter them however I want.

> When choosing a bank, an important consideration is whether for 

I am not choosing a bank here. I am asking a technical question
about how gnucash orders it's transactions. The rest is my problem
and I know very well how to solve it.

> Keep in mind that for checks coming back to the bank, their arrival and 

I have never done a check in my live. Never seen one.
This is europe. Welcome to the world of fast inter-bank transactions
without any fees and online-banking with lists of onetime-passcodes (tan).

> entry into the bank's records is random with respect to when written and 
> entered in GnuCash.

I am not using the aqbanking. Did I say that I do? I have my own HBCI-code
to do that and it does a "little" more then just import everything it gets
as transactions of 2 splits.

> The only thing that would be the same in both places 
> is the check number and the date written.

There is no check-number. The greatest deficiency in HBCI is that there
is no primary key. However I am adding an identifier that gnucash ignores
to the imported transactions to clearly identify a transaction as belonging
to a given HBCI-transaction when doing a synchronize again later.

I can modify:
* the timestamp stored int he date -field of gnucash-transactions
* the order they have in the file
* their uuid (easy on create, more difficult on updates)

Gnucash is a nice tool to work with. I have done so for years and
would not want to miss it. But for complex, automated tasks such as
this I am using my own program configured with lots of plugins and scripts.


More information about the gnucash-devel mailing list