<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>I have a fix for this that I've been using for my Chase bank accounts since shortly after they made their change (but I do not have a credit card account at Chase).  It's a pretty simple change to libofx to support <CLIENTUID>, and I added an edit box on the "OFX Details" tab of the "Online Settings" tab of the "Edit Account" dialog so KMM could support it - I made a new account ".value()" for it. (Aqbanking also provides an edit box for this purpose.)<BR> <BR>The <CLIENTUID> itself is still a bit of a mystery to me.  For my Chase accounts, I used the 32 character hex string that Quicken uses, so KMM and Quicken are using the same string. That seems to work.  I think if you don't "know" what to use for <CLIENTUID>, you can just come up with a random string of up to 36 characters. But I'm not 100% sure whether the client (KMM) or the bank (Chase) comes up with the string. I thought about adding a button to KMM to generate a hash of the file name and account name, which is, I think, what Quicken does. But from what I've read, your bank / broker probably limits the number of different <CLIENTUID> you can have, so you don't want to be changing it a lot. Though I've read that people can call the bank and ask for more and / or reset the "counter", if you can manage to talk to the knowledgeable person at the bank.<BR> <BR>The Chase change came up while I was making a bunch of other changes to libofx to support options (puts & calls), cash balance in investment accounts, and investment positions (how many shares your broker thinks you have) (for which I made a new callback from libofx). So this simple fix is buried in a larger change. I'm fairly comfortable that those changes are working, but I'd still consider them a work-in-progress.<BR> <BR>Oh, and I changed the daylight saving flag in libofx.  It stopped working when my area went off DST (my credit card statement stared looking like it was for the previous day).  My change now makes it work while we are off DST, but it is untested for when we go back on DST.  The change lets mktime() determine whether DST is in effect.<BR> <BR>I could post the whole libofx change if people are interested.  Or I could work on splitting out just the <CLIENTUID> change. I don't think the larger change would break anything in KMM, but I haven't tested that either. And I have not worked on the "ofc" parser, I've only been changing the "ofx" parser, since that's the one I use and can test.<br> <BR><div><hr id="stopSpelling">To: thb@net-bembel.de; kmymoney-devel@kde.org<br>From: wolfemi1@gmail.com<br>Date: Thu, 10 Dec 2015 08:43:26 -0600<br>Subject: Re: [Kmymoney-devel] libOFX question (relates to recent OFX failures with Chase credit card downloads)<br><br>
  
    
  
  
    <div class="ecxmoz-cite-prefix">I just saw a request for the OFX data
      that Chase sends; here is a copy of the response I got from Chase
      after trying (and failing) to download OFX data:<br>
      <br>
      response:<br>
      OFXHEADER:100<br>
      DATA:OFXSGML<br>
      VERSION:102<br>
      SECURITY:NONE<br>
      ENCODING:USASCII<br>
      CHARSET:1252<br>
      COMPRESSION:NONE<br>
      OLDFILEUID:NONE<br>
      NEWFILEUID:20151210083844.000<br>
      <br>
      <OFX><SIGNONMSGSRSV1><SONRS><STATUS><CODE>15510<SEVERITY>ERROR<MESSAGE>Please
      verify your identity within the next 7 days. Using your desktop
      computer, go to your bankӳ website and visit the Secure Message
      Center for
instructions.</STATUS><DTSERVER>20151210093848.702[-5:EST]<LANGUAGE>ENG<FI><ORG>B1<FID>10898</FI></SONRS></SIGNONMSGSRSV1><CREDITCARDMSGSRSV1><CCSTMTTRNRS><TRNUID>20151210083844.000<STATUS><CODE>15500<SEVERITY>ERROR</STATUS><CLTCOOKIE>1</CCSTMTTRNRS></CREDITCARDMSGSRSV1></OFX><br>
      Completed<br>
      <br>
      Grabbed from the 'ofxlog.txt' file.<br>
      <br>
      -Mike<br>
      <br>
      <br>
      On 12/10/2015 8:20 AM, Michael Wolfe wrote:<br>
    </div>
    <blockquote cite="mid:56698A38.5020503@gmail.com">
      
      <div class="ecxmoz-cite-prefix">As a side note, I am also having this
        problem; I wasn't aware that there was something Chase was
        expecting KMyMoney to send back.<br>
        <br>
        If anyone needs testing for a fix with Chase Bank, I'm available
        to do so if there's a testing version available for Windows (or
        alternatively some handholding with a code patch so I can build
        it myself!).<br>
        <br>
        -Mike Wolfe<br>
        <a class="ecxmoz-txt-link-abbreviated" href="mailto:wolfemi1@gmail.com">wolfemi1@gmail.com</a><br>
        <br>
        On 12/10/2015 4:53 AM, Thomas Baumgart wrote:<br>
      </div>
      <blockquote cite="mid:1921531.c3vgLc7Yct@thb-nb.site">
        <pre>Hi,

