USAA Script to fix the broken download issue

Stuart Beesley (Mr Toolbox)'s Avatar

Stuart Beesley (Mr Toolbox)

24 Feb, 2021 06:40 AM

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).

[@@ UPDATE Oct 2021: This script is now built into the Toolbox extension (MD2021 onwards) under the Online Banking menu and it also works with MD2022 too. Further, we have worked with Moneydance so that once you have ‘primed’ MD with your USAA specific ClientUID number(s), the standard Moneydance Online Setup will work. Further again, there is now an even simpler way to get the connection working (which we haven’t documented: In Toolbox run the USAA ‘Prime’ option and then just use standard MD Online Setup. Lastly, if you need to get multiple UserIDs working, then Toolbox / Online Banking / OFX Authentication / Edit Multiple UserIds. NOTE: if you still just want the script, it’s still available, read on…. @@]

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 100+ 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.


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:

The latest zip file containing the script to fix USAA/Moneydance is at: []

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:

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 package and Toolbox are on my site: []

Showing page 4 out of 22. View the first page

  1. 91 Posted by hbr245b on 05 Mar, 2021 02:30 PM

    hbr245b's Avatar

    I think it depends on nameserver. My home PC is using Google DNS and it fails; AWS instances using Amazon DNS, the name still resolves.

  2. 92 Posted by layer on 05 Mar, 2021 03:41 PM

    layer's Avatar

    @85 Yes, I read the PDF. I definitely had a working USAA connection, having downloaded for many years until Jan. However, I will try the create option.

  3. 93 Posted by Stuart Beesley ... on 05 Mar, 2021 03:48 PM

    Stuart Beesley (Mr Toolbox)'s Avatar

    @layer - good luck. Let me know?

  4. 94 Posted by hbr245b on 05 Mar, 2021 03:51 PM

    hbr245b's Avatar

    DNS resolution of the server now working via Google DNS

  5. 95 Posted by dtd on 05 Mar, 2021 05:30 PM

    dtd's Avatar

    Downloads from USAA to moneydance working fine for me. Sounds like a temporary glitch....

    or as mentioned, a specific pathway issue.

  6. 96 Posted by TJ on 06 Mar, 2021 03:41 AM

    TJ's Avatar

    Sorry was not subscribed to updates. I am also on google dns. Currently the error has changed now.

    Bank Name: USAA Federal Savings Bank

    The error code reported by the server was: 2000

    Invalid FI

  7. 97 Posted by TJ on 06 Mar, 2021 03:58 AM

    TJ's Avatar

    Ok... whatever I messed with earlier during that weird outage situation messed something up. I restored my files from my handy backup (thank gods) and its working fine again.

  8. 98 Posted by gnuite on 06 Mar, 2021 04:07 AM

    gnuite's Avatar

    Thanks, Stuart, hleofxquotes, and dtd for setting all this up. It worked splendidly ... at least for a half-hour or so. Now I get error 2000.

    One thing I noticed is that the script doesn't seem to handle multiple USAA accounts (i.e. different USAA numbers). My wife and I have our own USAA numbers, each with its own accounts, but we use a single MD file to track all of them.

    Using the script on one account worked fine - I could download transactions. But what to do about the second account?

    Since using either script again (for the other account) would remove the previous connection, I thought I could just remove the deletion code from the script. And sure enough, it seemed to work: I was able to set up separate connections (although they both have the same name - no big deal).

    However, now all of my USAA bank accounts (across both of the USAA numbers) fail downloading with the following error message:

    The error code reported by the server was: 2000
    We're unable to complete your request. To download USAA account
    transactions into Quicken, you'll need to verify your information. Get
    Access ID and PIN here

    (I have double-checked that both accounts have already granted access to Quicken, and the client IDs are properly separated.)

    Could creating two separate USAA connections have resulted in this error? I don't really know how the client IDs are stored in the data model (in each connection?), but if one had squashed the other, I would have expected at least the second account's downloads to work. Or maybe they're stored separately, but swapped somehow?

    Interestingly, I can still use the connections to set up online banking: I get the same error message during setup, but it still properly lists the accounts and lets me finish setting up banking successfully. Seems like setup works fine, but transaction downloading does not.

    Or is error 2000 some kind of transient error that will go away tomorrow?

  9. 99 Posted by gnuite on 06 Mar, 2021 04:10 AM

    gnuite's Avatar

    Oh, one other thing that I failed to mention. Up until now, I've been using a custom shell script that uses curl to download OFX data for both USAA numbers. And that script still works. So it must be something messed up in my MD setup. I'll try starting over....

  10. 100 Posted by dtd on 06 Mar, 2021 05:43 AM

    dtd's Avatar

    I just downloaded my USAA to moneydance to check this. Worked.

    Other than that, I'm abdicating till morning.

  11. 101 Posted by dtd on 06 Mar, 2021 05:45 AM

    dtd's Avatar

    @gnuite - re your question about multiple accounts - check out step 6 in the documentation, i'm sure you did, but the situation is to set each account up again in moneydance itself.

    what went wrong there?

    I do see that you have two separate accounts with two different logins - that's not something we've considered. I'll let Stuart pursue that.

  12. 102 Posted by dtd on 06 Mar, 2021 05:57 AM

    dtd's Avatar

    I do tend to find " it worked --- at least for """

    to be a signal to try again a few hours later... if it worked, the problem may be on the other end.

  13. 103 Posted by Stuart Beesley ... on 06 Mar, 2021 06:11 AM

    Stuart Beesley (Mr Toolbox)'s Avatar

    @TJ - I think you are saying that your USAA setup and downloads are OK now - can you confirm?

  14. 104 Posted by Stuart Beesley ... on 06 Mar, 2021 06:16 AM

    Stuart Beesley (Mr Toolbox)'s Avatar

    @gnuite - I think error 2000 might be transient - try again later - Yes, please start again. Use the create new script and link ONE ACCOUNT only... - Test that works.. - Only when that works... Then...: - Use the normal Moneydance menus to link your extra accounts.... new account in sidebar, menu/online/setup online banking/select the new/fixed profile... Then download this one, then repeat. -- OR are you saying you have different logons for different accounts..?

  15. 105 Posted by dwk on 06 Mar, 2021 05:33 PM

    dwk's Avatar


    I have been holding off any action until reasonably confident you (very helpful) folks have come up with a solid workable solution. But with so many messages that seem to indicate ongoing issues, it is not yet certain that to me that that time has come.

    Please tell me:
    - is it time for me to get into USAA accounts and MD?
    - what and where is the latest version of 'new script' that I should follow
    - what exactly is meant by a personal "backup" for safety? Backup what? And how? I have a single logon to MD and a number of USAA accounts, mostly checking but a few CCs. Are you suggesting that I create a new logon, and then try the script recommendations?

    Thanks for all your help. If you wish to send an email to be directly then use [email blocked].

  16. 106 Posted by Rand on 06 Mar, 2021 05:45 PM

    Rand's Avatar

    So after following this for a while I dove in this morning, with mixed results.

    Using what I think is the latest and created (v5 of the walkthrough pdf and scripts modified 3/5 0013 and 0026)

    I started with a fresh new file in Moneydance, selected a savings account, and fumbled through a CC account (skipping on a second try). I was able to download probably a years worth of data.

    Emboldened with my success I switch to my now "main" Moneydance file and went through the setup again. This time I again used the same savings account and I think I managed the CC setup properly this time.

    btw, here I had to use the create script at the fix script found a mismatch in accounts (5) and account profiles? (8)

    Seemed to work, reported success. I then quit and relaunched MD and got a 2003 error "Account Not Found" So I dutifully started again and have for a 2000 error twice "Invalid FI"

    Perhaps this is USAA trying to prevent hacking since I did the setup several time in a row. I will try again in a bit and see if anything changes.

    If there is anything else I should look for/report etc. just let me know.

    Thank you!

    ps my python skills are piss poor

  17. 107 Posted by TJ on 06 Mar, 2021 05:56 PM

    TJ's Avatar

    @Stuart, yes everything works like normal again

    @Rand, mine did that as well. After getting a weird error yesterday I screwed around with it. Ended ups getting that message over and over. I restored everything from a backup file form the day before and it worked fine. But I never figured out what that error message was and where it came from.

    Keep in mind mine was already setup and running without issue. I know there are two scripts and depend what setup you have in the beginning before the mess started. I am sure Stuart will chime in on this for you though.

  18. 108 Posted by Stuart Beesley ... on 06 Mar, 2021 06:05 PM

    Stuart Beesley (Mr Toolbox)'s Avatar

    @TJ  +1

  19. 109 Posted by Stuart Beesley ... on 06 Mar, 2021 06:17 PM

    Stuart Beesley (Mr Toolbox)'s Avatar


    I don't think the bank is blocking you...

    Invalid FI means that your profile has been refreshed by MD and it's now broken again.

    I think (my theory) this happens when you get an invalid account message (from the bank), and due to the rejection, MD refreshes the profile... Do you see a FI Refresh Forced message too? (I need my chief OFX tester to prove this one for me)...

    So, this implies you tried to link an account number it didn't like..?

    • Please try this....

      • Use the create new script... (the latest version will say build 9 on line 3)
      • Select and link 1 account that you know works - use the account you know you got working in the first step on the test dataset.. Select no CC account...
      • Check it worked OK (did the script tell you it finished ok?)
      • restart MD
      • help>Show Console. Leave console open..... now.....
      • Select the account in the sidebar. Menu Online, Download (this account) transactions.
      • Did this work? If no, stop.... I could do with seeing the console..... (email me)
      • If Yes, then select the next account in the sidebar and use the menu>online>setup online banking>Carefully select the (fixed) usaa profile, Next. Your credentials should appear. Select the account that matches this account... and link it up. Now try and download this account... If OK, repeat...

    Let me know?

  20. 110 Posted by Rand on 06 Mar, 2021 07:29 PM

    Rand's Avatar


    Confirmed build 9 on the create script.

    Succes and then download failure as before. I just emailed you the log file. Also note that USAA is not the only institution I download from.

    Thank you!

  21. 111 Posted by dtd on 06 Mar, 2021 07:42 PM

    dtd's Avatar

    In my extensive testing, I occasionally was blocked by USAA for pinging too much.
    The block would last for usually a few hours.

    I have no idea if that is the problem here, or something else, just thought I'd mention it.

    I'm about to see if I can duplicate it....

  22. 112 Posted by dtd on 06 Mar, 2021 10:00 PM

    dtd's Avatar

    Ok, I do have some learnings from testing.

    What is basically happening is that Moneydance is "putting back" the broken profile that Stuart is fixing. A simple way to break the fix is to hit REFRESH when doing set up online banking. So NEVER hit that; we mention that in the documentation.

    The question is: what makes Moneydance do the refresh separate from the button.
    Now we are into questions, as I cannot make it happen.
       1) Was it the connect glitch from a day or two ago?
       2) Bad account number? (I couldn't make that happen)
       3) Multiple account numbers causing an issue? (I can't test that)

    Stuart's script works great (and I now recommend anyone with more than two accounts just always use CREATE, because it is more comprehensive), but something can reset it back to the broken profile - THAT is where the 2000 bad FI occurs - it is NOT a blocking error.

    And if it does break - you don't have to go to a backup - just use CREATE again - it's a war with the broken profile.

    I'll address specific users in the next couple of messages.

  23. 113 Posted by dtd on 06 Mar, 2021 10:30 PM

    dtd's Avatar

    @layer - try CREATE - it is more comprehensive than FIX.

    @TJ - if this happens again before we figure out why the profile gets set back to broken, try CREATE again versus moving to a backup (but yes moving to a working backup with the correct profile is certainly a way to fix things, so, your choice) - you are the primary data bit that makes me think the connection break might be the issue. Still, just a theory.

    @gnuite - you are unique, well, not totally, as I have four logins for all my chase credit cards (me/me business/spouse/spouse business) and they are all in the same moneydance file, so i get it. But Stuart (nor I) planned on multiple accounts or multiple logins when we started this. So I do think the 2000 error is that your profile was reset to the bad one.

    And yes, sounds like a mantra - but use CREATE to get one of those profiles working again. And you will have to tell US what you have to do to get the other account working - given one good profile - can you tag the other one into it? (I don't know, I'm just a tester) Or do you indeed need to run CREATE twice without having the first one deleted? You seem further along on this than I am.

    But to be clear - the 2000 error is that somehow the profiles were reset back to the broken ones. It is not transient. You will need to fix them again (use CREATE).

    @Rand - 2003 is normal as the documentation mentions. 2000 is that the fix was reset to broken - and we are trying to figure out why that happens. You can run CREATE again to get back the fixed profile. You took notes, right? Should be pretty easy to fix it again, and hopefully we can determine what breaks it again.

    @dwk - the scripts work quite well, what we are dealing with in most of these messages is connection glitches to USAA and that Moneydance can/does break the fix by resetting the profile. They may be related, they may not. We are working on figuring out why Moneydance breaks the fix. Using CREATE again will fix it again, but we want to stop the back and forth breakage.

    Given your questions, I suggest you are right to wait a bit longer, at least till we figure out this issue.

    To your questions:

    - is it time for me to get into USAA accounts and MD?
          You can do step 1 and step 2 to gather data, and you should read the document of what will be coming, but I'd wait for the rest.

    - what and where is the latest version of 'new script' that I should follow
           answer is in the documentation.

    - what exactly is meant by a personal "backup" for safety? Backup what? And how?
        you want to make sure you can move to an earlier version of your file if things go wrong. Hopefully you are doing this already, but we would never want your data to be compromised.

    I have a single logon to MD and a number of USAA accounts, mostly checking but a few CCs. Are you suggesting that I create a new logon, and then try the script recommendations?
        We suggest you do this on a copy of your real data to see if it works.

  24. 114 Posted by Stuart Beesley ... on 06 Mar, 2021 11:05 PM

    Stuart Beesley (Mr Toolbox)'s Avatar

    @dwk. Latest scripts always here:

    Please use the create new script.
    Read the PDF first
    You backup by doing File/export backup.
    I suggest you link 1 checking account (only) and test that works ok with a download
    If ok, then use the online menu and link 1 more account and download that. If ok, repeat.

  25. 115 Posted by Stuart Beesley ... on 06 Mar, 2021 11:10 PM

    Stuart Beesley (Mr Toolbox)'s Avatar

    @gnuite - are you saying you have two different logins to usaa? Ie two different sets of userid, password and uuid credentials?

  26. 116 Posted by dtd on 06 Mar, 2021 11:13 PM

    dtd's Avatar

    @Stuart - yes, I'm sure gnuite is saying exactly that - just as i have four different logins to chase credit cards.

  27. 117 Posted by Stuart Beesley ... on 06 Mar, 2021 11:20 PM

    Stuart Beesley (Mr Toolbox)'s Avatar

    @rand see email. It clearly doesn’t like one of your accounts? Is it still enabled for online access with usaa? Does it have recent txns? Is it valid? The

  28. 118 Posted by Stuart Beesley ... on 06 Mar, 2021 11:23 PM

    Stuart Beesley (Mr Toolbox)'s Avatar

    @gnuite, @dtd. I’ll ponder the multi logon issue. There’s no problem having multiple profiles. It’s just how to make it easy for people to manage via the scripts.

  29. 119 Posted by gnuite on 07 Mar, 2021 12:49 AM

    gnuite's Avatar

    Just to confirm: yes, I have two USAA numbers, i.e. two USAA logins. I've granted access to Quicken for both of them, and I have two separate sets of Client ID, User ID, and PINs.

    I tried setting up both of them again, using the same process of following the guide with the regular "Create script" and then again with a modified "Create script" (to remove the deleteServices section), but this second time I did it in reverse - my wife's first, then my own.

    The results were different: now my accounts download, but my wife's accounts don't (Error 2000). Another piece of weird behavior: when I try to Change the connection for my wife's account, regardless of which of the two (separate) USAA connections I choose, it pops up the username/password dialog box with the same username/password (mine - not my wife's). Normally, selecting a connection pops up that dialog with the user/pass of that particular connection.

    I'm not sure what that means, though.

    I'm going to experiment a bit more.

  30. 120 Posted by dtd on 07 Mar, 2021 01:02 AM

    dtd's Avatar

    Ok, I actually have some thoughts based on my 4 chase card accounts.

    Simply put, moneydance doesn't handle multiple logins very well. And this is probably compounded by Stuart sticking his profiles in...

    Forgetting the USAA fixes for the moment, I've posted threads saying I can't get all the logins for Chase to work, and how I've had to really do glitchy things to get them to work (even to the point of creating a new account, moving all the txns over, and starting online banking anew. Yes, I do have all of our cards working, but I've had to play around to make it happen.

    So, back to USAA. Stuart is working within the system, but trying to put in correct profiles vs. the incorrect ones (which we all hope Sean gets out soon). Still, we have to live in the Moneydance universe, so if I can't get my four logins with Chase to work correctly without a lot of singing and dancing.... well.

    I assume you had this all working before Jan 26. We may just have to finesse it at this point.

    I'm only making a guess, but maybe creating a profile and then creating another profile causes a refresh on the first one? Only Stuart can answer that, and he lives in England,so I hope he's in bed.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts


? 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