This extension pulls Series I savings bond interest rates from TreasuryDirect.gov and creates artificial interest transactions in Moneydance so your holdings' current values should reflect your available balances — without logging in to TreasuryDirect.
- Finds I bond securities in your Moneydance investment accounts
- Looks up interest rate history for your I bonds
- Creates corresponding artificial interest transactions
- Lets you see all changes before committing them in Moneydance
- This happens without logging in to TreasuryDirect
- Moneydance 2023.2 or later (extension is built for Java 21)
-
Download the latest release.
-
Follow Moneydance's published documentation to install extensions.
Use theAdd From File...option to load theibondvalues.mxtfile. -
The extension has not yet been audited and signed by The Infinite Kind, so you'll get a warning asking you if you really want to continue loading the extension. Click Yes to proceed.
-
You can now run the extension by going to Extensions > I Bond Values.
If you haven't already, create one or more investment accounts to house your I bonds. Each account can hold multiple I bonds. A suggested approach is to have one account in Moneydance for each account on TreasuryDirect.
This extension creates its artificial interest transactions with the
default category of the corresponding investment account.
Setting up the account's default category to something like
Investment Income:US Government Interest works well.
This extension determines an I bond issue year and month by parsing its ticker symbol.
Here, a security with an I bond ticker symbol must start with 'IBond'
(in any case) followed by the year followed by a 2-digit month number
in the format IBondYYYYMM.
Examples: IBond201901, IBOND202212, ibond202304
All securities with ticker symbols of this form are processed as I bonds.
Create Moneydance securities transactions to record buying shares of these I bonds. You can also record I bond sales. This extension depends on the share price always being $1 per share. This is used when creating artificial interest transactions. So use a share price of $1 in your buy and sell Moneydance transactions.
Use the Moneydance extension menu to run this extension.
This extension will examine your holdings, calculate any missing
artificial interest transactions and display them for your review.
If you approve, select the Commit action to store the calculated transactions in Moneydance.
If everything is up to date, a message says it found no new interest payment data.
TreasuryDirect's website provides an overview of I bond interest. This extension gets interest rates from the xlsx rate history chart linked on that web page. This extension calculates interest following details the US Code of Federal Regulations (CFR) Title 31 Subtitle B Chapter II Subchapter A Part 359. This involves stepping 6 months at a time. For each semiannual period, the composite rate is calculated and monthly interest transactions are generated.
Because I bond interest accrues monthly but compounds only semiannually, a monthly growth multiplier is derived from the composite rate:
Interest is calculated based on a unit value ($25 when issued). For each of the 6 months, the unit value is stepped forward by this multiplier and rounded to the nearest cent. The interest credited is:
where eligible units reflects the portion of the balance still earning interest after any partial redemptions.
The 3-month early-redemption penalty (applicable for bonds held fewer than 5 years) is handled by deferring affected interest transactions. The payable date for these transactions is shifted out 3 months (capped at the penalty expiry date).
After each semiannual period, accrued interest (including interest not yet available) is folded back into the balance eligible to earn interest.
Since CFR 359 doesn't detail how partial redemptions are handled, this extension handles partial redemptions in a way that has not been validated.
Raise issues or questions in this extension's GitHub issues page.
Please include a copy of the Moneydance console messages from Help > Console Window.
- 📦 Releases
