Robert, best I could find is https://support.google.com/blogger/thread/208096732/how-can-i-increase-comment-limit?hl=en. You can't increase limit, but you can make Load more... more visible.
Any one else having trouble with the Vanguard OFX downloads? It seems like they recently switched from using "reinvest" type transactions to just regular "dividend" transactions, even when it is a reinvestment. Not only does Money fail to match past transactions, now a manual entry is needed to create a purchase (or change the dividend to a reinvest dividend)
Carlos: I presume you are using Scrub_CL7.py. I had not checked Vanguard lately, and took start of a look. I expect to make changes, and let you know if I make progress. I have some old files saved, and I will check out what it will take to deal with the changes.
Carlos: I just tried, putting my vanguard *.qfx download into the PocketSense import folder.
It imported when I ran getdata.py
Try the Scrub_CL7.py from January in vofx6B.zip in https://drive.google.com/drive/folders/1-4fBbRxaPhNYZK0gNHuZ3n-Bdoncy2aR into your pocketsense folder, replacing the older one.
HOWEVER the FITIDs must have changed, because I got duplicates. Make the Vanguard download not overlap the dates from transactions that are already in Money. I will restore a *.mbf file from just before reading in the new vanguard. I
I don't know if anyone can help me. Before I start trying to install F2O I'm just trying to update my Fidelity accounts manually. I have an account in my Portfolio named IRA Growth Joe. The Contributions ($) show my monthly cash dividends as Dividend : Government Cash Reserves. The last one was 12/31/25 for $3.07. I now want to add one for 01/30/26 for $1.99. When I go to enter the transaction under Investment Transactions, Government Cash Reserves doesn't show in the dropdown of investments. If I type it in it says "Government Cash Reserves is a mutual fund which was previously deleted but is still used in some transactions. Do you want to reuse it? Click Yes to add the investment back to your list of investments." If I answer Yes it says "You have not purchased "Government Cash Reserves" in this Investment Account prior to this date. Are you sure you want to enter this activity?" If I answer Yes and enter it now it shows Government Cash Reserves at the top of the portfolio as well as all of my other portfolios with transactions going back years. If I delete Government Cash Reserves it deletes all of those transactions from my Contributions ($) account. Any suggestions would really be appreciated. Thanks!
Joe: If you want the old stuff to remain in the past, rename that old investment to "Old Government Cash Reserves" and blank the symbol. Then you can create a new transaction with "Government Cash Reserves" as the investment. Select to make that a Money Market.
If you don't want "Old Government Cash Reserves" to appear in drop-down lists going forward, you can Delete the investment again.
Deleting "Old Government Cash Reserves", or other investment, should *not* make existing transactions disappear from the Contributions/Cash account.
I renamed "Government Cash Reserves" to "Old Government Cash Reserves". I then entered the dividend of $1.99 as "Government Cash Reserves" and my Contributions ($) shows $685.41 which is correct. Then if I delete "Old Government Cash Reserves" the Contributions ($) account now shows $56.74 which is incorrect and "Government Cash Reserves" shows as investment in the portfolio with $1.99 which I don't want. Thanks!
Joe: I experimented with a copy of my *.mny file. In a non-watch account I did a buy of 100 of a new investment called "fake mf1" dated 2011. I did a Sell of 100 dated 2012. I went to Investing->Portfolio->WorkWithInvestments->DeleteAnInvestment and chose "fake mf1". It worked. If I try to delete an investment that I do not have zero shares of now, it refuses.
The transactions are still in the account for 2011 and 2012. But the investment is not in the dropdown list for new stuff. So I wonder what is different between my test and yours.
I came up with a workaround. I ran a report of all the Government Cash Reserves transactions. I then entered matching transactions in only the Cash accounts for each portfolio as a deposit to Fidelity Investments category Investment Income>Interest. I then deleted the Government Cash Reserves fund and all is good.
Thanks for all of your help, Cal and everybody.
Now I'd like to tackle F2O. Can you point me in the right direction to get started? Would that be https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/
I only have one position that has a different price today than it did on Friday.
So I just now downloaded (with all accounts selected), both the Portfolio Positions and Accounts History csv files. I confirmed that Portfolio_Positions.csv had a price for IVV of 684.76 vs the 684.66 (from Feb 13) that was stored in Money.
There are multiple Positions files in my Position Files folder.
I then ran F2O.bat whichcreated the ofx files, followed by GetData to bring the information into Money.
The price in Money did not change -- remained at 684.66
I am using non-default directories. Here is my config file contents: ``` IGNORE_BEFORE_YYYYMMDD="2021231" DEBUG=0 OVERRIDE_WRITE_FOLDER="C:/Users/ron/Downloads/Microsoft Money/OFX Python Scripts/ofxpy_pocketsense - Copy USAA/import/" OVERRIDE_HISTORY_FILES="C:/Users/ron/Desktop/fido/Accounts_History*csv" OVERRIDE_POSITIONS_FILES="C:/Users/ron/Desktop/fido/Portfolio_Positions*csv" ```
F2O401k1F.py uploaded. This should fix that quotes problem of zero prices, but also get the Friday closing prices right over the weekend. You may want to restore your Money file from a *.mbf that pre-dates the bad prices you got.
Cal: F2O401K1F.py seems to work with a few caveats. If there was a previously existing Feb 13 price, it did not overwrite I could see on the Downloads page that it had the correct price there, but that did not get propagated when there was a previous price entered on that date. When I deleted that price (in the Update Manually dialog) and reran f2o and getdata, the price updated.
2. In the "Update price manually" dialog, this price is flagged as "Updated" whereas other prices (downloaded using Gaier Software's MSMoneyQuotes) is flagged as "Online".
Hopefully it should continue to work going forward.
Ron, expected operation is that only the price for the previous close be provided, and that the date for that previous closed time time is used. That comes in by OFX. Once that happens, another price for that date will be ignored. So if there was a previous Feb 13, quote, it does not get overridden. That is how Money works. If there was a different earlier quote, it probably would have been the Feb 12 close written by an earlier flawed version. I hope to only have correct closes going forward, but let me know if that goal is not met.
https://finance.yahoo.com/quote/MSFT/history/ is my favorite way to look at past closing prices. Just swap out MSFT for a different symbol if looking at a different stock.
MSMoneyQuotes sends the quotes via a different mechanism. It can be overwritten. So you could run it many times per day.
I have three periods I recognize: before market opens, market is open, and market was open today but has closed. If you note an anomaly, note the "Date downloaded Feb-15-2026 3:40 p.m ET" in the last line of the Portfolio_Positions_Feb-15-2026.csv (for example) file.
Special note: markets are closed today, Feb 16. While I had toyed with looking up the market schedule, I took the expedient. So there should ideally not be a Feb 16 quote. To achieve that, do not get new Fidelity CSVs from 4pm ET today Monday, until after 4pm ET Tuesday.
Cal, in case this proves helpful... Upon close inspection, I see that 2/9 and 2/10 values for all my investments were 0.00 - not sure what version of f2o.py I was on then, but my current version is the 401kD test file you sent me, and I just verified that the values are coming through properly.
Cal: How to handle Ffidelity account transfers (within Fidelity)
Yesterday I transferred our three IRA accounts at Fidelity into managed accounts at Fidelity. At Fidelity, the process transferred the assets of each of our original IRA accounts into a corresponding Managed account (with a different account number).
I would first add the managed accounts to Money, and Fidelity will provide journal entries for all of the asset transfers. If you want the transfers to actually be recorded as transfers, it might be best to do so manually. F2O will then bring the journal entries in and match up to your transfers.
Ron, keep a copy of the money file, or be prepared to restore from one your (I hope many) *.mbf files.
F2O_beta14.zip uploaded. That version several improvements, and I would encourage using at least the F2O.py from that zip file. It incorporates the feature of the ones with 401k in the name and more.
So I am curious what happens if you just make all of the OFX files and submit them to Money. But in practice, what I have done when moving from one broker to another and moving everything, is to rename the account and change the account number. Then only send the new account OFX to Money... not sure. Please experiment. Take notes. Report your findings.
I guess I would like to know what lines/rows are in the batch file regarding the transfer... but when you import the new account Money may ask where it goes. Say the single account if you go that route.
I could see playing with IGNORE_BEFORE_YYYYMMDD="20260219" or whatever to avoid having to re-deal with the transfer entries. Also I suggest DEBUG=1. That may cause you to get F2O_logged_a_note.csv to have entries that list things that F2O ignored. That file pre-redacts the account name and account number. It does not redact amounts. So anyway, things listed there are ignored. Maybe they should be turned into something in the future, or maybe ignored quietly.
Cal: "what I have done when moving from one broker to another and moving everything, is to rename the account and change the account number."
But I am not moving from one broker to another. Rather I am moving the assets from three established Fidelity accounts to three new Fidelity accounts.
In the new account, those assets will be sold and new assets purchased.
And the sale/purchase has occurred, but the new purchases have yet to clear (and these new purchases don't show up in the csv download yet). So I will wait to do anything until things clear.
I tried doing things today and things seemed screwy. So I went back to my backup.
Right now, MSMoney has the new accounts listed but with a zero balance.
Ron: How do you want Money to look? I think you now have 3 new real accounts that hold everything or nearly everything. I think you have 3 old real accounts that are empty, or nearly empty.
IMO, moving AccountA contents to AccountAA, and AccountB contents to Account BB, etc, is functionally similar to moving accounts between brokers.
So how to reflect this in Money? One way is to enter share transfers from old to new as they really happened. The other way is to treat the new accounts as continuations of the old accounts with a new account number. Both ways work. Both have their advantages.
I don't know what is in your Accounts_History*.csv to reflect the transfers.
On a different topic, I think I need to update scrub_cl7.py to not back up the dates of quotes if using F2O.py to provide the Fidelity OFX files. F2O does the dates right itself, and applying the corrections needed with the Fidelity*.ofx files that came from Fidelity are no longer desirable. There may still be functions appropriate, or maybe just do no scrubbing of the Fid*.ofx files put into the PocketSense import folder is appropriate. There is still scrubbing appropriate for Vanguard and probably others.
Cal: I'd like to see the three old accounts with zero balance; and the new accounts with the appropriate balances and holdings. This process almost worked, except it added the new holdings in the new accounts as "Add Shares" instead of Buys:
1. Added new accounts 2. Changed IGNOREDATEBEFORE to ignore transactions before the transfer. 3. Downloaded fido positions and transactions csv 4. Ran f2o a. Got prompted to set the TYPE of position for the new stocks b. And also whether to USE it or not to update the DB c. I chose to Use it in order to write that in permanently 5. Ran GetData 6. In the old accounts, there were Remove Shares entries 7. In the new accounts, for the new positions, they were added with Add Shares entries 8. In the new accounts, for the positions that had been transferred from the old account, there was both an Add Shares entry and then a Sell entry (as they were sold in the new account) 9. At the end of all this, the positions in the new accounts were correct, but the cash balance was way to high. 10. I’m thinking this discrepancy is due to the fact that the positions from the old account were sold (and went into the associated cash account) whereas the new positions were merely added instead of purchased). 11. Not sure of the best way to correct this. Hoping I don’t have to do it all manually.
Looking more closely, it seems that: 1. For the old accounts, all of the positions were removed via Remove Shares 2. For the new accounts, all of the NEW positions were added using Add Shares 3. In the new accounts, a very few (but not all) of the positions from the old accounts show up as an Add Shares, followed by a Sell. 4. The other old positions that were transferred to the new accounts, even though they were sold in the new accounts, don’t show up at all. 5. I am thinking I may have edit things by a. Changing the Add Positions in the new accounts to Buys b. Changing the moving of positions from old to new as Transfer Out/In c. Adding the missing sales in the new accounts.
If F2O generated AddShares and RemoveShares for the same securities, especially for a taxable account, I would void those. Replace the pair with a TransferOut or a TransferIn, depending on which account you want to enter the transaction. Void has the advantage that later downloads will ignore the same AddShares or RemoveShares. Another way to avoid re-downloading Deleted transactions is to use the IGNORE_BEFORE_YYYYMMDD to exclude past stuff.
That is pretty much what you proposed. AddShares does not consume cash, and Buy does. RemoveShares does not increase cash, and Sell does.
These are non-taxable accounts. There may have been some timing issue. I restored a backup and ran everything again. This time, for two of the old accounts, which only had one or two postions, the positions were 1. Removed from Account A 2. Added to Account B 3. Sold in Account B 4. And the balances in Money matched Fidelity
But for the third account, which had seven or eight positions 1. All eight were removed from Account A 2. Only two were presented to me for being a sale (and they got added to Account B in order to make the sale) 3. The other half-dozen were NOT presented to me for being a sale, even though there is an appropriate SELL transaction in the OFX file generated by F2O.
I don't understand why the first two accounts worked and the third did not.
Comparing, in the OFX files, a successful vs a failed sell, the only entries that differ are the ones you would expect to differ:
Here is the (anonymized) relevant part of Accounts CSV. It shows the transfers out of the "FROM Account" and into the "TO Account" along with a Sale in the "TO Account" for the Stock/ETF positions.
The core money account is FDRXX and that shows a PURCHASE and REDEMPTION transaction.
In MSMoney, the remove shares is apparently triggered by the fact that "0 shares are shown on the statement". And for IVV and AGG, where the SELLs show up in the TO account, an ADD Shares is triggered by the fact that there are zero shares in the TO account at the time of the SELL.
In Money, upon import, none of the stock/ETF transfers were present Only the sales of AGG and IVV were shown in the TO Account
Hopefully, this link will open a sanitized version of the data in Accounts.csv for one pair of to/from accounts: https://1drv.ms/x/c/8edb73c8a1a37a69/IQCUnxzgRPBTTJb_IUrClAGoAQiPnObSu7J3SBoIrfz7e9s?e=cO0iW2
Cal: Finally done. This was my process for any who might need it in the future for the particular situation where one account is transferred in kind completely to another account:
1. Set up new Fidelity accounts 2. In a portfolio view organized by account, right click on the account name to bring up a menu to transfer the account to another account. a. Money transfers the holdings as Transfer OUT/IN and the Cash as a cash transfer 3. Ran F2O on a fresh batch of Fidelity account history and position downloads 4. Ran GetData 5. Seemed to go OK EXCEPT the Sell transactions for the positions which had been transferred into the new accounts did not show up (Except for the IVV and AGG holdings as I mentioned before). a. Since there were only five of these, it was easy enough to do it manually. 6. All the BUY transactions in the new account showed up as they should have. I don’t see any reason why those particular SELL transactions shouldn’t have shown up in Money. I have saved files and will sanitize them if you want to look into this any further. Ron
Since I started using F2O for a couple of weeks, I have noticed F2O is dropping certain transactions listed in the downloaded csv file from Fidelity when creating the .ofx files. Just using F20, not getdata processing after that. I have taken a close look at the transactions and I don't see any logical reason.
1. It seems to happen to the same 6-8 ETFs. I have taken a look at the generated DB and don't see anything unusual about these ETFs. Moreover, if there are multiple transactions in these ETFs, one of them makes it to .ofx file but one doesn't. Sometimes the earlier one, sometimes the later one.
2. The dropped transaction dates can be in the middle of the range. So, not a boundary condition of the date range. Other ETF transactions in the same date range go through fine. Not related to any settlement date either.
3. There might be other assumptions in F2O that my activity history may be violating but nothing I can determine.
GV: It is not clear to me from what you wrote but did you also examine the actual OFX files generated? I have a bunch of SELL transactions that F2O actually put into the OFX files, but Money did not enter those transactions when I ran GetData. There were two ETF's where the SELL's went through, and five where they did not. But they were all in the OFX file.
GV: If you set DEBUG=1 (in F2O_cfg.py, F2O will generate a F2O_logged_a_note.csv file if any history line is ignored because F2O did not know how deal with it, but was not ignoring the line on purpose. Some lines are ignored on purpose, such as LOAN RETURNED|YOU LOANED|JOURNALED |...CREASE COLLATERAL, so those don't get logged.
That was added to F2O.py at beta13B and continues. F2O_logged_a_note.csv file entries have the account name and number redacted already. It is intended that you could copy a few lines from that file and post.
F2O_logged_a_note.csv can be deleted. It will only grow with uses unless you delete it. So what I would like to know is what history line is being ignored, and what Money thing do you think it should be generating.
Cal. I use a customized scrub_cl6.py for my Fidelity transactions, and in conjunction with F2O, it seems my quote prices are backed up 2+ days. Not a big deal, but I was wondering if F2O could have a setting to leave the dates alone, for those of us using a Fidelity scrubber. I downloaded history and positions today (2/24/2026), so I would expect the price quotes to be dated 2/23, but as you can see, Money has them dated 2/20.
I now realize F2O does not need a scrubber for Fidelity. To just stop the date manipulation of the scrubber, comment out this line on or about line 238: ofx=_scrubDateFixToWeekday(ofx) #special for Fidelity to avoid quote dates being late.
I am suggesting that you modify the scrubber and not F2O.py. Commenting out that scrubber line will not interfere with your customizations. It will only remove the date modification that worked around the quirks of the now-gone OFX server.
Also F2O.py from F2O_beta14A.zip is almost the same as F2O2A, and is the same if you are not using options (OPT).
Thank you Cal. something was bad in my uncompiled scrub_cl6.py, so I downloaded your new F2O-freindly scrub_cl7.py that I found in the vofxc6 folder and all seems to be fine now.
I am finally giving F2O a try. I downloaded F2O_beta14A.zip, extracted those files to the new F2O folder, and successfully ran make_new_F2O_DBgather.bat.bat. From what I understand, that batch file should create a new batch file named F2O_DBgather.bat; however, I don’t see this new batch file in the F2O folder. I have not changed any other config files.
I haven't actually used make_new_F2O_DBgather.bat.bat, but is it possible you don't have a xfr folder? By the way, if you no longer have any fidelity ofx files in that folder, DBgather won't do much for you.
Also note that F2O.py will build/update the database for you if you weren’t able to utilize F2O_DBgather.py (it makes some assumptions about whether your investments are mutual funds, stocks, debt, etc., so you should check that it got that info right).
Nice! Do not run PocketSense, because that would delete those files. Maybe make an extra copy of those files.
Do run make_new_F2O_DBgather.bat.bat. Do see https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/ for a good write-up.
Thanks, I have copies saved in another folder. I have run make_new_F2O_DBgather.bat.bat. Should that batch file create a new batch file named F2O_DBgather.bat? If so, where should I find that file?
That new file is not in my F2O folder. These are the contents: Autogen_fresh_F2O_DB_OnceOnly.bat f2.bat F2O.bat.sample1 F2O.py F2O_cfg.py.DEBUG4 F2O_cfg.py.sample1 F2O_cfg.py.special_debugging_example F2O_DB.csv.seed F2O_DBgather.py F2O_FidelityCSV_to_OFX.docx F2O_New_User_intro.doc F2O_optional_advanced_info.txt F2Obeta.docx make_new_F2O_DBgather.bat.bat recent_note.txt vofx6C folder
Please get F2O_beta15A.zip from https://drive.google.com/drive/folders/1-4fBbRxaPhNYZK0gNHuZ3n-Bdoncy2aR It includes two more files than what you have: mk_F2Ops.bat.py and notes_on_F2Ops_batchfile.txt
It also has a newer version of F2O.py, which has some improvements. You should be able to replace your existing files with the files from the zip file. It does not contain F2O_DB.csv nor F2O_CFG.py, so you will not be overwriting the files that are custom to you.
Solved my main problem: I had been working in a OneDrive folder which mimics the User folder. When I switched to the actual C:\Users\name\Documents\F2O folder, I found the F2O_DBgather.bat! Ran that and now I have the new F2O_DB.csv file.
I downloaded the Accounts_History and Portfolio_Positions from Fidelity. I have them saved in both the Downloads folder and the new Documents\Microsoft Money\csv folder (for now).
My new problem is running F20.py or mk_F2Ops_bat.py doesn't seem to do anything: when I run either command, a window pops up for a fraction of a second and closes. I read the blog post and the remarks in each file, but I can't make sense of them.
LAG: I run my batch files in a command window. So I did not make this work as naturally for those who do not use a command window For you to see what is going on when you open the batch file: 1. Change line 18 from "rem timeout /T 15" to "timeout /T 15" without the quotes
2. I suggest you add this line at the end (line 37) which will keep the window open until you hit a key or 60 seconds passes: timeout /T 60
When you make changes, please use Notepad or another program that is text-only. Do not use Word or other program that adds formatting stuff. Let me know if that helps. I will use your info to adjust the mk_F2Ops.bat.py for future users.
Or I could make the changes to mk_F2Ops.bat.py, and post that separately with no problem.
Thanks...I'm using Notepad++ to edit. The timeout was at Line 50 in my version of 'mk_F2Ops.bat.py', but I removed the 'rem', saved it, opened a command window, cd'd to the F2O directory, ran the program... and I got this response:
make a new F2Ops.bat file Dated 2026/3/1 Traceback (most recent call last): File "C:\Users\Lucien\Documents\F2O\mk_F2Ops.bat.py", line 11, in from dateutil.parser import parse ImportError: No module named dateutil.parser
LAG: You got ImportError: No module named dateutil.parser
In https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/ Ameridan has a link for the Active State 2.7.18 Python. That has dateutil pre-loaded. I use Active State.
You should be able to install the dateutil package onto your existing Python 2.7.x install. On Python.org and others, there is a program called pip (package installer for Python. I think Python.org is related to pypi.org
Success! I had to add rem for lines 3 and 4, but then F2O successfully created ofx files for my 3 Fidelity accounts. As a next step, I downloaded the csv files for wife's Fidelity account to the csv folder. I re-ran F2O.py, but it only referenced my three files that were already written. How do I get F2O to process her account?
LAG: There is more than one way. Let me tell you the default way that requires no change in files. This description presumes you two are using the same Windows account. The Microsoft Money (*.mny) file can be shared, and that is how I picture it. F2O always goes for the newest files that meet the pattern.
Log into Fidelity with your login. Load the Accounts_History and Portfolio_Positions (always "All Accounts" which is the default) into your Downloads folder. Run F2O.py or F2Ops.bat. F2Ops.bat feeds the OFX files to PocketSense and those go to the open Money file.
Using the F2Ops.bat, your Fid*.ofx files get moved out of your F2O folder. If you run F2O.py directly, you will have to take care of getting the old Fid*.ofx files out.
Then your wife logs into Fidelity. Your wife loads the Accounts_History and Portfolio_Positions (always "All Accounts) CSVs also into the Downloads folder. Her CSVs are now the newest pair. Run F2O.py or F2Ops.bat. F2Ops.bat feeds your wife's OFX files to PocketSense, and those go to the open Money file.
If you used separate Money files, you would switch to the other file between runs.
Think about the stuff you read in the files and instructions that you downloaded into your Documents/F2O folder and the instructions at https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter What might have confused you. What could have been added or worded differently that would have made this easier for you? This would apply to anybody trying to install. Take notes. Feed back what would have made it go better, so that your experience helps others.
@Cal Learner - I finally got around to using the CL7 file on the Vanguard downloads and it didn't help any. I've done some debugging and there are two different issues that I'll need to take care of: - In my downloaded files is reported as MISC rather than REINVEST. I think I have that fixed. - Each transactions is being listed twice!! Once as a and once as a That one is going to take a bit longer to fix. At least i can manually delete the bogus income transactions from money.
Strangely the duplicated and transactions have almost the same FITID. For instance here are two pairs from one file: 962787599/962780599 and 486885771/486879771
I took the easy way out. I'm just deleting any transaction knowing that in my account everything is set up to reinvest. So an transaction should be a duplicate. This, of course, may not work for everyone.
Carlos: For the duplicated transactions, I would try using a Custom date range for the download to prevent duplication. If you have a suitable *.mbf file, you could restore your Money file, check how far your previously downloaded Vanguard transactions cover, and then do your new Vanguard QFX file download.
I presume that transactions that occurred after your previous download do not have duplicates.
It has been a while since I worked on this. I just read thru vang.txt, and it makes no mention of this. So I presume this is a new thing.
I didnt explain clearly. The oxf file itself has duplicates. It shows each transaction as a *and* as a What is the vang.txt you mention? And yes, it started happening about 4 weeks ago.
vang.txt is part of vofx6c.zip in https://drive.google.com/drive/folders/1-4fBbRxaPhNYZK0gNHuZ3n-Bdoncy2aR If the problem started Feb 24, I did something minor then, but I could have screwed something up. I intend to get to that over the weekend.
Maybe I'm just being particularly dense. I see a vofx.txt and a vang_test_file.qfx inside of the .zip. No vang.txt.
In any case I've never needed to use anything but a simple vanguard scrubber that I wrote years ago. I only have mutual funds and one stock in my vanguard accounts. My scrubber (which I hadn't look in a while) just fixes some issues with units*unitsPrice not equal to the total price.
The new problem started about four weeks ago. When I download the qfx file from Vanguard it started being weird. All my mutual funds are set up to reinvest dividends and gains. Previous qfx files (the last one I saved that worked is from November) had a properly formed tag. The new ones have all reinvestment transactions listed twice (in the file). First entry is a properly formed tag, that Money process as the dividends and gains just going to the cash account. The second entry for the exact same transaction is a malformed tag that has "MISC" as the and therefore gets ignored by Money.
I took your CL7 script and modified it so it would handle the "MISC" replacement. I then just delete the entry. I can do the latter because I know all my income will always be reinvested. That may not work for others. I can send you a snippet of the qfx file if you want. It's just a couple dividend reinvestments so doesn't really give away anything private.
My mistake. I was thinking of vofx.txt. I would very much like to see your snipped/sanitized code, and hope to incorporate it. You could attach to email msm.cal.learner@...
After F2O is out of beta will there be a web page like the original PocketSense Software for Money to help in installing it. I assume if you want to use F2O you would follow the instructions at https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/? Looks quite complicated there. Thanks!
I do cover the development of all of the "modules" leading to the current iteration of F2O in my article, but if you proceed directly to https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/#3 , that should convince you that the program really isn't complicated. I tried to begin most of the other modules with background as to why you might be able to ignore them - including the experimental Selenium script.
Joe, yes. In your case start at module #1. that will create a script to find those ofx files and create your DB, as described in #2. Then you will be set to run #3 ;)
OK. It does only check the C drive as written. If you edit make_new_F2O_DBgather.bat.bat line 11 to change C: to D: then I expect it would find your xfr folder.
Use Notepad or Notepad++ to do the editing.
Line 11 originally contains dir c:\xfr /s /b >F2O_temp_file.tmp
I'm an infrequent user just for Fidelity transactions. After receiving the dreaded "Invalid OFX statement detected", I checked the blog and see the comments that Fidelity has shut down the data server and references to F2O. If possible, could you provide a link to F2O instructions. Very much appreciate all the help you have provided. Regards, WM
Hopefully you find my article helpful @ https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/
I'd like to mention that for ALL of your other bank accounts + credit cards, you might want to check out Jon's "Bank of America - My Financial Picture® (MFP)" csv to ofx converter ;) @ https://microsoftmoneyoffline.wordpress.com/2024/01/19/using-boamfp-aggregator/
@Cal Learner, I found an issue with the F2O tool (beta_16). If a Fidelity transaction description contains &, or if a security name contains & (for example, S&P 500 Fund), the tool can still generate the OFX file. However, when importing that OFX file into MS Money, Money returns the following error: ‘The file you attempted to import appears to be invalid or contains corrupt data.’ If the & is removed from the OFX file, or replaced with &, the file imports successfully.
subscribed to new thread.
ReplyDeleteSubscribing too.
DeleteRobert, best I could find is https://support.google.com/blogger/thread/208096732/how-can-i-increase-comment-limit?hl=en. You can't increase limit, but you can make Load more... more visible.
ReplyDeleteAny one else having trouble with the Vanguard OFX downloads? It seems like they recently switched from using "reinvest" type transactions to just regular "dividend" transactions, even when it is a reinvestment. Not only does Money fail to match past transactions, now a manual entry is needed to create a purchase (or change the dividend to a reinvest dividend)
ReplyDeleteCarlos: I presume you are using Scrub_CL7.py. I had not checked Vanguard lately, and took start of a look. I expect to make changes, and let you know if I make progress. I have some old files saved, and I will check out what it will take to deal with the changes.
DeleteCarlos: I just tried, putting my vanguard *.qfx download into the PocketSense import folder.
DeleteIt imported when I ran getdata.py
Try the Scrub_CL7.py from January in vofx6B.zip in https://drive.google.com/drive/folders/1-4fBbRxaPhNYZK0gNHuZ3n-Bdoncy2aR into your pocketsense folder, replacing the older one.
HOWEVER the FITIDs must have changed, because I got duplicates. Make the Vanguard download not overlap the dates from transactions that are already in Money.
DeleteI will restore a *.mbf file from just before reading in the new vanguard. I
I'll give that a spin this weekend. I have not checked on the FITID, but I have some old files that may allow me to checkit out.
DeleteI don't know if anyone can help me. Before I start trying to install F2O I'm just trying to update my Fidelity accounts manually. I have an account in my Portfolio named IRA Growth Joe. The Contributions ($) show my monthly cash dividends as Dividend : Government Cash Reserves. The last one was 12/31/25 for $3.07. I now want to add one for 01/30/26 for $1.99. When I go to enter the transaction under Investment Transactions, Government Cash Reserves doesn't show in the dropdown of investments. If I type it in it says "Government Cash Reserves is a mutual fund which was previously deleted but is still used in some transactions. Do you want to reuse it? Click Yes to add the investment back to your list of investments." If I answer Yes it says "You have not purchased "Government Cash Reserves" in this Investment Account prior to this date. Are you sure you want to enter this activity?" If I answer Yes and enter it now it shows Government Cash Reserves at the top of the portfolio as well as all of my other portfolios with transactions going back years. If I delete Government Cash Reserves it deletes all of those transactions from my Contributions ($) account. Any suggestions would really be appreciated. Thanks!
ReplyDeleteJoe: If you want the old stuff to remain in the past, rename that old investment to "Old Government Cash Reserves" and blank the symbol. Then you can create a new transaction with "Government Cash Reserves" as the investment. Select to make that a Money Market.
ReplyDeleteIf you don't want "Old Government Cash Reserves" to appear in drop-down lists going forward, you can Delete the investment again.
Deleting "Old Government Cash Reserves", or other investment, should *not* make existing transactions disappear from the Contributions/Cash account.
I renamed "Government Cash Reserves" to "Old Government Cash Reserves". I then entered the dividend of $1.99 as "Government Cash Reserves" and my Contributions ($) shows $685.41 which is correct. Then if I delete "Old Government Cash Reserves" the Contributions ($) account now shows $56.74 which is incorrect and "Government Cash Reserves" shows as investment in the portfolio with $1.99 which I don't want. Thanks!
DeleteJoe: I experimented with a copy of my *.mny file. In a non-watch account I did a buy of 100 of a new investment called "fake mf1" dated 2011. I did a Sell of 100 dated 2012.
DeleteI went to Investing->Portfolio->WorkWithInvestments->DeleteAnInvestment and chose "fake mf1". It worked. If I try to delete an investment that I do not have zero shares of now, it refuses.
The transactions are still in the account for 2011 and 2012. But the investment is not in the dropdown list for new stuff. So I wonder what is different between my test and yours.
If I click on the Investing shortcut at the top I get "Message from webpage Stack overflow at line: 1."
DeleteI came up with a workaround. I ran a report of all the Government Cash Reserves transactions. I then entered matching transactions in only the Cash accounts for each portfolio as a deposit to Fidelity Investments category Investment Income>Interest. I then deleted the Government Cash Reserves fund and all is good.
DeleteThanks for all of your help, Cal and everybody.
Now I'd like to tackle F2O. Can you point me in the right direction to get started? Would that be https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/
This comment has been removed by the author.
ReplyDeletesubscribing
ReplyDeleteCal: Is it the case that F2O does not update the current share price in MSMoney? Just checking to make sure I am not missing something.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteDoesn't seem to be. Hereis the check I ran today.
DeleteI only have one position that has a different price today than it did on Friday.
So I just now downloaded (with all accounts selected), both the Portfolio Positions and Accounts History csv files. I confirmed that Portfolio_Positions.csv had a price for IVV of 684.76 vs the 684.66 (from Feb 13) that was stored in Money.
There are multiple Positions files in my Position Files folder.
I then ran F2O.bat whichcreated the ofx files, followed by GetData to bring the information into Money.
The price in Money did not change -- remained at 684.66
I am using non-default directories. Here is my config file contents:
```
IGNORE_BEFORE_YYYYMMDD="2021231"
DEBUG=0
OVERRIDE_WRITE_FOLDER="C:/Users/ron/Downloads/Microsoft Money/OFX Python Scripts/ofxpy_pocketsense - Copy USAA/import/"
OVERRIDE_HISTORY_FILES="C:/Users/ron/Desktop/fido/Accounts_History*csv"
OVERRIDE_POSITIONS_FILES="C:/Users/ron/Desktop/fido/Portfolio_Positions*csv"
```
Also, my version of F2O.py indicates "Dated 2026/01/26"
DeleteRon: I see the problem too. I had first thought that your question was not about a recent change. I will get on it.
DeleteAs another test, I just deleted the IVV Feb 13 price from MSMoney, but F2O still did not update the price.
DeleteF2O401k1F.py uploaded. This should fix that quotes problem of zero prices, but also get the Friday closing prices right over the weekend. You may want to restore your Money file from a *.mbf that pre-dates the bad prices you got.
DeleteThis comment has been removed by the author.
DeleteCal:
DeleteF2O401K1F.py seems to work with a few caveats.
If there was a previously existing Feb 13 price, it did not overwrite
I could see on the Downloads page that it had the correct price there, but that did not get propagated when there was a previous price entered on that date.
When I deleted that price (in the Update Manually dialog) and reran f2o and getdata, the price updated.
2. In the "Update price manually" dialog, this price is flagged as "Updated" whereas other prices (downloaded using Gaier Software's MSMoneyQuotes) is flagged as "Online".
Hopefully it should continue to work going forward.
Thanks again.
Ron, expected operation is that only the price for the previous close be provided, and that the date for that previous closed time time is used. That comes in by OFX. Once that happens, another price for that date will be ignored. So if there was a previous Feb 13, quote, it does not get overridden. That is how Money works. If there was a different earlier quote, it probably would have been the Feb 12 close written by an earlier flawed version. I hope to only have correct closes going forward, but let me know if that goal is not met.
Deletehttps://finance.yahoo.com/quote/MSFT/history/ is my favorite way to look at past closing prices. Just swap out MSFT for a different symbol if looking at a different stock.
MSMoneyQuotes sends the quotes via a different mechanism. It can be overwritten. So you could run it many times per day.
I have three periods I recognize: before market opens, market is open, and market was open today but has closed. If you note an anomaly, note the "Date downloaded Feb-15-2026 3:40 p.m ET" in the last line of the Portfolio_Positions_Feb-15-2026.csv (for example) file.
Special note: markets are closed today, Feb 16. While I had toyed with looking up the market schedule, I took the expedient. So there should ideally not be a Feb 16 quote. To achieve that, do not get new Fidelity CSVs from 4pm ET today Monday, until after 4pm ET Tuesday.
Cal, in case this proves helpful...
ReplyDeleteUpon close inspection, I see that 2/9 and 2/10 values for all my investments were 0.00 - not sure what version of f2o.py I was on then, but my current version is the 401kD test file you sent me, and I just verified that the values are coming through properly.
-ameridan
Cal: How to handle Ffidelity account transfers (within Fidelity)
ReplyDeleteYesterday I transferred our three IRA accounts at Fidelity into managed accounts at Fidelity. At Fidelity, the process transferred the assets of each of our original IRA accounts into a corresponding Managed account (with a different account number).
Using F2O, how should this best be handled?
Thanks,
Ron
Thanks
Ron
I would first add the managed accounts to Money, and Fidelity will provide journal entries for all of the asset transfers. If you want the transfers to actually be recorded as transfers, it might be best to do so manually. F2O will then bring the journal entries in and match up to your transfers.
ReplyDeleteRon, keep a copy of the money file, or be prepared to restore from one your (I hope many) *.mbf files.
ReplyDeleteF2O_beta14.zip uploaded. That version several improvements, and I would encourage using at least the F2O.py from that zip file. It incorporates the feature of the ones with 401k in the name and more.
So I am curious what happens if you just make all of the OFX files and submit them to Money. But in practice, what I have done when moving from one broker to another and moving everything, is to rename the account and change the account number.
Then only send the new account OFX to Money... not sure. Please experiment. Take notes. Report your findings.
I guess I would like to know what lines/rows are in the batch file regarding the transfer... but when you import the new account Money may ask where it goes. Say the single account if you go that route.
I could see playing with IGNORE_BEFORE_YYYYMMDD="20260219" or whatever to avoid having to re-deal with the transfer entries.
Also I suggest DEBUG=1. That may cause you to get F2O_logged_a_note.csv to have entries that list things that F2O ignored. That file pre-redacts the account name and account number. It does not redact amounts. So anyway, things listed there are ignored. Maybe they should be turned into something in the future, or maybe ignored quietly.
Cal: "what I have done when moving from one broker to another and moving everything, is to rename the account and change the account number."
DeleteBut I am not moving from one broker to another. Rather I am moving the assets from three established Fidelity accounts to three new Fidelity accounts.
In the new account, those assets will be sold and new assets purchased.
And the sale/purchase has occurred, but the new purchases have yet to clear (and these new purchases don't show up in the csv download yet). So I will wait to do anything until things clear.
I tried doing things today and things seemed screwy. So I went back to my backup.
Right now, MSMoney has the new accounts listed but with a zero balance.
Ron: How do you want Money to look?
DeleteI think you now have 3 new real accounts that hold everything or nearly everything. I think you have 3 old real accounts that are empty, or nearly empty.
IMO, moving AccountA contents to AccountAA, and AccountB contents to Account BB, etc, is functionally similar to moving accounts between brokers.
So how to reflect this in Money? One way is to enter share transfers from old to new as they really happened. The other way is to treat the new accounts as continuations of the old accounts with a new account number. Both ways work. Both have their advantages.
I don't know what is in your Accounts_History*.csv to reflect the transfers.
On a different topic, I think I need to update scrub_cl7.py to not back up the dates of quotes if using F2O.py to provide the Fidelity OFX files. F2O does the dates right itself, and applying the corrections needed with the Fidelity*.ofx files that came from Fidelity are no longer desirable. There may still be functions appropriate, or maybe just do no scrubbing of the Fid*.ofx files put into the PocketSense import folder is appropriate. There is still scrubbing appropriate for Vanguard and probably others.
Cal: I'd like to see the three old accounts with zero balance; and the new accounts with the appropriate balances and holdings.
DeleteThis process almost worked, except it added the new holdings in the new accounts as "Add Shares" instead of Buys:
1. Added new accounts
2. Changed IGNOREDATEBEFORE to ignore transactions before the transfer.
3. Downloaded fido positions and transactions csv
4. Ran f2o
a. Got prompted to set the TYPE of position for the new stocks
b. And also whether to USE it or not to update the DB
c. I chose to Use it in order to write that in permanently
5. Ran GetData
6. In the old accounts, there were Remove Shares entries
7. In the new accounts, for the new positions, they were added with Add Shares entries
8. In the new accounts, for the positions that had been transferred from the old account, there was both an Add Shares entry and then a Sell entry (as they were sold in the new account)
9. At the end of all this, the positions in the new accounts were correct, but the cash balance was way to high.
10. I’m thinking this discrepancy is due to the fact that the positions from the old account were sold (and went into the associated cash account) whereas the new positions were merely added instead of purchased).
11. Not sure of the best way to correct this. Hoping I don’t have to do it all manually.
This comment has been removed by the author.
DeleteLooking more closely, it seems that:
Delete1. For the old accounts, all of the positions were removed via Remove Shares
2. For the new accounts, all of the NEW positions were added using Add Shares
3. In the new accounts, a very few (but not all) of the positions from the old accounts show up as an Add Shares, followed by a Sell.
4. The other old positions that were transferred to the new accounts, even though they were sold in the new accounts, don’t show up at all.
5. I am thinking I may have edit things by
a. Changing the Add Positions in the new accounts to Buys
b. Changing the moving of positions from old to new as Transfer Out/In
c. Adding the missing sales in the new accounts.
If F2O generated AddShares and RemoveShares for the same securities, especially for a taxable account, I would void those. Replace the pair with a TransferOut or a TransferIn, depending on which account you want to enter the transaction. Void has the advantage that later downloads will ignore the same AddShares or RemoveShares. Another way to avoid re-downloading Deleted transactions is to use the IGNORE_BEFORE_YYYYMMDD to exclude past stuff.
ReplyDeleteThat is pretty much what you proposed.
AddShares does not consume cash, and Buy does. RemoveShares does not increase cash, and Sell does.
Cash may also get transferred.
These are non-taxable accounts.
ReplyDeleteThere may have been some timing issue.
I restored a backup and ran everything again.
This time, for two of the old accounts, which only had one or two postions, the positions were
1. Removed from Account A
2. Added to Account B
3. Sold in Account B
4. And the balances in Money matched Fidelity
But for the third account, which had seven or eight positions
1. All eight were removed from Account A
2. Only two were presented to me for being a sale (and they got added to Account B in order to make the sale)
3. The other half-dozen were NOT presented to me for being a sale, even though there is an appropriate SELL transaction in the OFX file generated by F2O.
I don't understand why the first two accounts worked and the third did not.
Comparing, in the OFX files, a successful vs a failed sell, the only entries that differ are the ones you would expect to differ:
Any thoughts?
This comment has been removed by the author.
DeleteThe fields that differ:
Delete<FITID>
<MEMO>
<UNIQUEID>
<UNITS>
<UNITPRICE>
<TOTAL>
Here is the (anonymized) relevant part of Accounts CSV. It shows the transfers out of the "FROM Account" and into the "TO Account" along with a Sale in the "TO Account" for the Stock/ETF positions.
DeleteThe core money account is FDRXX and that shows a PURCHASE and REDEMPTION transaction.
In MSMoney, the remove shares is apparently triggered by the fact that "0 shares are shown on the statement".
And for IVV and AGG, where the SELLs show up in the TO account, an ADD Shares is triggered by the fact that there are zero shares in the TO account at the time of the SELL.
In Money, upon import, none of the stock/ETF transfers were present
Only the sales of AGG and IVV were shown in the TO Account
Hopefully, this link will open a sanitized version of the data in Accounts.csv for one pair of to/from accounts:
https://1drv.ms/x/c/8edb73c8a1a37a69/IQCUnxzgRPBTTJb_IUrClAGoAQiPnObSu7J3SBoIrfz7e9s?e=cO0iW2
Cal: Finally done. This was my process for any who might need it in the future for the particular situation where one account is transferred in kind completely to another account:
Delete1. Set up new Fidelity accounts
2. In a portfolio view organized by account, right click on the account name to bring up a menu to transfer the account to another account.
a. Money transfers the holdings as Transfer OUT/IN and the Cash as a cash transfer
3. Ran F2O on a fresh batch of Fidelity account history and position downloads
4. Ran GetData
5. Seemed to go OK EXCEPT the Sell transactions for the positions which had been transferred into the new accounts did not show up (Except for the IVV and AGG holdings as I mentioned before).
a. Since there were only five of these, it was easy enough to do it manually.
6. All the BUY transactions in the new account showed up as they should have.
I don’t see any reason why those particular SELL transactions shouldn’t have shown up in Money.
I have saved files and will sanitize them if you want to look into this any further.
Ron
Since I started using F2O for a couple of weeks, I have noticed F2O is dropping certain transactions listed in the downloaded csv file from Fidelity when creating the .ofx files. Just using F20, not getdata processing after that. I have taken a close look at the transactions and I don't see any logical reason.
Delete1. It seems to happen to the same 6-8 ETFs. I have taken a look at the generated DB and don't see anything unusual about these ETFs. Moreover, if there are multiple transactions in these ETFs, one of them makes it to .ofx file but one doesn't. Sometimes the earlier one, sometimes the later one.
2. The dropped transaction dates can be in the middle of the range. So, not a boundary condition of the date range. Other ETF transactions in the same date range go through fine. Not related to any settlement date either.
3. There might be other assumptions in F2O that my activity history may be violating but nothing I can determine.
Any thoughts on how to help debug this problem?
GV: It is not clear to me from what you wrote but did you also examine the actual OFX files generated? I have a bunch of SELL transactions that F2O actually put into the OFX files, but Money did not enter those transactions when I ran GetData. There were two ETF's where the SELL's went through, and five where they did not. But they were all in the OFX file.
DeleteGV: If you set DEBUG=1 (in F2O_cfg.py, F2O will generate a F2O_logged_a_note.csv file if any history line is ignored because F2O did not know how deal with it, but was not ignoring the line on purpose. Some lines are ignored on purpose, such as LOAN RETURNED|YOU LOANED|JOURNALED |...CREASE COLLATERAL, so those don't get logged.
DeleteThat was added to F2O.py at beta13B and continues. F2O_logged_a_note.csv file entries have the account name and number redacted already. It is intended that you could copy a few lines from that file and post.
F2O_logged_a_note.csv can be deleted. It will only grow with uses unless you delete it. So what I would like to know is what history line is being ignored, and what Money thing do you think it should be generating.
Cal. I use a customized scrub_cl6.py for my Fidelity transactions, and in conjunction with F2O, it seems my quote prices are backed up 2+ days. Not a big deal, but I was wondering if F2O could have a setting to leave the dates alone, for those of us using a Fidelity scrubber. I downloaded history and positions today (2/24/2026), so I would expect the price quotes to be dated 2/23, but as you can see, Money has them dated 2/20.
ReplyDeletehttps://microsoftmoneyoffline.wordpress.com/wp-content/uploads/2010/05/quote.png
I now realize F2O does not need a scrubber for Fidelity. To just stop the date manipulation of the scrubber, comment out this line on or about line 238:
ReplyDeleteofx=_scrubDateFixToWeekday(ofx) #special for Fidelity to avoid quote dates being late.
That string doesn't seem to exist in the version you asked me to run - Dated 2026/2/18 F2O2A for debugging
ReplyDeleteAm I using the wrong version?
I am suggesting that you modify the scrubber and not F2O.py. Commenting out that scrubber line will not interfere with your customizations. It will only remove the date modification that worked around the quirks of the now-gone OFX server.
ReplyDeleteAlso F2O.py from F2O_beta14A.zip is almost the same as F2O2A, and is the same if you are not using options (OPT).
Thank you Cal. something was bad in my uncompiled scrub_cl6.py, so I downloaded your new F2O-freindly scrub_cl7.py that I found in the vofxc6 folder and all seems to be fine now.
ReplyDeleteI am finally giving F2O a try. I downloaded F2O_beta14A.zip, extracted those files to the new F2O folder, and successfully ran make_new_F2O_DBgather.bat.bat. From what I understand, that batch file should create a new batch file named F2O_DBgather.bat; however, I don’t see this new batch file in the F2O folder. I have not changed any other config files.
ReplyDeleteI haven't actually used make_new_F2O_DBgather.bat.bat, but is it possible you don't have a xfr folder? By the way, if you no longer have any fidelity ofx files in that folder, DBgather won't do much for you.
ReplyDeleteAlso note that F2O.py will build/update the database for you if you weren’t able to utilize F2O_DBgather.py (it makes some assumptions about whether your investments are mutual funds, stocks, debt, etc., so you should check that it got that info right).
I have the xfr folder, and it contains the three ofx files for my Fidelity accounts; they're all dated 1/16/26.
DeleteMake sure that those files contain <INFO and arebigger than 1k, rather than <SEVERITY>ERROR and are under 1k.
DeleteYes, I have INFOSUCCESS, and the files sizes are 54KB, 63KB and 65KB.
DeleteNice! Do not run PocketSense, because that would delete those files. Maybe make an extra copy of those files.
DeleteDo run make_new_F2O_DBgather.bat.bat. Do see https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/ for a good write-up.
Thanks, I have copies saved in another folder. I have run make_new_F2O_DBgather.bat.bat. Should that batch file create a new batch file named F2O_DBgather.bat? If so, where should I find that file?
Deletein the F2O folder.
DeleteThat new file is not in my F2O folder. These are the contents:
DeleteAutogen_fresh_F2O_DB_OnceOnly.bat
f2.bat
F2O.bat.sample1
F2O.py
F2O_cfg.py.DEBUG4
F2O_cfg.py.sample1
F2O_cfg.py.special_debugging_example
F2O_DB.csv.seed
F2O_DBgather.py
F2O_FidelityCSV_to_OFX.docx
F2O_New_User_intro.doc
F2O_optional_advanced_info.txt
F2Obeta.docx
make_new_F2O_DBgather.bat.bat
recent_note.txt
vofx6C folder
Please get F2O_beta15A.zip from https://drive.google.com/drive/folders/1-4fBbRxaPhNYZK0gNHuZ3n-Bdoncy2aR It includes two more files than what you have: mk_F2Ops.bat.py and notes_on_F2Ops_batchfile.txt
DeleteIt also has a newer version of F2O.py, which has some improvements. You should be able to replace your existing files with the files from the zip file. It does not contain F2O_DB.csv nor F2O_CFG.py, so you will not be overwriting the files that are custom to you.
Solved my main problem: I had been working in a OneDrive folder which mimics the User folder. When I switched to the actual C:\Users\name\Documents\F2O folder, I found the F2O_DBgather.bat! Ran that and now I have the new F2O_DB.csv file.
DeleteI downloaded the Accounts_History and Portfolio_Positions from Fidelity. I have them saved in both the Downloads folder and the new Documents\Microsoft Money\csv folder (for now).
DeleteMy new problem is running F20.py or mk_F2Ops_bat.py doesn't seem to do anything: when I run either command, a window pops up for a fraction of a second and closes. I read the blog post and the remarks in each file, but I can't make sense of them.
DeleteLAG: I run my batch files in a command window. So I did not make this work as naturally for those who do not use a command window For you to see what is going on when you open the batch file:
Delete1. Change line 18 from "rem timeout /T 15" to "timeout /T 15" without the quotes
2. I suggest you add this line at the end (line 37) which will keep the window open until you hit a key or 60 seconds passes:
timeout /T 60
When you make changes, please use Notepad or another program that is text-only. Do not use Word or other program that adds formatting stuff.
Let me know if that helps. I will use your info to adjust the mk_F2Ops.bat.py for future users.
Or I could make the changes to mk_F2Ops.bat.py, and post that separately with no problem.
Thanks...I'm using Notepad++ to edit. The timeout was at Line 50 in my version of 'mk_F2Ops.bat.py', but I removed the 'rem', saved it, opened a command window, cd'd to the F2O directory, ran the program... and I got this response:
Deletemake a new F2Ops.bat file Dated 2026/3/1
Traceback (most recent call last):
File "C:\Users\Lucien\Documents\F2O\mk_F2Ops.bat.py", line 11, in
from dateutil.parser import parse
ImportError: No module named dateutil.parser
LAG: You got
DeleteImportError: No module named dateutil.parser
In https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/ Ameridan has a link for the Active State 2.7.18 Python. That has dateutil pre-loaded. I use Active State.
You should be able to install the dateutil package onto your existing Python 2.7.x install. On Python.org and others, there is a program called pip (package installer for Python. I think Python.org is related to pypi.org
https://pypi.org/project/python-dateutil/
pip install python-dateutil
Success! I had to add rem for lines 3 and 4, but then F2O successfully created ofx files for my 3 Fidelity accounts.
DeleteAs a next step, I downloaded the csv files for wife's Fidelity account to the csv folder. I re-ran F2O.py, but it only referenced my three files that were already written. How do I get F2O to process her account?
LAG: There is more than one way. Let me tell you the default way that requires no change in files. This description presumes you two are using the same Windows account. The Microsoft Money (*.mny) file can be shared, and that is how I picture it. F2O always goes for the newest files that meet the pattern.
DeleteLog into Fidelity with your login. Load the Accounts_History and Portfolio_Positions (always "All Accounts" which is the default) into your Downloads folder. Run F2O.py or F2Ops.bat. F2Ops.bat feeds the OFX files to PocketSense and those go to the open Money file.
Using the F2Ops.bat, your Fid*.ofx files get moved out of your F2O folder. If you run F2O.py directly, you will have to take care of getting the old Fid*.ofx files out.
Then your wife logs into Fidelity. Your wife loads the Accounts_History and Portfolio_Positions (always "All Accounts) CSVs also into the Downloads folder. Her CSVs are now the newest pair. Run F2O.py or F2Ops.bat. F2Ops.bat feeds your wife's OFX files to PocketSense, and those go to the open Money file.
If you used separate Money files, you would switch to the other file between runs.
Think about the stuff you read in the files and instructions that you downloaded into your Documents/F2O folder and the instructions at https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter What might have confused you. What could have been added or worded differently that would have made this easier for you? This would apply to anybody trying to install. Take notes. Feed back what would have made it go better, so that your experience helps others.
@Cal Learner - I finally got around to using the CL7 file on the Vanguard downloads and it didn't help any. I've done some debugging and there are two different issues that I'll need to take care of:
ReplyDelete- In my downloaded files is reported as MISC rather than REINVEST. I think I have that fixed.
- Each transactions is being listed twice!! Once as a and once as a That one is going to take a bit longer to fix. At least i can manually delete the bogus income transactions from money.
Strangely the duplicated and transactions have almost the same FITID. For instance here are two pairs from one file: 962787599/962780599 and 486885771/486879771
I took the easy way out. I'm just deleting any transaction knowing that in my account everything is set up to reinvest. So an transaction should be a duplicate. This, of course, may not work for everyone.
DeleteCarlos: I expect to review this in the next few days.
DeleteCarlos: For the duplicated transactions, I would try using a Custom date range for the download to prevent duplication. If you have a suitable *.mbf file, you could restore your Money file, check how far your previously downloaded Vanguard transactions cover, and then do your new Vanguard QFX file download.
ReplyDeleteI presume that transactions that occurred after your previous download do not have duplicates.
It has been a while since I worked on this. I just read thru vang.txt, and it makes no mention of this. So I presume this is a new thing.
I didnt explain clearly. The oxf file itself has duplicates. It shows each transaction as a *and* as a What is the vang.txt you mention? And yes, it started happening about 4 weeks ago.
Deletevang.txt is a file in v q
Deletevang.txt is part of vofx6c.zip in https://drive.google.com/drive/folders/1-4fBbRxaPhNYZK0gNHuZ3n-Bdoncy2aR If the problem started Feb 24, I did something minor then, but I could have screwed something up. I intend to get to that over the weekend.
DeleteMaybe I'm just being particularly dense. I see a vofx.txt and a vang_test_file.qfx inside of the .zip. No vang.txt.
DeleteIn any case I've never needed to use anything but a simple vanguard scrubber that I wrote years ago. I only have mutual funds and one stock in my vanguard accounts. My scrubber (which I hadn't look in a while) just fixes some issues with units*unitsPrice not equal to the total price.
The new problem started about four weeks ago. When I download the qfx file from Vanguard it started being weird. All my mutual funds are set up to reinvest dividends and gains. Previous qfx files (the last one I saved that worked is from November) had a properly formed tag. The new ones have all reinvestment transactions listed twice (in the file). First entry is a properly formed tag, that Money process as the dividends and gains just going to the cash account. The second entry for the exact same transaction is a malformed tag that has "MISC" as the and therefore gets ignored by Money.
I took your CL7 script and modified it so it would handle the "MISC" replacement. I then just delete the entry. I can do the latter because I know all my income will always be reinvested. That may not work for others. I can send you a snippet of the qfx file if you want. It's just a couple dividend reinvestments so doesn't really give away anything private.
My mistake. I was thinking of vofx.txt. I would very much like to see your snipped/sanitized code, and hope to incorporate it. You could attach to email msm.cal.learner@...
DeleteThis comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
DeleteAfter F2O is out of beta will there be a web page like the original PocketSense Software for Money to help in installing it. I assume if you want to use F2O you would follow the instructions at https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/? Looks quite complicated there. Thanks!
ReplyDeleteI do cover the development of all of the "modules" leading to the current iteration of F2O in my article, but if you proceed directly to https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/#3 , that should convince you that the program really isn't complicated. I tried to begin most of the other modules with background as to why you might be able to ignore them - including the experimental Selenium script.
ReplyDeleteThank you. I do have Fidelity .ofx files from 03/20/25 and 11/20/25. Will that help me out at all?
ReplyDeleteJoe, yes. In your case start at module #1. that will create a script to find those ofx files and create your DB, as described in #2. Then you will be set to run #3 ;)
ReplyDeleteThanks!
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteGiving F2O a try. Ran make_new_F2O_DBgather.bat.bat. Got:
ReplyDelete"Looking for your PocketSense xfr folder, so this may take a while:
File Not Found
Failed to find the PocketSense xfr folder, so aborting
Waiting for 46 seconds, press a key to continue ..."
My xfr folder is on my D: drive in Microsoft Money>OFX Scripts>xfr.
OK. It does only check the C drive as written. If you edit make_new_F2O_DBgather.bat.bat line 11 to change C: to D: then I expect it would find your xfr folder.
DeleteUse Notepad or Notepad++ to do the editing.
Line 11 originally contains
dir c:\xfr /s /b >F2O_temp_file.tmp
This comment has been removed by the author.
DeleteOK. That worked. On to Step 3. Ran F2O_py and get
ReplyDeleteC:\Users\joegi\Documents\F2O>F2O.py
F2O Fidelity-specific CSV 2 OFX converter Dated 2026/3/11
Traceback (most recent call last):
File "C:\Users\joegi\Documents\F2O\F2O.py", line 20, in
from dateutil.parser import parse
ImportError: No module named dateutil.parser
See the last couple posts dated March 8, 2026
DeleteI'm an infrequent user just for Fidelity transactions. After receiving the dreaded "Invalid OFX statement detected", I checked the blog and see the comments that Fidelity has shut down the data server and references to F2O. If possible, could you provide a link to F2O instructions.
ReplyDeleteVery much appreciate all the help you have provided.
Regards,
WM
Hopefully you find my article helpful @
ReplyDeletehttps://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/
I'd like to mention that for ALL of your other bank accounts + credit cards, you might want to check out Jon's "Bank of America - My Financial Picture® (MFP)" csv to ofx converter ;) @
https://microsoftmoneyoffline.wordpress.com/2024/01/19/using-boamfp-aggregator/
@Cal Learner, I found an issue with the F2O tool (beta_16). If a Fidelity transaction description contains &, or if a security name contains & (for example, S&P 500 Fund), the tool can still generate the OFX file. However, when importing that OFX file into MS Money, Money returns the following error: ‘The file you attempted to import appears to be invalid or contains corrupt data.’ If the & is removed from the OFX file, or replaced with &, the file imports successfully.
ReplyDelete