On Wednesday 09 December 2015 19:38:08 Jack wrote:

</pre>
        <blockquote>
          <pre>Some of you may have seen some other posts I've made about this, but I
think I've tracked down the problem.
</pre>
        </blockquote>
        <pre>Thanks for the information. That helped a lot to identify what's going on.

</pre>
        <blockquote>
          <pre>Background: last month Chase credit cards made a "security enhancement"
change that has made all OFX downloads since 11/17 fail.  The error
message says to got to the Chase secure message center for info on how
to verify your identity, but no such message ever appears.  The section
at
<a class="ecxmoz-txt-link-freetext" href="http://wiki.gnucash.org/wiki/Setting_up_OFXDirectConnect_in_GnuCash_2#Chase_" target="_blank">http://wiki.gnucash.org/wiki/Setting_up_OFXDirectConnect_in_GnuCash_2#Chase_</a>
.22username_or_password_are_incorrect.22 indicates the need for using a UID
(user id) within the OFX request. It looks like they associate that user
UID with the account, probably to limit access.  However, the first time
they see a UID on an OFX request, they should generate a PIN and send it to
your account at their Secure Message Center.  You then use that PIN on
another page the message links to.  I suppose since KMM isn't sending the
UID, they don't generate that message.

So - I don't see any place in KMM for a user UID.  In fact, looking
into the libOFX source, I see the UUID type defined, but no element
defined as that type which looks like a user id.  Can someone confirm
this is correct, and if so, does this need to be brought up on the
libOFX list before there is anything that KMM can do?  (Other forum
messages I've seen seem to indicate that aqbanking can handle this, so
I'll see if I can get this set up, but I hate to spin my wheels if
someone can provide a more definitive answer.
</pre>
        </blockquote>
        <pre>I took a look into the OFX spec (version 2.1.1) and found chapter 2.5.1.1.1 
"Client Unique ID <CLIENTUID>". In short, this is a uid generated by the 
client (KMyMoney). Here's the paragraph of the spec (© 2006 Intuit Inc., 
Microsoft Corp., CheckFree Corp. All rights reserved):

---8<---
OFX servers can require OFX clients to include a client ID in each signon 
request. This client ID should be unique to the installation of the client 
software, but the method that the ID is generated is left up to the client. 
The server can specify that this field is required using the <CLIENTUIDREQ> 
tag in the applicable <SIGNONINFO> section of the profile. Servers should 
expect that users may connect via OFX from multiple locations and may need to 
associate more than one <CLIENTUID> value with their <USERID>.
---8<---

Would be interesting, if you see the CLIENTUIDREQ in the SIGNONINFO message of 
the server. One can (at least could) enable logging for OFX traffic in some 
way. Don't know, if that is still available. Will have to check.


</pre>
        <br>
        <fieldset class="ecxmimeAttachmentHeader"></fieldset>
        <br>
        <pre>_______________________________________________
KMyMoney-devel mailing list
<a class="ecxmoz-txt-link-abbreviated" href="mailto:KMyMoney-devel@kde.org">KMyMoney-devel@kde.org</a>
<a class="ecxmoz-txt-link-freetext" href="https://mail.kde.org/mailman/listinfo/kmymoney-devel" target="_blank">https://mail.kde.org/mailman/listinfo/kmymoney-devel</a>
</pre>
      </blockquote>
      <br>
    </blockquote>
    <br>
  

<br>_______________________________________________
KMyMoney-devel mailing list
KMyMoney-devel@kde.org
https://mail.kde.org/mailman/listinfo/kmymoney-devel</div>                                          </div></body>
</html>