Topic: Creating OFX files

I have some investment accounts which I am tracking with Quicken for macOS. However, I am using the Quicken feature to auto-download the status of the account. However, the company does not support downloading the individual transactions, which I would like to also track inside of Quicken. But, I do not want enter these transitions manually. The do allow me to download the transactions as a CSV file. I had the idea of taking that CSV file and converting it to OFX which Quicken should be able to import. However, the OFX file I am creating is not valid and I am not sure how to fix it so Quicken will import it.

Should I be able to create an OFX file myself and expect it to be importable? Or, does the spec require there be a connection back to some financial institution?

When I try to import the OFX file, the error I get from Quicken is:

This FI is inactive, we cannot connect.

If I remove the FI block, I get the error:

Unable to read the selected Web Connect file.

The CSV file is:

Run Date,Action,Symbol,Security Description,Security Type,Quantity,Price ($),Commission ($),Fees ($),Accrued Interest ($),Amount ($),Settlement Date
01/02/2023,YOU BOUGHT,A,AGILENT TECHNOLOGIES INC,Cash,42,84,,,,-3528.00,01/03/2023
01/03/2023, YOU BOUGHT,AA,ALCOA CORPORATION,Cash,43,86,,,,-3698.00,01/04/2023
01/04/2023, YOU BOUGHT,AAC,ARES ACQUISITION CORP,Cash,44,88,,,,-3872.00,01/05/2023

The OFX file I am creating is:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?OFX OFXHEADER="200" VERSION="220" SECURITY="NONE" OLDFILEUID="NONE" NEWFILEUID="NONE"?>
<OFX>
  <SIGNONMSGSRSV1>
    <SONRS>
      <STATUS>
        <CODE>0</CODE>
        <SEVERITY>INFO</SEVERITY>
      </STATUS>
      <DTSERVER>20230304170917.174[+0:UTC]</DTSERVER>
      <LANGUAGE>ENG</LANGUAGE>
      <FI>
        <ORG>Investments</ORG>
        <FID>1234</FID>
      </FI>
    </SONRS>
  </SIGNONMSGSRSV1>
  <INVSTMTMSGSRSV1>
    <INVSTMTTRNRS>
      <TRNUID>0</TRNUID>
      <STATUS>
        <CODE>0</CODE>
        <SEVERITY>INFO</SEVERITY>
      </STATUS>
      <INVSTMTRS>
        <DTASOF>20230304170917.178[+0:UTC]</DTASOF>
        <CURDEF>USD</CURDEF>
        <INVACCTFROM>
          <BROKERID>investments.com</BROKERID>
          <ACCTID>Y12345678</ACCTID>
        </INVACCTFROM>
        <INVTRANLIST>
          <DTSTART>20230102000000.000[+0:UTC]</DTSTART>
          <DTEND>20230104000000.000[+0:UTC]</DTEND>
          <BUYOTHER>
            <INVBUY>
              <INVTRAN>
                <FITID>725bb8d9-ef22-4b9b-9214-8080a4a59ddb</FITID>
                <DTTRADE>20230102000000.000[+0:UTC]</DTTRADE>
                <DTSETTLE>20230103000000.000[+0:UTC]</DTSETTLE>
              </INVTRAN>
              <SECID>
                <UNIQUEID>100000000</UNIQUEID>
                <UNIQUEIDTYPE>OTHER</UNIQUEIDTYPE>
              </SECID>
              <UNITS>42</UNITS>
              <UNITPRICE>84</UNITPRICE>
              <TOTAL>3528</TOTAL>
              <SUBACCTSEC>CASH</SUBACCTSEC>
              <SUBACCTFUND>CASH</SUBACCTFUND>
            </INVBUY>
          </BUYOTHER>
          <BUYOTHER>
            <INVBUY>
              <INVTRAN>
                <FITID>a04dad7f-7374-4920-bf1c-ed90bdef5991</FITID>
                <DTTRADE>20230103000000.000[+0:UTC]</DTTRADE>
                <DTSETTLE>20230104000000.000[+0:UTC]</DTSETTLE>
              </INVTRAN>
              <SECID>
                <UNIQUEID>100000001</UNIQUEID>
                <UNIQUEIDTYPE>OTHER</UNIQUEIDTYPE>
              </SECID>
              <UNITS>43</UNITS>
              <UNITPRICE>86</UNITPRICE>
              <TOTAL>3698</TOTAL>
              <SUBACCTSEC>CASH</SUBACCTSEC>
              <SUBACCTFUND>CASH</SUBACCTFUND>
            </INVBUY>
          </BUYOTHER>
          <BUYOTHER>
            <INVBUY>
              <INVTRAN>
                <FITID>f2a9db1d-22e8-43ea-aab9-ad9c27e40cee</FITID>
                <DTTRADE>20230104000000.000[+0:UTC]</DTTRADE>
                <DTSETTLE>20230105000000.000[+0:UTC]</DTSETTLE>
              </INVTRAN>
              <SECID>
                <UNIQUEID>100000002</UNIQUEID>
                <UNIQUEIDTYPE>OTHER</UNIQUEIDTYPE>
              </SECID>
              <UNITS>44</UNITS>
              <UNITPRICE>88</UNITPRICE>
              <TOTAL>3872</TOTAL>
              <SUBACCTSEC>CASH</SUBACCTSEC>
              <SUBACCTFUND>CASH</SUBACCTFUND>
            </INVBUY>
          </BUYOTHER>
        </INVTRANLIST>
      </INVSTMTRS>
    </INVSTMTTRNRS>
  </INVSTMTMSGSRSV1>
  <SECLISTMSGSRSV1>
    <SECLIST>
      <MFINFO>
        <SECINFO>
          <SECID>
            <UNIQUEID>100000000</UNIQUEID>
            <UNIQUEIDTYPE>OTHER</UNIQUEIDTYPE>
          </SECID>
          <SECNAME>AGILENT TECHNOLOGIES INC</SECNAME>
          <TICKER>A</TICKER>
        </SECINFO>
      </MFINFO>
      <MFINFO>
        <SECINFO>
          <SECID>
            <UNIQUEID>100000001</UNIQUEID>
            <UNIQUEIDTYPE>OTHER</UNIQUEIDTYPE>
          </SECID>
          <SECNAME>ALCOA CORPORATION</SECNAME>
          <TICKER>AA</TICKER>
        </SECINFO>
      </MFINFO>
      <MFINFO>
        <SECINFO>
          <SECID>
            <UNIQUEID>100000002</UNIQUEID>
            <UNIQUEIDTYPE>OTHER</UNIQUEIDTYPE>
          </SECID>
          <SECNAME>ARES ACQUISITION CORP</SECNAME>
          <TICKER>AAC</TICKER>
        </SECINFO>
      </MFINFO>
    </SECLIST>
  </SECLISTMSGSRSV1>
</OFX>

Re: Creating OFX files

The only thing I can think of is to compare your OFX file to an actual one downloaded from the institution.  My guess is that you really need to match the header information, such as <ORG> and <FID>.  I don't know if you just changed them in your post for anonymity, or if that's what you are trying to feed Quicken.