Bug 452616

Summary: Missing transaction information
Product: [Applications] kmymoney Reporter: kde-gato <schiller.andrej>
Component: onlinebankingAssignee: KMyMoney Devel Mailing List <kmymoney-devel>
Status: RESOLVED FIXED    
Severity: normal CC: madkentar, ralf.habacker
Priority: NOR    
Version: 5.1.3   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In: 5.1.3
Attachments: kmm import log
Online-Settings - Memo for Kmymoney 5.1.3

Description kde-gato 2022-04-14 14:53:37 UTC
Hello!
I connected my bank account through hbci, but if I download my account transactions are recognized correctly or are visible in the "notice area". But there are cases that the payee is not recognized correctly and the transaction information is also missing in the "notice area". But if a part of the details is missing, it takes additional effort to find out the payee e.g. with help of log-in into my bank account.

Below problematical casese from my log file in ~/.aqbanking/backends/aqhbci/data/banks/de/<blz>/logs:
Example 1:
22ABWA+Tankstelle Thrainer//N?23iederndorf/AT/1?30HELADE
FF?31DE67500500000959567025?32Landesbank Hessen-Thuringen?33 Giro
zentrale?34002

Example 2:
NKD Deutschland GmbH//?23Brannenburg/DE/0?30HELAD
EFF?31DE67500500000959567025?32Landesbank Hessen-Thuringen?33 Gir
ozentrale?34002

In this case "Landesbank Hessen-Thuringen" will be recognized as payee, what is wrong. But also problematical is, that the part "Tankstelle Thrainer//N?23iederndorf/AT" is completely missing in the "notice area" and I have no chance to find out the correct payee as there also other similar cases with "Landesbank Hessen-Thuringen" but different payee (Example 1 = Tankstelle Thrainer, Example 2 = NKD Deutschland).

Is it possible to include the full transaction information into the not area? If yes it would much easier to find out the find out/allocate the correct payee. At the moment I always have to log-in into my bank account to see the full information and to find out the correct payee.


STEPS TO REPRODUCE
1. Transaction with incorrect recognized payee e.g. NKD Deutschland
2. Check the "notice area" for full transaction information

OBSERVED RESULT
NKD Deutschland will be missing in the "notice area" and you have to login into your bank account to find out the correct payee.

EXPECTED RESULT
Notice area should show full transaction details that the correct payee can be allocated.


