USAA Script to fix the broken download issue

Need to reconnect to USAA? I have written a (run one-time only) script to make USAA download to Moneydance work again. All it does it fix your connection profile. You simply run once, and then use standard Moneydance. It's not needed again.

This is now the IK recommended fix as they are working on 'medium and long-term' improvements to ofx connections

You must be on MD version 2019.4 (build 1904) or newer (if older, you must upgrade, else usaa will never work again).

Following these simple, but complete, PDF instructions will make USAA download to your Moneydance file.

My python script creates a new USAA profile in Moneydance to replace the broken USAA profile. It has been used since Feb 23 by more than 55+ users successfully 😃

This script will allow you to download USAA transactions again. It isn't rocket science, really. You don't have to wait for IK/MD to fix the problem, nor will it stop you from embracing the Moneydance fix if/when it happens. I just fix the connection profile.

NOTE: usaa have changed their download data (content, format). If you get some data duplication afterwards, this is NOTHING to do with the script, it's what usaa are now sending. You simply need to do a one-time cleanup, keep the new data, and that's it.

DISCLAIMER: I have no affiliation with Moneydance. It's entirely possible that this won't work for you. Pretty much the worst that can happen is that your bank logon / service profile won't work - but then it's not working anyway.. You can always just delete the profile and start again, if you wish.

PLEASE ALWAYS BACKUP YOUR DATA FIRST!

The first thing to do is read the walk through PDF guide: ofx_create_new_usaa_bank_custom_profile.pdf

