GNOME Bugzilla – Bug 771451
Chase Visa QFX import null description and memo
Last modified: 2018-06-29 23:51:07 UTC
This was working until Chase updated their website earlier. Now when I download account activity as a QFX and import it the descriptions and memo are null
Created attachment 335573 [details] chase transaction import null description and memo
Please attach the actual QFX file. You may want to edit it first to remove any private information (Account numbers would be the most likely).
I have the same problem. Here is a sample transaction before and after Chase change: Before: <STMTTRN> <TRNTYPE>DEBIT <DTPOSTED>20160715120000[0:GMT] <TRNAMT>-1.50 <FITID>... <NAME>SOME STORE A </STMTTRN> After: <STMTTRN> <TRNTYPE>DEBIT <DTPOSTED>20160808120000[0:GMT] <TRNAMT>-7.10 <FITID>... <NAME>SOME STORE B <CATEGORY> <MEMO>null </STMTTRN> There seems to be two tags added: <CATEGORY> which is empty, and <MEMO>null
Created attachment 335874 [details] sample QFX file with modified account number Thanks to previous comment. I found if you run "grep -v CATEGORY" on the Chase ofx files you get the descriptions back.
*** Bug 771746 has been marked as a duplicate of this bug. ***
Bug 771745 has attached a full import file with the extra fields for testing.
Err, bug 771746 is what has an import file. I've tested and determined two things: First, the data passed to GnuCash has already had the Name element contents deleted and second that simply removing just the <CATEGORY> element is sufficient. One still gets "null" in the memo but that's comparatively harmless. Moving the <CATEGORY> element to after the <MEMO> element causes the <MEMO> value to be lost rather than the <NAME> element. I see two feasible hacks: Alter ofx160.dtd so that CATEGORY is legal or add a special case to libofx's sanitize_proprietary_elements() so that it's removed. While we could pretty easily patch the Windows and Mac builds of libofx to do either one it's not a solution for Linux users.
Created attachment 336718 [details] [review] Patch to the OFX-160 DTD to allow a CATEGORY element. Patching the dtd works without needing to recompile so it's a feasible work-around for everyone. Find share/libofx/dtd/ofx160.dtd. Most Linux users will find it in /usr, Mac users will find it in Gnucash.app/Contents/Resources/share (Macports: /opt/usr, Fink: ~/sw, Homebrew: /usr/local), Windows users in C:\Program Files (x86)\gnucash\. Change to that directory. Download the attached patch and apply it with patch -p0 < ofx-dtd-chase.patch Windows users who don't have Video Studio or Cygwin/MSys installed will need to edit the file directly. Use Notepad. Find the lines with a '-' in the left margin of the patch and replace them with the corresponding lines with a '+' in the left margin.
I can confirm that the patch in comment 8 is working. It seems Chase also fixed their bug and no longer has CATEGORY element any more (last checked today.) Their MEMO category also now has valid entry instead of 'null'. You can also just re-download the qfx file and it should have fixed format by now. Maybe this should be marked as not a bug of gnucash? I verified OFX 1.6 version spec and it does not mention CATEGORY element, so this would only be just a workaround to Chase bug (no pun intended.)
Not seeing the correction from Chase on my two credit cards (yet).
My bad. You are right that Chase still has the bug with credit cards. So the workaround is still required.
I agree, the patch in comment 8 works. I had to apply it manually, with GnuCash 2.4.7, because it failed to apply when I tried 'patch < ofx-dtd-chase.patch'. Also, with -p0, the absolute path didn't match at all. The memo is "null", but that's what Chase is providing in its download.
Created attachment 338724 [details] [review] Patch to LibOFX DTD to allow bogus CATEGORY element. I've edited the patch so that it should apply correctly with `patch -p1 < libofx-dtd-chase.patch`. You'll need to navigate to the installation prefix first: Microsoft Windows: C:\Program Files (x86)\gnucash Macs with GnuCash.app: Gnucash.app/Contents/Resources Macs with MacPorts: /opt/local Linux when installed with a package manager: /usr
I have submitted a fix upstream to libofx for this particular case of an invalid CATEGORY tag. The fix got applied there today. Hopefully a new libofx release will follow soon...
Libofx has released version 0.9.13 incorporating this fix (and a few others). Time to close this bug as NotGnuCash (being NotGnome in this tracker).
Comment on attachment 338724 [details] [review] Patch to LibOFX DTD to allow bogus CATEGORY element. Mark as committed though this commit happened in libfox rather than gnucash.
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=771451. Please update any external references or bookmarks.