Saturday, February 7, 2026

Comments (continued)

The last post reached the (why?) 200 comment threshold, so starting a new one.

121 comments:

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

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

    ReplyDelete
    Replies
    1. 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.

      Delete
    2. 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.

      Delete
    3. 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

      Delete
    4. 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.

      Delete
  3. 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!

    ReplyDelete
  4. 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.

    ReplyDelete
    Replies
    1. 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!

      Delete
    2. 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.

      Delete
    3. If I click on the Investing shortcut at the top I get "Message from webpage Stack overflow at line: 1."

      Delete
    4. 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/

      Delete
  5. This comment has been removed by the author.

    ReplyDelete
  6. Cal: 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.

    ReplyDelete
  7. This comment has been removed by the author.

    ReplyDelete
    Replies
    1. Doesn't seem to be. Hereis the check I ran today.

      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"
      ```

      Delete
    2. Also, my version of F2O.py indicates "Dated 2026/01/26"

      Delete
    3. Ron: I see the problem too. I had first thought that your question was not about a recent change. I will get on it.

      Delete
    4. As another test, I just deleted the IVV Feb 13 price from MSMoney, but F2O still did not update the price.

      Delete
    5. 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.

      Delete
    6. 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.

      Delete
  8. 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.

    -ameridan

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

    Using F2O, how should this best be handled?

    Thanks,
    Ron
    Thanks
    Ron

    ReplyDelete
  10. 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.

    ReplyDelete
  11. 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.

    ReplyDelete
    Replies
    1. 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.

      Delete
    2. 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.

      Delete
    3. 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.

      Delete
    4. This comment has been removed by the author.

      Delete
    5. 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.

      Delete
  12. 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.

    Cash may also get transferred.

    ReplyDelete
  13. 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:








    Any thoughts?

    ReplyDelete
    Replies
    1. This comment has been removed by the author.

      Delete
    2. The fields that differ:
      <FITID>
      <MEMO>
      <UNIQUEID>
      <UNITS>
      <UNITPRICE>
      <TOTAL>

      Delete
    3. 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

      Delete
    4. 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

      Delete
    5. 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.

      Any thoughts on how to help debug this problem?

      Delete
    6. 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.

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

      Delete
  14. 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.

    https://microsoftmoneyoffline.wordpress.com/wp-content/uploads/2010/05/quote.png

    ReplyDelete
  15. 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.

    ReplyDelete
  16. That string doesn't seem to exist in the version you asked me to run - Dated 2026/2/18 F2O2A for debugging

    Am I using the wrong version?

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

    ReplyDelete
  18. 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.

    ReplyDelete
  19. 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.

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

    ReplyDelete
    Replies
    1. I have the xfr folder, and it contains the three ofx files for my Fidelity accounts; they're all dated 1/16/26.

      Delete
    2. Make sure that those files contain <INFO and arebigger than 1k, rather than <SEVERITY>ERROR and are under 1k.

      Delete
    3. Yes, I have INFOSUCCESS, and the files sizes are 54KB, 63KB and 65KB.

      Delete
    4. 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.

      Delete
    5. 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?

      Delete
    6. 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

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

      Delete
    8. 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.

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

      Delete
    10. 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.

      Delete
    11. 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.

      Delete
    12. 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

      Delete
    13. 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

      https://pypi.org/project/python-dateutil/

      pip install python-dateutil

      Delete
    14. 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?

      Delete
    15. 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.

      Delete
  21. @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

    ReplyDelete
    Replies
    1. 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.

      Delete
    2. Carlos: I expect to review this in the next few days.

      Delete
  22. 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.

    ReplyDelete
    Replies
    1. 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.

      Delete
    2. vang.txt is a file in v q

      Delete
    3. 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.

      Delete
    4. 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.

      Delete
    5. 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@...

      Delete
  23. This comment has been removed by the author.

    ReplyDelete
    Replies
    1. This comment has been removed by the author.

      Delete
  24. 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!

    ReplyDelete
  25. 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.

    ReplyDelete
  26. Thank you. I do have Fidelity .ofx files from 03/20/25 and 11/20/25. Will that help me out at all?

    ReplyDelete
  27. 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 ;)

    ReplyDelete
  28. This comment has been removed by the author.

    ReplyDelete
  29. Giving F2O a try. Ran make_new_F2O_DBgather.bat.bat. Got:

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

    ReplyDelete
    Replies
    1. 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

      Delete
    2. This comment has been removed by the author.

      Delete
  30. OK. That worked. On to Step 3. Ran F2O_py and get

    C:\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

    ReplyDelete
    Replies
    1. See the last couple posts dated March 8, 2026

      Delete
    2. Thanks. Ran F2O.py and now get:

      "REINVESTMENT FIDELITY GOVERNMENT CASH RESERVES (FDRXX) (Cash)",FDRXX,"FIDELITY GOVERNMENT CASH RESERVES",Cash,1,2.57,,,,-2.57,\n')
      Can now add a new F2O_DB.csv entry. I suggest MF
      Inputs are not case-sensitive. Do not use quote characters, but do press Enter.
      Enter one of ('MF', 'STOCK', 'OTHER', 'OPT', 'DEBT') :OTHER

      MF, STOCK and OTHER get NameError: name is not defined

      Delete
    3. I added FDRXX and SPAXX to F2O_DB.csv and now get the same error for FXAIX (Fidelity 500 Index Fund). I don't see a code for that in F2O_DB.csv.seed.

      Delete
    4. I don't think Cal accommodated reinvested dividends. Money doesn't deal well with them either - from my article:
      “Reinvest Dividend” not showing up at all in your tax file exports (and other reports) – instead, use the dual-entry method: a “Dividend” transaction, followed by a “Buy” transaction.

      He'll probably add that logic to F2O.

      Delete
  31. 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

    ReplyDelete
  32. 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/

    ReplyDelete
    Replies
    1. Using the reference you mentioned and created the file
      F2O_DBgather.bat that is shown here:
      cd "%USERPROFILE%\documents\F2O"
      python F2O_DBgather.py "c:\xfr\FIDELITY20260102153755161102.ofx" %1
      Upon running F2O_DBgather.bat by double clicking, obtained a brief flash, but nothing was created.
      Am I correct that the file F2O_DB.csv should have appeared in the F2O folder?
      I'm using Anaconda2 2019.10 (Python 2.7.16 64-bit) stored in "C:\Users\wm\Anaconda2"
      .py files are associated with python.exe
      Thank you
      wm

      Delete
    2. wm:
      To avoid the brief flash, please open a command window. Then do cd "%USERPROFILE%\documents\F2O"
      or
      cd C:\Users\wm\documents\F2O



      If you do not yet have F2O_DB.csv, I suggest you do this in a command window. Then type or paste the commands into that window. One way is open a command window is to do WindowsKey+R and entering "cmd":

      cd "%USERPROFILE%\documents\F2O"
      copy F2O_DB.csv.seed F2O_DB.csv

      Windows Terminal can also serve instead of command/cmd, but I would have a harder time telling you how to open Windows Terminal.

      https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/#1 also has this: Would you like a cmd window preset for running F2O files? Create a desktop shortcut (I called mine “F2O cmd”) using this as an example as the target ....

      I can copy and paste to and from a Terminal window or a cmd/command window. I will let you search that out if you care to learn about that, but note that normally you only run F2O_DBgather.py once. So becoming proficient at these DOS-looking windows is not something you need to do on a longer term basis.

      That will give a starting point including a header that may be useful if you ever edit your F2O_DB.csv file. F2O_DBgather.py appends to F2O_DB.csv if it already exists.


      1. Do you only have one FIDELITY*.ofx file?
      2. If you enter
      dir "c:\xfr\"
      does it find that one file and give you a date and size? If so, what is the size? If there is more than one FIDELITY*.ofx file there, then you will want to specify the folder/directory, rather than a single filename. Based on what make_new_F2O_DBgather.bat.bat generated, I expect there is only one file, but let's check anyway.

      If there is more than one file, usually I would expect the .bat file to point to the xfr folder rather than the specific file.

      If you have more than one FIDELIY*.file in that folder, make your batch file line be

      python F2O_DBgather.py "c:\xfr\" %1

      IIRC, that backslash after xfr is optional.

      If you invoke the batch file as "F2O_DBgather.bat 2" without the quotes, you will get DEBUG level = 2. I am not confident that the extra writing to the screen will be helpful, but it is possible.

      If not using a command window to run a batch file, you might want to add this line as a new last last line of the *.bat:
      timeout /t 60

      The window should stay open until you press a key or 60 seconds, whichever comes first.

      TIMEOUT /T 300 /NOBREAK
      would ignore key presses, and stay open for 300 seconds, allowing you to use your mouse wheel to look back, and maybe copy some stuff from the screen.

      As you go, please take notes on what documentation you used and how it could have been less confusing or more accurate.

      But bottom line, yes, if there was a good FIDELITY*.ofx file in c:\xfr\, F2O_DB.csv should have been created.

      Delete
    3. Cal . . . I typed the following in a CMD window
      C:\Users\wm\Documents\F2O>python F2O_DBgather.py "c:\xfr\FIDELITY20260102153755161102.ofx" %1
      and received this error.
      "Python was not found; run without arguments to install from the Microsoft Store, or disable this shortcut from Settings > Apps > Advanced app settings > App execution aliases."
      It doesn't recognize "Python", but I have it installed. I'm using Anaconda2 2019.10 (Python 2.7.16 64-bit) stored in "C:\Users\wm\Anaconda2"
      .py files are associated with python.exe

      I then disabled the App execution aliases "App Installer" and typed this:
      C:\Users\wm\Documents\F2O>python F2O_DBgather.py "c:\xfr\FIDELITY20260102153755161102.ofx" %1 and received this error:
      'python' is not recognized as an internal or external command, operable program or batch file.

      Lastly I tried the command eliminating the word "Python":
      C:\Users\wm\Documents\F2O>F2O_DBgather.py "c:\xfr\FIDELITY20260102153755161102.ofx" %1
      and received this response:
      F2O F2O_DBgather.py Dated 2026/2/1 improved2
      ('no-params error ', ['C:\\Users\\wm\\Documents\\F2O\\F2O_DBgather.py'])
      No parameter was passed

      F2O_DB.csv was not created.
      Note I only have one Fidelity cvx file in folder xfr

      I appreciate your help, but I might be a hopeless case, so I would fully understand if you had better things to do with your time.
      Regards,
      wm

      Delete
    4. I use Active State Python 2.7.18. There is a link for that on https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/

      That version includes the various Python library modules needed.

      To use your current version, you might have to create python.bat with the contents customized to your Python installation.

      Delete
  33. @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
    Replies
    1. I'm pretty sure Cal's pocketsense scrubber "scrub_CL7.py" addresses this (assuming you use pocketsense).

      Delete
    2. Pocketsense scrubber.py actually does that ampersand scrubbing-- not scrub_CL7.py. But that Pocketsense scrubbing could still fix fix that problem. I was not able to find the non-escaped ampersands directly from F2O-produced Fid*.ofx myself. I suspect that is because my F2O_DB.csv ampersands are escaped. But I would be eager to see more reports, and whether the F2O_DB.csv had non-escaped ampersands.

      Delete
    3. The ampersands are not just coming from F2O_DB.csv. I have a Fidelity Cash Management account, and some of the transaction descriptions include ampersands as well. That’s where I first discovered the issue. The ampersands in F2O_DB.csv are there because I manually added those entries.

      Delete
  34. This comment has been removed by the author.

    ReplyDelete
  35. mystery person:
    I was not able to replicate that. The F2O_DB.csv is not supposed to have unescaped ampersands, and mine does not.

    In a command window, this windows command should show lines in the database that have ampersands.
    findstr "&" F2O_DB.csv

    That said, I expect to put out beta16A.zip to that can work around that as far as MEMOs go. I am thinking there would be other consequences of having unescaped ampersands in F2O_DB.csv.

    In writing this, to make & characters appear in the post, I have replaced each with these five characters: &amp;

    If you find unescaped & characters, do you know how they got there?

    NxtTek: said "He'll probably add that logic to F2O."
    In Accounts_History*.csv, whenever the term REINVESTMENT occurs, there is also a DIVIDEND entry. So I don't see a need for new logic, but maybe I am missing something. Is somebody thinking I should consolodate the two entries? Possible, but maybe not worthwhile. Fidelity never consolodated.

    Joe: MF would be right for FDRXX -- not OTHER. Then if you enter U it would have used zzzzFDRXX as the CUSIP. The F2O_DB.csv.seed has the actual CUSIP.

    If you wanted to prepend F2O_DB.csv.seed to F2O_DB.csv, I think this, in a command window would do it"
    copy F2O_DB.csv.seed+F2O_DB.csv F2O_DB.csv

    Before making any changes to F2O_DB.csv, always make a backup. I would do something like this:
    copy F2O_DB.csv F2O_DB.csv.bk5

    My F2O_DB.csv line for FXAIX is "FXAIX,315911750,MF,FIDELITY 500 INDEX FUND,,,,," without the quotes. Trailing commas are optional. If you had F2O create the entry with U or UPDATE, the CUSIP entered would be zzzzFXAIX. If you already have FXAIX in Money from before, you would want to use the real CUSIP. But if you don't, Money will ask if you already have that investment under another name. I think it would then replace the CUSPIP.

    ReplyDelete
  36. I added FXAIX to my F2O_DB.csv. Running F2O.py I now get:

    ********FATAL F2O ERROR********
    F2O needs at least one Accounts_History and Portfolio_Positions file from Fidelity
    Go to the Fidelity web page, and download the CSV file from the Positions and Activity web pages.
    Take the defaults, and that will put the files in the Downloads folder, where F2O defaults to looking.
    Then come back and try F2O again.
    No need to delete or rename these files between downloads. Relax. Take defaults.

    I have Accounts_History.csv in C:\Users\joegi\Downloads.

    ReplyDelete
    Replies
    1. Joe: You need both Accounts_History*.csv and Portfolio_Positions*.csv files.

      You can check for Portfolio_Positions*.csv with this command in a command window:
      dir %HOMEPATH%\Downloads\Portfolio_Positions*.csv /od
      For you, that is the same as
      dir C:\Users\joegi\Downloads\Portfolio_Positions*.csv /od

      You must get the CSV while "All accounts" (the default, at least for me) is selected. If you select one account, you get a file of the form History_for_Account*.csv. F2O cannot use that.

      You don't need to delete your old Accounts_History*.csv or Portfolio_Positions*.csv files. F2O looks for the newest. For example, currently I have

      Accounts_History.csv
      Accounts_History (1).csv
      Accounts_History (2).csv
      Accounts_History (3).csv
      up to
      Accounts_History (48).csv
      Accounts_History (49).csv

      I could clear out those files, but I keep them around because my drive is big and an old one may be useful to me for development purposes.

      F2O_New_User_intro.doc and https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/#csv get into that downloading.

      I prefer to use the Downloads folder for my Fidelity CSV files. It is the default, so much easier for you and me.

      Delete
    2. Thanks, Cal. I now have five .ofx files. One is an account for my wife that I don't track in Money. The other four have transactions I've already entered. I'll work on it later.

      Delete
  37. To all:
    I had made more documentation on how to edit the F2O_DB.csv file to deal with getting rid of the the ampersands, but I then modified F2O.py to do that for you by default. Besides F2O.py (now dated 2026/3/23), I updated some documentation a bit.

    Download F2O_beta16A.zip, and overwrite your existing files from that zip file. No files in the zip files are named the same as your customized files.

    Reminder: find the zip files in https://drive.google.com/drive/folders/1-4fBbRxaPhNYZK0gNHuZ3n-Bdoncy2aR

    ReplyDelete
  38. Using files in F2O_beta16A.zip and ran make_new_F2O_DBgather.bat.bat that created F2O_DBgather.bat

    The contents of F2O_DBgather.bat is shown here:
    cd "%USERPROFILE%\documents\F2O"
    python F2O_DBgather.py "c:\xfr\FIDELITY20260102153755161102.ofx" %1

    Upon running F2O_DBgather.bat by double clicking, obtained a brief flash, but nothing was created.
    Am I correct that the file F2O_DB.csv should have appeared in the F2O folder?

    I'm using Anaconda2 2019.10 (Python 2.7.16 64-bit) stored in "C:\Users\wm\Anaconda2"
    .py files are associated with python.exe
    Thank you
    wm

    ReplyDelete
    Replies
    1. Please ignore the above post from me, wm. Cal replied to an earlier post that I need to try.

      Delete
  39. Could Cal or NxtTek kindly explain what is being attempted with the F2O project? I've been a user of Pocketsense for over ten years. I'm not a user of the sunset edition of MS Money. I'm instead a Moneydance user. I found this website and started using Pocketsense when the download feature in Moneydance 2014 ceased working due to the expiration of built-in SSL certificates. At the outset, I used Pocketsense to download OFX transaction data from Regions Bank, Chase, USAA, Star One Credit Union, Redstone Federal Credit Union, Citibank, and Fidelity along with quote data from Yahoo. I'm now down to just using it to download OFX transaction data from Regions Bank and quote data from Yahoo. I was using it to download Fidelity OFX data until Fidelity shut down their OFX server back in January.

    I've followed along with some of the F2O discussions but am not understanding what exactly you guys are trying to accomplish. The setup and utilization process seems overly complicated to me given that Fidelity was providing a single OFX file that contained transaction data for all Fidelity accounts. What is the purpose of the DB file and DB_gather python scripts and the other bat and Python scripts? It's just not registering with me why multiple files and scripts are necessary to replace the function of a single OFX file.

    I say the above given that I have 25+ years experience developing software and simulations, analyzing software requirements and software designs, and formally testing software. It seems to me that the process could be simpler. To that end I created my own csv2ofx converter that produces an OFX file from a downloaded Fidelity history CSV file. It doesn't rely on any other files but can read an ignore file that identifies tickers for cash sweep funds. I've been able to test dividend reinvestment, dividends, mutual fund purchases, and cash transfers for the various Fidelity accounts that I have. I am currently running the converter and importing the generated OFX file manually, though the process could be automated.

    I'm not trying to step on any toes or get into a coding competition. I contribute and comment here from time to time when I feel like I can add something constructive. Ultimately, I think we all just want a reliable and easy to use method to import Fidelity data into our personal finance tool of choice.

    ReplyDelete
    Replies
    1. John,
      I'll take a crack at answering your questions as someone who recently started using F2O.

      Why does F2O need both transaction history and positions files? An investment OFX file will normally include a section at the end that lists the positions for each security . You cannot get that out of the regular `Accounts_History.csv`. That information comes out of the `PortfolioPositions.csv file`.

      That brings us to the "complicated" setup of F2O. The OFX file should also include a list of securities that ties together the CUSIP with the name and the ticker. The CUSIP is the same no matter if the ticker changes or if you are buying the security in a different exchange that uses different tickers. This helps Money keep together transactions related to one investment. Unfortunately neither of the CSV files that Fidelity provides list the CUSIP. Enter the `F2O_DB.csv` file. This allows F2O to tie together the CUSIP, ticker, and security name. As you found out, it is not strictly needed, but helps Money out.

      Finally the gather scripts. These are just meant to help people look for old OFX files that allow F2O to build the DB file automatically. You don't need to run them. You can create the DB file manually, it is just more work.

      Delete
    2. John: F2O produces OFX for Fidelity Investment users. With it, you download CSV files from the Fidelity website for both Accounts_History and Portfolio_Positions. Take the default all-accounts selected, and download into your normal default Downloads folder. F2O looks there and uses the most recent.

      While the program was made with Microsoft Money in mind, the OFX files should be useable for another personal finance program.

      The historically more common way was to have an included program look at past good Fidelity*.ofx, which PocketSense may have left in the XFR folder. Unfortunately the good files may have been overwritten during subsequent download when all you got were ERROR Fidelity*.ofx files.

      There is another way that does not require those past files.

      Included in the beta*.zip file at
      https://drive.google.com/drive/folders/1-4fBbRxaPhNYZK0gNHuZ3n-Bdoncy2aR is some documentation.

      Look at the F2O_FidelityCSV_to_OFX.docx and F2O_New_User_intro.doc

      The F2O files run under Python 2.7.x where x is about 10 or more.

      https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/ has a lot of good info including where you can get the Active State Python 2.7.18.

      Please take notes about what is lacking in the descriptions, what confused you, and how to make that better. Where you need clarification, ask.

      Delete
  40. In addition to cash subaccount transactions, F2O is meant to not only accommodate all investment transactions for taxable and retirement accounts, but a full account balancing of all holdings (positions) and prices (quotes) as well. The history file does provide all transactions for the cash subaccount, but as an example, AFAIK, if you had a pure reinvest transaction for an investment, it wouldn't show up in the history file.

    It sounds like your converter is suiting you just fine, so I have to assume your dividend reinvestments are really dual-entry involving the cash account (pay div to cash, then buy the inv with the div proceeds). You might not be processing any retirement accounts either.

    Along the same topic, the BoA-My Financial Picture aggregator csv to ofx converter handles my taxable Schwab account transactions, but I haven't experienced an actual investment transaction yet to see how that is handled. Since I have special investment income categories for my IRA accounts, I won't attempt to link those with the aggregator.

    ReplyDelete
  41. Has anyone else encountered an issue with Fidelity where a buy associated with a dividend transaction is mathematically incorrect? In other words Units * Unit Price != Total (there are no fees since it is just a simple purchase for reinvesting dividends).

    If the error is large enough (usually because the numbers are very small) the Money just rejects that transaction.

    ReplyDelete
  42. I had run into that. To deal with that, F2O.py was modified to take care of that. In my experience, while OFX Analyzer would detect that slight mismatch as an error, Money would just ignore that transaction. If you download the latest zip file, that should fix it. If you generate new OFX files and import them, the previously-ignored pieces will now have the numbers match to Money's satisfaction. When you load new OFX files, and the missing transactions should appear.


    Computing the for transactions, including Bonds/DEBT. In many cases, the number in the History CSV was too rounded, and Money would ignore the transaction. Now that number is computed. 3/19/2026

    File recent_note.txt describes the use of the new mk_F2Ops.bat.py file. It is for the F2O+PocketSense user who want the process to be quick and easy once set up.

    The zip files are designed to let you copy the contents into your F2O folder to update versions. The files that you customize for yourself, including F2O_cfg.py and F2O_DB.csv are not present with those names, and thus will not overwrite your files.

    ReplyDelete
  43. Having worked with F2O for a few weeks now I am understanding where this is going. It seems like the beta is testing the different parts. At one time if I was in Microsoft Money I could click on Favorites>Web Sites>Update Prices and it would log into my Fidelity account, download the new transactions and update the quotes. I feel it's not that far away and I am fine being patient. I imagine before long you will be able to go to the excellent https://sites.google.com/site/pocketsense/home/msmoneyfixp1 web page and be walked through the finished product.

    Right now I log into my Fidelity account, download the two .csv files and have a few more steps but they are getting there.

    ReplyDelete
    Replies
    1. For anyone that is interested here is what I run:

      Log into Fidelity.
      Download Positions and Activity & Orders. These go to C:\Users\joegi\Downloads.
      Run C:\Users\joegi\Documents\F2O using F2O.bat shortcut on Desktop. This creates four .ofx files in D:\Microsoft Money\OFX Scripts\import.

      From Microsoft Money in Favorites>Favorite Web Sites run Update Prices. This runs Microsoft Money>OFX Scripts>Getdata.py shortcut. This creates four .ofx files and a combined.ofx file in D:\Microsoft Money\OFX Scripts\xfr and sends the data to the Microsoft Money accounts where they can be checked. It also updates the quotes.

      Delete
  44. All, I wanted to put in another plug for the new PocketSense3 scripts I have been developing (with Robert's approval). These scripts are Python 3 based, and I hope will in the future simplify the use and development of other scripts like F2O and BoAMFP. For ease of access, I have put the scripts on GitHub:
    https://github.com/spaceman1313/PocketSense3

    If you are not familiar with GitHub the easiest way to download is to use the green "Code" button and download a zip file. No account is needed.

    The main (default) branch of PocketSense3 is a direct port to Python 3, with very few changes to the core PocketSense we all know and love. See the README for details.

    The real magic is in the "Refactor Modules" branch (hit the "main" pulldown menu on the top left of the file list screen). In this branch I have taken the getdata.py module and completely revamped it. Most notable is a new "interactive" mode that allows confirmation of each step (downloads, imports, scrubs, etc). Additional flags are added to sites.dat that allow you to tune whether you want to use direct connect accounts (so many banks no longer offer that), imports, and download quotes. In addition the getdata.py code is now largely PEP8 compliant and more commented, making it easier for users to see what is really going on and even improve on it. Next steps is to clean up the scrubber architecture and add a similar "plugin" like architecture for CSV2OFX converters like F2O and BoAMFP. Again read the README for more details.

    I appreciate people testing the new scripts (thanks to Cal who already has been!) and dropping me a line with any issues, comments or suggestions. Best way is to open a GitHub issue. Alternatively an email to pocketsense3 at the usual g email system. also works. Please keep in mind I can't always respond right away.

    Do remember these scripts should be considered BETA. Be sure to backup both your working Pocketsense settings and your MS Money file!!!! I expect some bugs.

    ReplyDelete
  45. Carlos,
    Thanks for sharing! I tried it out tonight, and it works for me out-of-the-box using a "portable" version of python 3.11 (as I discuss in my article @ https://microsoftmoneyoffline.wordpress.com/2024/02/03/cals-fidelity-specific-csv-to-ofx-converter/#selenium ) which isn't actually "installed" on my PC. So far, Citicard direct ofx, but I'll soon be trying the import of F2O and BoA_MFP ofx files.

    ReplyDelete
    Replies
    1. Thanks for letting me know!

      I hope to work with Cal soon to figure out a way to make F2O Python3 compatible. BoA_MFP already is Python3. For anyone keeping track, there are several benefits for switching to Python3: 1) Python2 is officially end-of-life and no further updates will occur. 2) Modern tools like VSCode no longer support Python2 which makes it harder to debug code.

      Delete
    2. F2O + BoA_MFP (which include PNC bank, Discover, Schwab, and AmEx card) all import perfectly with Pocketsense3.

      Delete
  46. Strange things happening with my Money. Started getting a "Money encountered an error and must cancel this operation. Please try again later." Seemed to start yesterday after I ran a report. Ran a file repair on my Money file and the size went from 40,700KB to 80,376KB so I stuck with the original file. Now when I run .ofx files (Chase and Wyndham) it says "Import complete" but nothing happens.

    ReplyDelete