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 17 out of 22. View the first page

  1. 481 Posted by Stuart Beesley ... on 29 Apr, 2021 06:10 AM

    Stuart Beesley (Mr Toolbox)'s Avatar

    @dwk. As dtd says, everything is explained in the pdf. Please can you confirm you have this? If you haven’t followed this, then the connection will not work?

    • in file/passwords: have you set a master password and selected the options to store online passwords?
    • did you get the long string of numbers/letters called clientUID and use this in the script?
    • did you logon to usaa, select allow quicken access, and then save the displayed ‘access Id’ and ‘access pin’? These are what you should put into the script and also what you use in the screen shot above (MD calls them ‘user id’ and ‘password/PIN’)?

    You should not be seeing the pop up userid/password screen you sent above with empty boxes as my script populates these and then you just click download.

    If you still have problems, Help/show console. Keep console open and try the download again. Post the console log here for review.

  2. 482 Posted by dtd on 29 Apr, 2021 09:52 AM

    dtd's Avatar

    dwk - you've definitely run the script, otherwise you wouldn't get the "custom profile" you show in your post. The issue both Stuart and I are concerned about is the fact the userid box is empty.

    Creating the custom profile with the script isn't magic - it requires you to put in the data you gathered from USAA. Seeing the empty box for userid suggests that wasn't entered when you ran the script, unless maybe you blanked it out for security purposes? Knowing that would help.

    The second scenario, the error 2000 bit, could be due to many things, again, described in the documentation. We want you to successfully use the script and get your USAA data, but you have to help us help you,

    Finally, reading your messages carefully, let me try to answer the "equivalence" issue you are concerned about.

    You have a USAA id and password/pin that you use to log into USAA. That stays the same, but you no longer use those with Moneydance.

    There are three pieces of information you gather from USAA - a long string called clientUid, which is 36 characters long. You also go to the "Allow Quicken to Access USAA" - in there is a NEW userid and password that you use within Moneydance (and in the script) - hope that separates out the "which userid and password" do I use.

    Sorry you feel that you had to go to Stuart vs. my messages, but I've spent many many hours on that documentation - and all I can do at this point is repeat myself. The one thing I can do is keep improving the documentation when I find people don't "get" what I wrote - sounds like I can do something to clarify the USAA login vs. the new OFX login bit - as you say "equivalences".

  3. 483 Posted by taser8 on 29 Apr, 2021 01:40 PM

    taser8's Avatar

    FWIW, I seem to recall the issue I had was that my last transaction date was blank. I used a tool that Stuart recommended to change the date to yesterday (at the time) and the 2000 error went away.

  4. 484 Posted by v3hanson on 29 Apr, 2021 03:03 PM

    v3hanson's Avatar

    stuart - i am so sorry to be asking this again - i just received my usaa bank statement - as i mentioned earlier downloads are going back six months - i need to change transaction date so i don't have to manually merge over 400 transactions since october last year - with over 400 replies in this discussion thread i can not easily find how to do this - if i click on auto merge as you do would that be best way to solve it rather then running script edit - i am really not good at that and will need hand holding - i went to the link for python scripts and it was way complicated for me (to be clear i have successfully installed the patch and have been able to download successfully - just too many - again if checking the auto merge box works i can just do that and then un check it for the the future

  5. 485 Posted by Stuart Beesley ... on 29 Apr, 2021 03:12 PM

    Stuart Beesley (Mr Toolbox)'s Avatar

    Hi. Grab and read the pdf (post 1). It explains the following.

    Install preview build 3066 of Moneydance

    Install latest signed toolbox

    Run toolbox.
    Advanced mode
    Ofx tools menu
    Edit/update last txn download date. Set it to yesterday.

    Let us know it worked ok?

  6. 486 Posted by dtd on 29 Apr, 2021 03:14 PM

    dtd's Avatar

    @dwk - ok, I've done some research, and have tried to put myself in your shoes.

    There seem to be 3 issues that influenced this interchange:

    1) Your concern that you were unsure if you were putting in the right information (i.e. old userid, new userid, etc) caused that to be our focus. One thing I am doing is trying to make which values go where more clear so this confusion won't happen again.

    2) Having blanks in the pictures you posted emphasized that your data might not be correct, so we continued in that mode. After pulling out my test files (haven't done that in weeks) and trying to be "you" makes me think you blanked out those fields yourself for security purposes (am I correct in that?) - If so, then that confused us, would have been better to replace the values with garbage values.

    3) I could not replicate the 2000 error, although I found a lot of strange errors I could generate.... :) - signon invalid, Error 400, a few others. However, you being able to generate a 2000 error suggests that you did get all the data in (my current conjecture) and you are now running into the next part of the documentation which describes how 2000 errors occur, as well as fixing the last transaction date (which Sean notes in the previous message).

    So, I hope it's obvious I do want things to work for you. My next step is to create a Version 8a for the documentation which is clearer as to nomenclature.

    I'd like you to verify that you sent that picture after blanking out the values (if you didn't do that, I'm going to be scratching my head again)

    I'd suggest reading Stuart's post 481 again, as it is still spot on in diagnosing what's going on.

  7. 487 Posted by taser8 on 29 Apr, 2021 03:20 PM

    taser8's Avatar


  8. 488 Posted by dtd on 29 Apr, 2021 04:57 PM

    dtd's Avatar

    @dwk - another thought, are you trying to use the script with one or two accounts? (i.e. checking only, credit card only, both). I don't know how many accounts you have with USAA, but if you have many, try a different account, or just one of the two (if there are two).

    If you consistently get error 2000, then this may separate the issue into connection issues vs. account issues.

  9. 489 Posted by v3hanson on 29 Apr, 2021 05:23 PM

    v3hanson's Avatar

    Ok but if I set to yesterday going forward don’t I have to download every day or I will miss transactions ? Still asking if I toggle auto merge transactions will that work for the 400 dupes without doing toolbox etc

  10. 490 Posted by Stuart Beesley ... on 29 Apr, 2021 05:29 PM

    Stuart Beesley (Mr Toolbox)'s Avatar

    Nope. If you set it to yesterday then that will be the start point for downloads. Try it. You can always set it back to zero again by using the online menu reset sync.

  11. 491 Posted by v3hanson on 29 Apr, 2021 05:30 PM

    v3hanson's Avatar

    that means i will have to manually input all the transactions for the last month since i have not downloaded since - and i only have one account

  12. 492 Posted by dtd on 29 Apr, 2021 05:32 PM

    dtd's Avatar

    The date should update each time you download, if the account transaction date is working correctly. Setting to "yesterday" is not "yesterday", it would be 04/28/2021... then it should update again the next time you download.

    Your issue is that it is probably currently set to either 0 (i.e. download from the oldest data available) or just a long time ago.

    Auto merge works pre-download thru download. If you already have the 400 transactions in your account and didn't have that toggled on, it doesn't auto merge after the fact. You'd have to either delete the 400, set automerge, and download again... or merge by hand.

  13. 493 Posted by dtd on 29 Apr, 2021 05:36 PM

    dtd's Avatar

    so,what is your status for this account? Do you have 400 items that need to be merged, and then a month of no downloads?

    I think both Stuart and I would need the overall status of downloads vs. no downloads to help make a recommentdation.

    It SOUNDS like you have six months of duplicates, from a month ago, and you haven't tried downloading since. Sounds like you may want to toggle "auto merge" on, and at least get that last month into the account.

    You still might have those 400 to deal with, but again, I'm not absolutely sure of what ithe situation exactly is.

  14. 494 Posted by Stuart Beesley ... on 29 Apr, 2021 05:44 PM

    Stuart Beesley (Mr Toolbox)'s Avatar

    ... as dtd says. Anyway if you want it to start from last month, set it to last month.

  15. 495 Posted by v3hanson on 29 Apr, 2021 06:34 PM

    v3hanson's Avatar

    thanks - i installed the script about a month ago and it worked - but it started transactions back to october last year - so over 400 dupes - i deleted them only to have it do the same next time i downloaded - so took a breather - then realized if i had merged them rather than deleted would have been ok - so reading about auto merge option sounded great - got ready to try that - downloaded new beta version - ready to go - but now i can not find the new passcode for the account - back to ground zero and may have to start over - kicking my little derrière - i hope i can run the script again and get sign in codes again

  16. 496 Posted by v3hanson on 29 Apr, 2021 07:23 PM

    v3hanson's Avatar

    so found passcode everything worked and is ok  :-) back in the fold

  17. 497 Posted by Chuck Whittenbe... on 29 Apr, 2021 10:47 PM

    Chuck Whittenberg's Avatar

    Sorry, I have worked on this for far too long and have just taken a Quicken subscription complete with on-my-screen live help by someone who is an expert in the system. After 20 minutes, everything was linked active and the old stuff was gone.

    Thanks for trying to help. Please remove me from these mailings.


  18. 498 Posted by dtd on 29 Apr, 2021 11:10 PM

    dtd's Avatar

    Come to the forum, then click unsubscribe from updates in the upper right corner. I don't know of any way that anyone else can unsubscribe other than yourself.

    Good luck.

  19. 499 Posted by dtd on 29 Apr, 2021 11:20 PM

    dtd's Avatar

    If you are doing this all through email, you can also unsubscribe from all posts by looking at the very last line and clicking ---this page---. Again, good luck.

  20. 500 Posted by Brian on 29 Apr, 2021 11:28 PM

    Brian's Avatar


  21. 501 Posted by dtd on 29 Apr, 2021 11:31 PM

    dtd's Avatar

    @dwk - given your concern about "equivalences", I have created a version 8a of the documentation to try to be more precise about each item. Available from the same link.

    Hopefully this will make it clear as to what goes to what. Also, this might give more confidence that you are entering the right items in the right places, and for you, we can move to the 2000 error you are encountering once the script successfully finished.

  22. 502 Posted by dwk on 30 Apr, 2021 12:53 AM

    dwk's Avatar

    Per script instructions, I eventually added all my accounts into my TESTUSAA file [I have a number of accounts (chk and cc)], but I only tested logging into USAA for an 'update' with a single checking account using the normal MoneyDance process.

  23. 503 Posted by dwk on 30 Apr, 2021 12:58 AM

    dwk's Avatar

    Thanks, I will look at that now. I appreciate your patience.

  24. 504 Posted by dtd on 30 Apr, 2021 01:35 AM

    dtd's Avatar

    Great to hear you are moving forward. I do look forward to your thoughts on Version 8a, as I made the changes due to your (appropriate) concern that I wasn't being precise enough.

    As for your accounts, sorry to sound pedantic, but the "script" instructions ended after step 3, as the script had created the custom profile and was finished. The rest is about dealing with USAA changes within Moneydance.

    Do you still get a 2000 error anywhere, or does everything now seem ok?

  25. 505 Posted by dwk on 30 Apr, 2021 01:56 AM

    dwk's Avatar

    For clarity on my side:
    - where did you place changes in ver 8a?
    - for a simpler approach I plan to delete all my accounts in TESTUSAA except one checking account. Make sense? Would this result in any problem?


  26. 506 Posted by dtd on 30 Apr, 2021 02:26 AM

    dtd's Avatar

    8a - anywhere I discussed the items to be downloaded ... specifically client_id, OFX userid, OFX password. That passes through the entire document.

    I also twice mention "your normal USAA login to USAA works, but is no longer associated with moneydance at all."

    As for TESTUSAA, the whole point of a test file is you can do whatever the heck you please, as it is just a test. Still, I would try to download each account into the TEST, just to make sure it works before you do it on your real data set.

    So, no problem, but I think you'd want a full test of downloading from every account. Again - it's no harm no foul - you see if they all match, etc. before doing the real deal.

  27. 507 Posted by dwk on 30 Apr, 2021 06:19 PM

    dwk's Avatar

    dtd -

    I plan to redo my use of the 'script' to do it over and hopefully see where I likely made an error.

    In the meantime, however, I am attaching two pictures below for information which I get in trying to connect with USAA accounts (in the parent account) online.
         The file I am using is the TESTUSAA parent account that I had previously created
         The data in this parent account generally contains data up generally up to late Jan 2021.
         The PIN is the one which I use when logging onto USAA.
          When I do logon, I also need to supply a 'PASSWORD' which does not seem to be required in connecting
          with an account.




  28. 508 Posted by dtd on 30 Apr, 2021 08:20 PM

    dtd's Avatar

    @dwk - I agree with your decision to start over and do this again. Throw away this TESTUSAA, make a new backup from your live account, and make a TESTUSAA copy. As you know, this is in the documentation, just do it again with the knowledge you've gained. That's what tests are about.

    Your 400 error and your statement "The PIN is the one which I use when logging onto USAA." shows you are using the wrong set of login items. I tried to modify the documentation to be more specific - so please download version 8a and read it as you start with a new TESTUSAA.

    Specifically - you use your USAA login/password/pin ONLY for logging into USAA, you no longer use these for Moneydance. You get 3 new items that you use in the script, and two of them (NEW userid/password) when trying to connect. Again, this is now very specific (I hope) in Version 8a.

    So, basically, as I said before it's all in the documentation - and I keep changing it if people misunderstand what I wrote.

    The Version 8a link is in the very first post. I've also posted it here:

  29. 509 Posted by mgphl52 on 30 Apr, 2021 08:39 PM

    mgphl52's Avatar

    There appears to be an issue when a charge is "pending" on USAA.
    I downloaded multiple transactions and, as expected, the pending charge was skipped. When I did a download later after the prior pending charge had finally cleared USAA, it did NOT download that charge! My guess is because other cleared charges had previously downloaded with dates after the pending charge date and whatever process ignored the "clear" date for that transaction.

  30. 510 Posted by dtd on 30 Apr, 2021 11:16 PM

    dtd's Avatar

    Interesting information, it might be good to start a "What's changed with USAA now that USAA works with Moneydance again" thread as this USAA script thread is already way too long, and I'm not going to add any more USAA works again caveats to the script documentation.

    But thanks for the info, I have USAA accounts. I have not encountered this problem however. Start a new thread and monitor this issue for everyone, thanks!

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