SOFTWARE/OS VERSIONS
Linux/KDE Plasma: KDE Neon 5.24
(available in About System)
KDE Plasma Version: 5.24.4
KDE Frameworks Version: 5.93.0
Qt Version: 5.15.3
Comment 1 Ralf Habacker 2022-04-14 20:28:27 UTC
(In reply to kde-gato from comment #0)
>  the transaction information is also missing in the "notice area".

I suspect that in the aqbanking backend for hbci, the associated information is not added to the transaction as it was for the paypal backend with commit https://github.com/aqbanking/aqbanking/commit/4f23ad7069759e00c315f70545b207c0f52fe7cc added.
Comment 2 Thomas Baumgart 2022-04-16 06:48:05 UTC
Git commit 078ae991486aedf7a05137ccc97d35787c4b0a76 by Thomas Baumgart.
Committed on 16/04/2022 at 06:44.
Pushed by tbaumgart into branch 'master'.

Add alternative payee names from bank to payee field

The AqBanking library provides alternative names if used by the
institution. These names contain vital information about the payee/payer
which gets lost. This change appends these additional names to the
existing payee field. Payee name matching will take care of modifying it
into the form the user wants to see.

M  +13   -0    kmymoney/plugins/kbanking/kbanking.cpp

https://invent.kde.org/office/kmymoney/commit/078ae991486aedf7a05137ccc97d35787c4b0a76
Comment 3 Thomas Baumgart 2022-04-16 06:49:16 UTC
Git commit fcfe5421543ec5200ba4bd579a7afb0e96fce2ec by Thomas Baumgart.
Committed on 16/04/2022 at 06:45.
Pushed by tbaumgart into branch '5.1'.

Add alternative payee names from bank to payee field

The AqBanking library provides alternative names if used by the
institution. These names contain vital information about the payee/payer
which gets lost. This change appends these additional names to the
existing payee field. Payee name matching will take care of modifying it
into the form the user wants to see.
FIXED-IN: 5.1.3
(cherry picked from commit 078ae991486aedf7a05137ccc97d35787c4b0a76)

M  +13   -0    kmymoney/plugins/kbanking/kbanking.cpp

https://invent.kde.org/office/kmymoney/commit/fcfe5421543ec5200ba4bd579a7afb0e96fce2ec
Comment 4 Thomas Baumgart 2022-04-18 10:27:40 UTC
Git commit df81ef60cf02f72f688f1b16e6e3e270ef1d9ed5 by Thomas Baumgart.
Committed on 18/04/2022 at 10:27.
Pushed by tbaumgart into branch 'master'.

Make sure to have a version of AqBanking supporting the features

This amends commit 078ae991486ae to require AqBanking >= 6.2.0

M  +4    -1    kmymoney/plugins/kbanking/kbanking.cpp

https://invent.kde.org/office/kmymoney/commit/df81ef60cf02f72f688f1b16e6e3e270ef1d9ed5
Comment 5 Thomas Baumgart 2022-04-18 10:28:58 UTC
Git commit 416a91c2a431cbdfb7f0eb08945b2bc98aed50a2 by Thomas Baumgart.
Committed on 18/04/2022 at 10:28.
Pushed by tbaumgart into branch '5.1'.

Make sure to have a version of AqBanking supporting the features

This amends commit 078ae991486ae to require AqBanking >= 6.2.0

(cherry picked from commit df81ef60cf02f72f688f1b16e6e3e270ef1d9ed5)

M  +4    -1    kmymoney/plugins/kbanking/kbanking.cpp

https://invent.kde.org/office/kmymoney/commit/416a91c2a431cbdfb7f0eb08945b2bc98aed50a2
Comment 6 Thomas Baumgart 2022-08-23 16:12:01 UTC
*** Bug 458196 has been marked as a duplicate of this bug. ***
Comment 7 Dennis H. 2022-08-23 18:43:02 UTC
As my Bug was marked as duplicate of this one, i will go on here.

Unfortunately this bug doesn't seem to be fixed as I compiled version 5.1.3 where the patches above are already integrated. 
I encounter the same Issue as described above or in bug #458196. The alternative payee is also not mentioned inside the notice-block so it cannot be extracted from there. Any Ideas?

AqBanking: 6.5.0
gwenhywfar: 5.9.0
Kmymoney: 5.1.3
Comment 8 Thomas Baumgart 2022-08-24 04:33:43 UTC
This is strange as it works for me and the original poster but not for you. Turn on the support option "Log imported statements" which will create files called kmm-statement-<date time>.txt in the chosen log path. Within these files, one can see what KBanking (the AqBanking glue code) returns to KMyMoney. Proof (from my personal data - anonymized to some extent):

<TRANSACTION memo="garantierte Debitkartenzahlung&#xa;EREF: 60961024000825290622103151&#xa;MREF: 200275&#xa;CRED: DE53ZZZ00000495073&#xa;ABWA: STEFAN//*****/**" entrydate="2022-06-30" bankid="A000076-2022-06-30-8536310-1" dateposted="2022-06-30" payee="STEFAN/STEFAN//*****/**" amount="-1/1" number="" reconcile="0" action="none"/>

The attribute payee contains the name (which would be that unique name of your bank but in my case also the original shop) separated by a slash following the part that is found in the ABWA+ part of the transaction.

Now we have to figure out, why this is not working for you.
Comment 9 Dennis H. 2022-08-31 20:24:00 UTC
Created attachment 151742 [details]
kmm import log
Comment 10 Dennis H. 2022-08-31 20:28:00 UTC
Comment on attachment 151742 [details]
kmm import log

I'm sorry, for the delay as I was far away from my computer.

Attached you'll find the requested log-file. I reduced the amount of entries and of course masked out some private data.  

I was in contact with some friends having the same issue. What they all have in common: we're using the same bank (DKB).
Comment 11 Thomas Baumgart 2022-09-04 07:25:22 UTC
Thanks for the logs. They tell me, that the additional name details are made part of the payee field but are not contained in the memo. Did you turn on the respective option? You can find it at "Edit account/Online settings/Memo" when e.g. viewing the ledger of DKB. Does that make a difference?
Comment 12 Dennis H. 2022-09-07 06:06:25 UTC
Created attachment 151880 [details]
Online-Settings - Memo for Kmymoney 5.1.3

Unfortunately, I can't find that option. There is just an option to remove line breaks.
Comment 13 Dennis H. 2022-09-07 06:31:37 UTC
I just forgot to mention: the line-break option does not have an effect.
Comment 14 Thomas Baumgart 2022-09-07 06:34:44 UTC
Apparently, the relevant commit (https://invent.kde.org/office/kmymoney/-/commit/7de5dac2fb312de) was not backported to the 5.1 branch.
Comment 15 Dennis H. 2022-09-07 07:26:13 UTC
I will try to recompile a new version including that patch tonight. At first glance it doesn't look too complicated, but we will see. 

I discovered something weird: I've got two examples with a similar payee-structure inside the log file, but with different results in Kmymoney. In the first example the whole payee-line is used meanwhile the second one just uses part of it. 
I also tried to en-/disable the linebreak option, but it turns out this option cannot be configured as every time i go back to the settings it's disabled. 

Displayed Payee: FRESSNAPF AUGSBURG 1258/Fressnapf Augsburg//Augsburg/DE
Log:
<TRANSACTION dateposted="2022-09-05" memo="2022-09-03T14.26Debitk.1 2022-12&#xa;WELADEDDXXX/DE86****" number="" reconcile="0" action="none" payee="FRESSNAPF AUGSBURG 1258/Fressnapf Augsburg//Augsburg/DE" amount="***/**" bankid="****"/>

Displayed Payee: DEUTSCHE KREDITBANK AG
Log:
<TRANSACTION dateposted="2022-09-05" memo="2022-09-03T05.17Debitk.16 2099-12 Zahl.System VISA Debit&#xa;BYLADEM1001/DE96****" number="" reconcile="0" action="none" payee="DEUTSCHE KREDITBANK AG/BURGER KING 12406 SOT/AUGSBURG//DE" amount="****/**" bankid="****"/>
Comment 16 Thomas Baumgart 2022-09-07 10:44:27 UTC
That is a user question and does not really belong to the bug-tracker. I will respond separately.
Comment 17 Dennis H. 2022-09-07 22:14:07 UTC
Ok, as promised I recompiled Kmymoney with the patch mentioned above. 

Now the real Payee is integrated into the memo field.  So it's one step forward. 
After that I tried to extract the payee out of the memo using the corresponding function. Unfortunately this does not seem to have any effect.