Quick update this morning before I goto the office. I got a debug build created and added some additional logging and fixed the compilation errors with the current debug lines (need %lld instead of %d when printing the date diff).
For the check that cleared on 2/12 I want to match against 2/4. The debug logs show that both the check on 2/18 and 2/4 were added to the list of possible matches. However the display dialog is only showing me the 2/18 check. Seems that something is getting lost between split_find_match and the dialog display. On Mon, 2026-02-23 at 05:58 -0600, Jon Schewe via gnucash-user wrote: > I thought about that transaction being blocked, however hte > transaction > that I want shows up when I check the next next transaction. > I'm having some trouble figuring out how GnuCash is computing some > probabilities as I'm getting numbers that don't quite line up. > > Here's more information in hopes that someone recognizes it. I'll see > about getting a debug version built. It's unfortunate that there > isn't > a way to turn on the debugging at runtime without a full rebuild. > > Looking at split_find_match: > > The amount always matches, so that's +3 > The date never matches, but is either under the threshold or not > (never > outside the excluded threshold), so that's +2 or 0 > The number never matches, so that's 0. Although it might be -2 if > somehow the bank side has something in the number field (I don't see > it > in the OFX file) > The memo never matches, so that should be 0. > Same for the description, 0 > > Given that I expect to see a 5 or a 3. I'm getting 6 and 4. > > Here's my check information: > Check date -> cleared bank > 1068 1/14 -> 1/22 > 1069 1/21 -> 1/29 > 1071 1/28 -> 2/5 > 1072 2/4 -> 2/12 > 1073 2/18 -> not cleared > > With options: > display threshold 0 > auto-add 3 > auto-clear 6 > likely match: 4 > unlikely match 28 > > Check that cleared 1/29 was actually written on 1/21 > GnuCash presents me with: > 1/28 - 6 > 1/21 - 4 -> this didn't happen yesterday, I've selected it as a match > now > 2/4 - 4 > 2/18 - 4 > > Check that cleared 1/22, written 1/14 > 1/21 - 6 > 1/28 - 4 > 2/4 - 4 > 2/18 - 4 > > Why didn't 1/14 come up as an option? Also how did I get 6 and 4 > instead of 5 and 3? > > Check that cleared 2/5, written 1/28 > 2/3 - 6 > 1/21 - 4 > 1/28 - 4 - manually selected > 2/18 - 4 > > Check that cleared 2/12, written 2/4 > 2/28 - 4 > > Why not the other matches? > > As expected when I open up the same OFX file again, the checks that I > just manually assigned are no longer presented. > > Given that the behavior changed from yesterday to today, I'm > wondering > if there is something about the current date in there? Or maybe > closing > GnuCash and opening it matters? > > > On Sun, 2026-02-22 at 21:21 -0800, John Ralls wrote: > > Maybe something else is blocking that transaction. Most likely > > would > > be that you (inadvertently) matched it already: That sets a field > > on > > the split in that account with the FITID from the import it matched > > with and if it’s set it’s excluded from being matched again. > > Unlikely > > but worth mentioning is that transactions being edited are also > > excluded. > > > > If you’re willing to build GnuCash yourself you can un-comment the > > DEBUG statements in split_find_match and recompile, then run > > gnucash > > with —log gnc.import=debug. That will dump a ton of detail into the > > trace file where you should find the reason that transaction > > doesn’t > > match. > > > > Regards, > > John Ralls > > > > > On Feb 22, 2026, at 12:44, Jon Schewe <[email protected]> wrote: > > > > > > > > > Thank you, that's exactly what I'm looking for. I see that all I > > > need to do is to double click on it and I've got exactly what I > > > wanted. > > > > > > However it appears to be skipping over some transactions and I > > > don't understand why. > > > I have a check that cleared the bank on 1/22. The check was > > > written > > > on 1/14 and has that date in GnuCash. > > > GnuCash is showing 4 possible transactions (all with the same > > > value): > > > 1/21 - 6 > > > 1/28 - 6 > > > 2/4 - 6 > > > 2/18 - 4 > > > > > > However it's not showing me the transaction on 1/14 as an option. > > > Why is this transaction skipped? They are all for the same > > > amount. > > > I even tried changing the match display threshold to be 0 and it > > > still doesn't come up. > > > I'm experimenting with values. I currently have display threshold > > > set to 0, auto-add set to 3, auto-clear set to 5, likely match > > > set > > > to 14, unlikely match set to 28. > > > The day difference between 1/14 and 1/22 is 8 days, so I would > > > think the likely match set to 14 and the unlikely match set to 28 > > > would be reasonable. Unless the date thresholds are all +/- half > > > what is in the dialog, but I don't think that's the case. > > > I tried doubling the dates to likely 28 and unlikely to 52 and no > > > change to the list of possible transactions. > > > > > > Now that I see the dialog, of course I see something I'd like > > > added. That's to have the transaction number show up in the match > > > view. > > > > > > On Sun, 2026-02-22 at 08:49 -0800, John Ralls wrote: > > > > GnuCash already does that, > > > > > > > > > see > > https://code.gnucash.org/docs/C/gnucash-manual/trans-import.html#trans_match_picker > > > > . Button1 in that paragraph means mouse button 1, normally the > > > > left one (or the only one on Mac one-button mice). While that > > > > doc > > > > says that it works for Clear I checked the code (gnc-main- > > > > matcher.cpp line 797) and it works for both C and U+C. > > > > > > > > Regards, > > > > John Ralls > > > > > > > > > > > > > On Feb 22, 2026, at 07:21, Paul Kroitor <[email protected]> > > > > > wrote: > > > > > > > > > > That idea, of a "choose alternate match" in the context menu > > > > > of > > > > > the (various) import windows is great! I second the motion. > > > > > But > > > > > it's hardly a trivial change. Maybe add it to the requested > > > > > features? > > > > > > > > > > Paul > > > > > > > > > > On 2026-02-22 10:04 a.m., Jon Schewe via gnucash-user wrote: > > > > > > Thank you for the code reference and the explanation. I'm a > > > > > > software > > > > > > developer, so that helps me a lot. > > > > > > > > > > > > The check number is coming through, so I'm only matching on > > > > > > date and > > > > > > amount. I could try getting the bank to add the check > > > > > > information to > > > > > > their QFX export, but that seems like an exercise in > > > > > > futility. > > > > > > > > > > > > Is there a way to have GnuCash present me with multiple > > > > > > options for > > > > > > matches rather than the most likely match only? > > > > > > > > > > > > I've got the following settings in Preferences -> Import > > > > > > > > > > > > Enable skip transaction action: yes > > > > > > enable update match action: no > > > > > > Use basesian matching: yes > > > > > > Match display threshold: 2 > > > > > > auto-add threshold: 3 > > > > > > auto-clear threshold: 6 > > > > > > likely match day threshold: 8 > > > > > > unlikely match day threshold: 21 > > > > > > commercial ATM fees threshold: 2 > > > > > > automatically create new commodities: no > > > > > > > > > > > > QIF import > > > > > > Show documentation: yes > > > > > > Not cleared: selected > > > > > > > > > > > > > > > > > > On Sat, 2026-02-21 at 22:08 +0800, Christopher Lam wrote: > > > > > > > Hi, having multiple checks for the same amount but > > > > > > > different dates > > > > > > > and check number seems like a headache for any manual or > > > > > > > automated > > > > > > > matcher. > > > > > > > Here's the algorithm as originally written since 2002 (23 > > > > > > > years ago!) > > > > > > > > > > > > https://github.com/Gnucash/gnucash/blob/6983adb14a389c13f828bae4f485b4748a8ead24/gnucash/import-export/import-backend.cpp#L579 > > > > > > > Note the following scoring system: > > > > > > > - identical amounts get +3, otherwise -2 or -5 > > > > > > > - identical dates get +3, otherwise +2, 0 or -5 > > > > > > > - identical trans->num get +4, otherwise -2, or 0 > > > > > > > - etc. > > > > > > > > > > > > > > Thus, an exact identical match in trans->num gets a > > > > > > > relatively strong > > > > > > > score; you may need to check if the QFX/OFX sets it to > > > > > > > the > > > > > > > check > > > > > > > number. You may want to adjust the date thresholds in the > > > > > > > global > > > > > > > preference. > > > > > > > > > > > > > > On Sat, 21 Feb 2026 at 10:43, Jon Schewe via gnucash-user > > > > > > > <[email protected]> wrote: > > > > > > > > I'm running into an issue when importing QFX files and > > > > > > > > matching > > > > > > > > transactions. Every week I write a check for the same > > > > > > > > amount. > > > > > > > > However > > > > > > > > the check doesn't clear the bank for a week or two. > > > > > > > > When > > > > > > > > I import > > > > > > > > my > > > > > > > > QFX file GnuCash wants to match the most recent check > > > > > > > > rather than > > > > > > > > the > > > > > > > > one 2 weeks back. Does anyone have a solution for > > > > > > > > allowing multiple > > > > > > > > matches to show up in the import dialog so that I can > > > > > > > > select the > > > > > > > > proper > > > > > > > > check? > > > > > > > > > > > > > > > > Also, is there a way for the check number to be visible > > > > > > > > in the > > > > > > > > import > > > > > > > > dialog? > > > > > > > > > > > > > > > > Thanks, > > > > > > > > Jon > > > > > > > > > > > > > > > > _______________________________________________ > > > > > > > > gnucash-user mailing list > > > > > > > > [email protected] > > > > > > > > To update your subscription preferences or to > > > > > > > > unsubscribe: > > > > > > > > https://lists.gnucash.org/mailman/listinfo/gnucash-user > > > > > > > > ----- > > > > > > > > Please remember to CC this list on all your replies. > > > > > > > > You can do this by using Reply-To-List or Reply-All. > > > > > > _______________________________________________ > > > > > > gnucash-user mailing list > > > > > > [email protected] > > > > > > To update your subscription preferences or to unsubscribe: > > > > > > https://lists.gnucash.org/mailman/listinfo/gnucash-user > > > > > > ----- > > > > > > Please remember to CC this list on all your replies. > > > > > > You can do this by using Reply-To-List or Reply-All. > > > > > _______________________________________________ > > > > > gnucash-user mailing list > > > > > [email protected] > > > > > To update your subscription preferences or to unsubscribe: > > > > > https://lists.gnucash.org/mailman/listinfo/gnucash-user > > > > > ----- > > > > > Please remember to CC this list on all your replies. > > > > > You can do this by using Reply-To-List or Reply-All. > > > > > > > > _______________________________________________ > > > > gnucash-user mailing list > > > > [email protected] > > > > To update your subscription preferences or to unsubscribe: > > > > https://lists.gnucash.org/mailman/listinfo/gnucash-user > > > > ----- > > > > Please remember to CC this list on all your replies. > > > > You can do this by using Reply-To-List or Reply-All. > > > > _______________________________________________ > gnucash-user mailing list > [email protected] > To update your subscription preferences or to unsubscribe: > https://lists.gnucash.org/mailman/listinfo/gnucash-user > ----- > Please remember to CC this list on all your replies. > You can do this by using Reply-To-List or Reply-All. _______________________________________________ gnucash-user mailing list [email protected] To update your subscription preferences or to unsubscribe: https://lists.gnucash.org/mailman/listinfo/gnucash-user ----- Please remember to CC this list on all your replies. You can do this by using Reply-To-List or Reply-All.