The latest PDF guide (now version 8a) is always here:
[https://github.com/yogi1967/MoneydancePythonScripts/raw/master/sour...]

The latest zip file containing the script to fix USAA/Moneydance is at: [https://github.com/yogi1967/MoneydancePythonScripts/raw/master/usef...]

FYI - When you click these links, you may see a blank screen (depending on your browser) and the file(s) will auto download to your downloads folder

You need to unzip this file. The script is called: ofx_create_new_usaa_bank_custom_profile.py

Quick Details:

  • Make a backup first.
  • Read the instructions.
  • Once you run the script, Moneydance takes over with the new profile.

PS - If you get issues ensure a) you are connecting from a USA IP; and that any PiHole, Blockers etc are not getting in the way..

If you have problems, post - We love to solve problems.

CREDITS and thanks: @dtd and @hleofxquotes

I am not support, just a fellow user and creator of the very free and most-excellent Toolbox 🧰 extension for Moneydance.
The latest useful_scripts.zip package and Toolbox are on my site: [https://yogi1967.github.io/MoneydancePythonScripts/]

Showing page 10 out of 18. View the first page

  1. 271 Posted by dtd on 17 Mar, 2021 06:55 PM

    dtd's Avatar

    It might also be helpful to Stuart if you try to download that ccount as well as one that works - to be able to compare - again have help show console open and then send the results of both via email to stuart.

    I'm his tester - so I've learned what helps him solve problems, even Moneydance problems vs testing his scripts.

  2. 272 Posted by ik on 17 Mar, 2021 07:48 PM

    ik's Avatar

    Stuart & dtd:

    FYI: I exported/created new/imported. It all works. Maybe it was something in the file headers.

  3. 273 Posted by dtd on 17 Mar, 2021 07:51 PM

    dtd's Avatar

    i have had to recreate an account in moneydance occasionally. Glad it's working.

  4. 274 Posted by Stuart Beesley ... on 17 Mar, 2021 07:55 PM

    Stuart Beesley - JUST A FELLOW USER's Avatar

    @ik. I have no idea what you mean or what you did; perhaps you can explain further (for others). Anyway I will assume this issue resolved.

  5. 275 Posted by dwg on 18 Mar, 2021 03:55 AM

    dwg's Avatar

    I’m a fellow user.

    I’ve worked in both support as well in product groups in the industry let me provide a perspective of this solution from both sides.

    Firstly from the support/sustaining side.

    Clearly considerable effort has been put in to what is required to again make connective work after USAA had made changes. I envisage a great deal of research was required here, and to then determine the discrete elements that are required and again how to obtain these.

    The implementation of a script to set a profile with the needed data has been well done. This approach fits in well with the core software as that uses a connection profile for the link. So what has been done is in sync with how the software works. From a support perspective this gets a big tick in being a minimal but workable approach.

    I would not categorize what has been done as a hack, I see it as an extension to what is already in Moneydance.

    Tied to this is the instruction document about how to go about using the tool. Again this has been well done.

    So from a support/sustaining perspective this interim solution gets top marks. It delivers on all aspects.

    Sustaining would then pass the details of the problem and the solution that they have devised back to the product group, both as information on the problem itself as well as a potential long term solution.

    With a product group hat on I appreciate the solution that has been devised, I see it as allowing customers to continue to make best use of the product, as well as providing valuable information on what is needed as far as what the connection requires.

    From a product management perspective what has to be considered is if the interim solution is also suitable as a long term solution.

    Users having to approach their banks in some way to get online banking access as well as to have their accounts activated for such access is accepted. This is not something that could be facilitated in Moneydance, some banks will allow it to be done online on some way others will insist that it requires a support call, there is no consistency in approach.

    Any static information required can be made available as part of the information that Moneydance maintains.

    From a product management angle what concerns me is the user having to manually extract a client UID from a URL in the interim solution, it is acceptable as a temporary approach, but I would not think it is a viable long term approach as it requires too much process and manual involvement of the user, for what needs to be as simple a process as possible.

    With this it means that TIK needs to either be able to work with the bank on how to capture that piece of data or to devise a way within Moneydance of being able to initiate a session and itself capture that information.

    From what I have read it seems this bank has not been co-operative, so that would appear to rule out the first approach.

    The second would mean, in all probability, that the embedded browser within Moneydance would need to be able to do this. The problem I see at this stage is that the embedded browser is very much in the relatively early days of its development, even though it has been included for quite some time in the software but with minimal work done on it.

    Thus I view the interim solution as an excellent short term solution but I do not see it as a viable long term approach. Unfortunately at this stage I do not see that Moneydance has the internal capability to provide a permanent solution at this time, it will require further software development.

  6. 276 Posted by dtd on 18 Mar, 2021 04:08 AM

    dtd's Avatar

    @dwg - Thank you. As an "involved party", I could not post what you just posted, but you have described my thoughts.

    If you read between the posts, imo IK/MD is trying to:

    "With this it means that TIK needs to either be able to work with the bank on how to capture that piece of data or to devise a way within Moneydance of being able to initiate a session and itself capture that information."

    do both of the above, but with an emphasis on the former - i.e. joining FDX, trying to get USAA to talk to them (not successful, whereas Schwab was successful) .

    So, yes, absolutely, an interim solution, but one that does work, and works within the Moneydance framework, and needs doing only once.

    Thanks for your insight.

  7. 277 Posted by dwg on 18 Mar, 2021 05:04 AM

    dwg's Avatar

    @dtd

    Yes I believe TIK is trying to do this from the posts I have read but they have been letting themselves down badly with the extremely poor communication.

    Poor communication is what I see as one of TIKs biggest problems, the idea that people should be confident that it is being worked on just does not cut it. The line I have seen that we will post if there is something significant also does not cut it. Routine posts should be the normal, they do not have to be detailed.

    I believe the lack of communications has, in part, fueled some of the responses I have seen on this problem and these to a degree lead to my post.

  8. 278 Posted by dtd on 18 Mar, 2021 05:08 AM

    dtd's Avatar

    @dwg - Agree 100%

    Lack of communication is the number one need for IK/MD to fix. You have to read every single post to even get a glimmer of what is going on (USAA fix as an example).

    IK/MD needs to improve their communication with their clients. And as you say, it is one of the primary reasons users are wondering if MD is even "there".

  9. 279 Posted by Ted Ashford on 18 Mar, 2021 10:08 AM

    Ted Ashford's Avatar

    Sent from my iPad

  10. 280 Posted by jenkins007 on 18 Mar, 2021 10:18 AM

    jenkins007's Avatar

    When I talked with USAA’s CEO office they stated they would vet Moneydance to be a supported app for automatic downloads. Hopefully that process has started.

  11. 281 Posted by jeremy on 18 Mar, 2021 07:24 PM

    jeremy's Avatar

    I installed this script today and it downloaded my accounts as it should. However, the PayPal Importer extension is no longer functioning? Has anyone else had this problem?

    I have uninstalled the Importer and reinstalled. I have uninstalled, restarted, reinstalled, restarted. Nothing has worked to resurrect it. Also, on another topic, why are there 50+ PayPal, Inc. entries in the list of online connections? Any way to get rid of that?

  12. 282 Posted by Stuart Beesley ... on 18 Mar, 2021 08:16 PM

    Stuart Beesley - JUST A FELLOW USER's Avatar

    @jeremy 😃 +1 (=37). I see no reason why your PayPal extension would be affected. Can you post your console log?

  13. 283 Posted by jeremy on 18 Mar, 2021 08:29 PM

    jeremy's Avatar

    @Stuart

    I most recently tried installing from a file (downloaded from GitHub) and this is what popped up in the Console:

    `Exception in thread "JavaFX Application Thread" java.lang.IllegalArgumentException: WebView@710a30ae[styleClass=root web-view]is already set as root of another scene
    at javafx.graphics/javafx.scene.Scene$8.invalidated(Unknown Source)
    at javafx.base/javafx.beans.property.ObjectPropertyBase.markInvalid(Unknown Source)
    at javafx.base/javafx.beans.property.ObjectPropertyBase.set(Unknown Source)
    at javafx.graphics/javafx.scene.Scene.setRoot(Unknown Source)
    at javafx.graphics/javafx.scene.Scene.(Unknown Source)
    at javafx.graphics/javafx.scene.Scene.(Unknown Source)
    at com.moneydance.apps.md.view.gui.bot.RobotBrowser.addToPanel(RobotBrowser.java:289)
    at com.moneydance.apps.md.view.gui.bot.RobotBrowser.lambda$addToPanel$9(RobotBrowser.java:292)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(Unknown Source)
    at java.base/java.security.AccessController.doPrivileged(Unknown Source)
    at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(Unknown Source)
    at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(Unknown Source)`
    

    And when installing via the Extension installer, here is what comes up:

    opening connection with no proxy to https://infinitekind.com/app/md/extensions/paypalimporter.mxt
    connecting to: https://infinitekind.com/app/md/extensions/paypalimporter.mxt with method: GET proxy: null
    CookieHandler request for https://infinitekind.com/app/md/extensions/paypalimporter.mxt
    Cookies retrieved: {Cookie=[]}
    Sending https request:
    GET /app/md/extensions/paypalimporter.mxt HTTP/1.1
    Content-Length: 0
    Host: infinitekind.com
    DNT: 1
    Accept-Encoding: gzip, inflate
    Connection: close
    
    ---end headers
    
    GET https://infinitekind.com/app/md/extensions/paypalimporter.mxt
    <<HTTP/1.1 200 OK
    <<date: Thu, 18 Mar 2021 19:46:01 GMT
    <<server: Apache/2.4.18 (Ubuntu)
    <<vary: Accept-Encoding
    <<last-modified: Wed, 30 May 2018 07:57:52 GMT
    <<etag: "6fd21-56d67b5296000"
    <<accept-ranges: bytes
    <<content-length: 458017
    <<connection: close
    
    trying to verify external module: paypalimporter
    trying to verify external module: paypalimporter
    initialized extension paypalimporter in 0.004 seconds
    opening connection with no proxy to https://infinitekind.com/app/md/extensions.dct
    connecting to: https://infinitekind.com/app/md/extensions.dct with method: GET proxy: null
    CookieHandler request for https://infinitekind.com/app/md/extensions.dct
    Cookies retrieved: {Cookie=[]}
    Sending https request:
    GET /app/md/extensions.dct HTTP/1.1
    Content-Length: 0
    Host: infinitekind.com
    DNT: 1
    Accept-Encoding: gzip, inflate
    Connection: close
    
    ---end headers
    
    GET https://infinitekind.com/app/md/extensions.dct
    <<HTTP/1.1 200 OK
    <<date: Thu, 18 Mar 2021 19:46:04 GMT
    <<server: Apache/2.4.18 (Ubuntu)
    <<vary: Accept-Encoding
    <<last-modified: Sat, 05 Dec 2020 21:45:12 GMT
    <<etag: "4685-5b5be81f0aa00"
    <<accept-ranges: bytes
    <<content-length: 18053
    <<connection: close
    
  14. 284 Posted by Stuart Beesley ... on 18 Mar, 2021 08:53 PM

    Stuart Beesley - JUST A FELLOW USER's Avatar

    .

  15. 285 Posted by jeremy on 18 Mar, 2021 09:08 PM

    jeremy's Avatar

    After installing the PP Importer and reloading, here is the Console Log (private info redacted):

    Starting Moneydance 2021.1 (3051) at Thu Mar 18 16:02:36 CDT 2021
    Settings Folder: /Users/######/Library/Containers/com.infinitekind.MoneydanceOSX/Data/Library/Application Support/Moneydance
    OS: Mac OS X 10.16 x86_64
    Java: 15.0.1 (AdoptOpenJDK)
    Is in sandbox: true; restricted file access: false
    Library path: /Applications/Moneydance.app/Contents/MacOS:/Applications/Moneydance.app/Contents/PlugIns/vm.jdk/Contents/Home/lib
    creatingURLStreamHandler for protocol 'moneydanceextloader'
    initialized extension balpred in 0.009 seconds
    initialized extension moneyPie in 0.003 seconds
    creatingURLStreamHandler for protocol 'http'
    initialized extension moneyforesight in 0.953 seconds
    initialized extension paypalimporter in 0.003 seconds
    multires images not supported: java.lang.ClassNotFoundException: sun/awt/image/MultiResolutionImage.class
    initialized extension updater in 0.006 seconds
    Initializing fonts:
      default: [[SF Pro Display, SF Display, Helvetica Neue, Helvetica, Lucida Grande, Dialog]]
      printing: [[Helvetica, SF Pro Display, SF Display, Helvetica Neue, Helvetica, Lucida Grande, Dialog]]
      monospaced: [[Gill Sans, Menlo, Monaco, Monospaced]]
      coding: [[Hack, Monospaced]]
    fonts resolved:
     default: SF Pro Display:13.0:style0
     mono: Gill Sans:13.0:style0
     coding: Hack:13.0:style0
     print: Helvetica:12.0:style0
     header: SF Pro Display:15.0:style0
     register: SF Pro Display:12.0:style0
     reportTitle: SF Pro Display:32.0:style0
     calendarTitle: SF Pro Display:12.0:style0
     reportHeader: SF Pro Display:11.0:style0
     detailTitle: SF Pro Display:15.0:style0
    detected system appearance: org.violetlib.vappearances.VAppearanceImpl@3bd418e4
    Setting look and feel class to org.violetlib.aqua.AquaLookAndFeel
    Unable to map image: java.lang.IllegalArgumentException: argument type mismatch
    initialized extension yahooqt in 0.975 seconds
    opening last file: #####################
    loading dataset: /Users/********/Library/Containers/com.infinitekind.MoneydanceOSX/Data/Documents/36be6508-4f75-409f-82d1-1df5192494ae.moneydance
    Java version: 1500001
    creatingURLStreamHandler for protocol 'https'
    updater: read 33504 bytes of update info
    Retrieving signature
    updater: using public key: updater_pub_0
    Sweet!  We've gotten a signed description of the update info
    Version info retrieved; we are up to date!
    loading with 128 bit encryption key
    reading trunk data tiksync/trunk
    trunk data loaded (1.298 seconds), checking for incremental updates
    loading un-synced txn files...
    loading synced txn files...
    replacing root: null () with new root: ***** ***** (##############)
    starting syncing via encryptedFS(GenericFSSyncFolder:shared_folder:base=###########:subpath=##########:)
    item count: 103
    VAQUA: system appearance did change
    detected system appearance: org.violetlib.vappearances.VAppearanceImpl@3bd418e4
    VAQUA: applying updated theme: mac_dark_mode
    Setting look and feel class to org.violetlib.aqua.AquaLookAndFeel
    

    When clicking the Download PayPal Transactions... menu item, literally nothing happens on screen or in the console.

  16. 286 Posted by Stuart Beesley ... on 18 Mar, 2021 09:23 PM

    Stuart Beesley - JUST A FELLOW USER's Avatar

    .

  17. 287 Posted by jeremy on 18 Mar, 2021 09:26 PM

    jeremy's Avatar

    @Stuart, is there a repository where I can download it? I do the typical n00b thing and do not save the previous version dmg files :/

  18. 288 Posted by Stuart Beesley ... on 18 Mar, 2021 09:45 PM

    Stuart Beesley - JUST A FELLOW USER's Avatar

    .

  19. 289 Posted by jeremy on 18 Mar, 2021 09:55 PM

    jeremy's Avatar

    @Stuart Thank you sir! That did it. I will update my issue on the PP Importer GitHub page.

  20. 290 Posted by dtd on 18 Mar, 2021 10:10 PM

    dtd's Avatar

    @Jeremy
    just so others don't get confused, your statement:
    I installed this script today and it downloaded my accounts as it should.

    would be more properly stated:
    I ran the script today, and the new custom profile worked.
    Moneydance was able to download my USAA accounts.

    The difference seems subtle, but it is significant to "what happens where" - the script fixes the profile, it does not download anything.

    As for the paypal issue - now that you and Stuart are talking - it would be nice if you'd redact (i.e. edit it down to about nothing) the messages (you too, Stuart! ) so that again, people don't think paypal and this script are connected...

  21. 291 Posted by Stuart Beesley ... on 18 Mar, 2021 10:24 PM

    Stuart Beesley - JUST A FELLOW USER's Avatar

    @Jeremy. I just tested the Paypal importer. it loads under 3036 and not under 3051. This is nothing to do with the USAA Script. It's related to the 3051 update... S

  22. 292 Posted by Stuart Beesley ... on 18 Mar, 2021 10:26 PM

    Stuart Beesley - JUST A FELLOW USER's Avatar

    All, the USAA Scripts are working well with 37 people reconnected so far....

  23. 293 Posted by Stuart Beesley ... on 19 Mar, 2021 05:31 AM

    Stuart Beesley - JUST A FELLOW USER's Avatar

    @Monica Gere 😃 +1 (=38)

  24. 294 Posted by jeremy on 19 Mar, 2021 03:04 PM

    jeremy's Avatar

    @Stuart

    Is there any way to suppress the "0" that populates the Check# field for pretty much every transaction? i.e. if(check#. == null or check# == 0) then set check# = ""

    Thanks,
    Jeremy

  25. 295 Posted by Stuart Beesley ... on 19 Mar, 2021 03:08 PM

    Stuart Beesley - JUST A FELLOW USER's Avatar

    Sorry. No idea. This is nothing to do with the script. This is the new download format and the std moneydance code.

  26. 296 Posted by dtd on 19 Mar, 2021 05:29 PM

    dtd's Avatar

    @Jeremy - there seems to be some confusion about what this script does. It does one thing - create a custom profile for USAA in Moneydance to replace the broken one.

    This "reopens the gates" that USAA closed on Jan 26.

    Anything else is Moneydance using the new custom profile. Even step 5 and step 6 in the documentation I wrote are all about Moneydance, the script is finished at the end of step 4.

    So, a lot of words to say - having zeroes in the check number field has nothing to do with the script at all. It's what USAA sends post Jan 26.

  27. 297 Posted by -Kevin N. on 19 Mar, 2021 06:18 PM

    -Kevin N.'s Avatar

    @Jeremy,

    Would Batch Change > Check # help?

    -Kevin N. (not a member of MD support)

  28. 298 Posted by Guy Burns on 19 Mar, 2021 08:22 PM

    Guy Burns's Avatar

    Is there ANY official news from IK on when they might be able to fix this problem? Is that even possible if the new standard is Quicken proprietary?

  29. 299 Posted by Stuart Beesley ... on 19 Mar, 2021 08:45 PM

    Stuart Beesley - JUST A FELLOW USER's Avatar

    @Guy Burns. Which problem are you referring to?

  30. 300 Posted by Guy Burns on 19 Mar, 2021 08:54 PM

    Guy Burns's Avatar

    @Stuart Beesley, I'm referring to the original root problem that makes this all of this necessary. Do we know if it's even possible for IK to "fix" given the proprietary nature of the new financial exchange protocol? If it's possible, has there been any comms from IK on how soon it *might* be resolved?

Reply to this discussion

Internal reply

Formatting help / Preview (switch to plain text) No formatting (switch to Markdown)

Attaching KB article:

»

Attached Files

You can attach files up to 10MB

If you don't have an account yet, we need to confirm you're human and not a machine trying to post spam.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac