Bug 444414

Summary: Transaction notes are not imported from paypal account
Product: [Applications] kmymoney Reporter: Ralf Habacker <ralf.habacker>
Component: onlinebankingAssignee: KMyMoney Devel Mailing List <kmymoney-devel>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: 5.1.2   
Target Milestone: ---   
Platform: Other   
OS: All   
Latest Commit: Version Fixed In: 5.1.3
Sentry Crash Report:
Attachments: Patch from 4.8 branch to fetch transaction note from a paypal account
Patch from 4.8 branch to update memos on present transactions

Description Ralf Habacker 2021-10-26 07:43:05 UTC
SUMMARY
Sending or receiving money with Paypal allows you to enter a note describing the transaction. This note is not currently imported into kmymoney

STEPS TO REPRODUCE
1. download the portable kmymoney snapshot from https://kmymoney.org/snapshots.php.
2. unzip the archive, launch kmymoney, configure a Paypal account (see https://aquamaniac.de/rdm/projects/aqbanking/wiki/Paypal_einrichten or use the settings menu in kmymoney) and assign it to a kmymoney account.
3. make sure that there are transactions with notes in the Paypal account
4. update the assigned account

OBSERVED RESULT
The imported transactions do not contain the entered notes

EXPECTED RESULT
The imported transactions should contain the entered notes

SOFTWARE/OS VERSIONS
Windows: 10
KDE Frameworks Version: 5.65
Qt Version: 5.11
Comment 1 Ralf Habacker 2021-10-26 08:00:13 UTC
Current versions of aqbanking do not provide the required attribute, therefore bugreport https://www.aquamaniac.de/rdm/issues/246 was submitted.
Comment 2 Ralf Habacker 2022-01-10 14:14:33 UTC
aqbanking 6.3.1 got support to fetch transactions notes from a paypal account.
Comment 3 Ralf Habacker 2022-01-10 14:16:10 UTC
Created attachment 145297 [details]
Patch from 4.8 branch  to fetch transaction note from a paypal account

P
Comment 4 Ralf Habacker 2022-01-10 14:17:11 UTC
Created attachment 145298 [details]
Patch from 4.8 branch to update memos on present transactions
Comment 5 Thomas Baumgart 2022-01-11 17:09:56 UTC
I don't understand the patch "to update memos on present transactions". If a transaction is a duplicate, it is already imported once. How could it change when imported a second time? That can't be. If this is meant only for paypal transactions imported with a prior version of AqBanking, I vote against it, because it might also affect other importers. If you want that, remove the transaction in the ledger and re-import.
Comment 6 Ralf Habacker 2022-01-12 08:15:09 UTC
> If an operation is a duplicate, it has already been imported once. How can it change if it is imported a second time? 

Before aqbanking 6.3.1, (paypal) transactions were imported without memo, although there might be a memo, i.e. Aqbanking now provides more data than before.

Since the duplicate check does not include the memo field, this change is not detected and therefore this commit checks for the detected duplicates if the memo field of the present transaction is empty and imports the memo field only in this case. This is effectively a one-time attribute update of the memo field.

> If this is only for paypal transactions imported with a previous version of AqBanking, I vote against it because it could affect other importers as well.

This functionality can in principle be extended to all aqbanking sources, but requires that the aqbanking backend in question populates the memo field. If the memo field is not filled by aqbanking, nothing happens.

> If you want to do this, remove the transaction in the general ledger and import it again.

That's what I did at first, but found out that if you have a large number of transactions, this is very time consuming as you have to manually find and delete all the transactions that don't have a memo in order to re-import those.

To give the user control over this process, an option could be added in the online settings of an account to explicitly enable this feature.
Comment 7 Thomas Baumgart 2022-01-12 11:58:29 UTC
Git commit 74ba29e8c0a31a29bb48236f3b01b38968c58485 by Thomas Baumgart.
Committed on 11/01/2022 at 17:14.
Pushed by tbaumgart into branch 'master'.

Include user supplied paypal note in memo field

M  +15   -3    kmymoney/plugins/kbanking/kbanking.cpp

https://invent.kde.org/office/kmymoney/commit/74ba29e8c0a31a29bb48236f3b01b38968c58485
Comment 8 Ralf Habacker 2022-01-13 11:42:58 UTC
In an ideal world, kmymoney could, at the next launch after an update that brings this feature, tell the user that there is now the possibility to apply memos to Paypal accounts and ask the user if this should be done once for all existing transactions. This would require skipping the transactions where the memo text is already included.
Comment 9 Ralf Habacker 2022-06-02 15:08:53 UTC
Git commit 5b5aa00cdb4e4376056b2dddf7c4db932b0e091d by Ralf Habacker, on behalf of Thomas Baumgart.
Committed on 02/06/2022 at 15:04.
Pushed by habacker into branch '5.1'.

Include user supplied paypal note in memo field
FIXED-IN:5.1.3
(cherry picked from commit 74ba29e8c0a31a29bb48236f3b01b38968c58485)

M  +15   -3    kmymoney/plugins/kbanking/kbanking.cpp

https://invent.kde.org/office/kmymoney/commit/5b5aa00cdb4e4376056b2dddf7c4db932b0e091d