Report

Future Scheduled Transactions Summary

The Future Scheduled Transactions Summary report.

The effect the scheduled transactions will have on each account between two dates, one row for each account that they touch. Use it to see what recurring bills and income will do before they are due. It does not enter anything: the scheduled transactions are only read. In GnuCash: Reports ▸ Future Scheduled Transactions Summary.

The options that matter are General/Start Date and End Date and the Accounts options. Make scheduled transactions with scheduledTransaction.create.

Examples

Example: with a new, empty book open as book.gnucash, at 2024-03-15T12:00:00Z.

JSON-RPC

Request:

{"jsonrpc":"2.0","id":1,"method":"account.create","params":{"name":"Checking","type":"BANK","commodity":"USD"}}

Response:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": "…"
}

Request:

{"jsonrpc":"2.0","id":2,"method":"account.create","params":{"name":"Rent","type":"EXPENSE","commodity":"USD"}}

Response:

{
  "jsonrpc": "2.0",
  "id": 2,
  "result": "…"
}

Request:

{"jsonrpc":"2.0","id":3,"method":"scheduledTransaction.create","params":{"name":"Monthly rent","startDate":"2024-04-01","schedule":[{"mult":1,"periodType":"month"}],"templateTransactions":[{"description":"Rent","splits":[{"account":"Rent","debitFormula":"750"},{"account":"Checking","creditFormula":"750"}]}]}}

Response:

{
  "jsonrpc": "2.0",
  "id": 3,
  "result": "…"
}

Request:

{"jsonrpc":"2.0","id":4,"method":"report.run","params":{"report":"Future Scheduled Transactions Summary","options":{"General":{"Start Date":{"absolute":"2024-04-01"},"End Date":{"absolute":"2024-06-30"}}}}}

Response:

{
  "jsonrpc": "2.0",
  "id": 4,
  "result": {
    "title": " Future Scheduled Transactions Summary For Period Covering 04/01/24 to 06/30/24",
    "sections": [
      {
        "blocks": [
          {
            "kind": "table",
            "rows": [
              {
                "role": "account",
                "cells": [
                  "…",
                  {
                    "text": "Rent",
                    "…": "…"
                  },
                  {
                    "display": "$2,250.00",
                    "…": "…"
                  }
                ],
                "…": "…"
              },
              {
                "role": "account",
                "cells": [
                  "…",
                  {
                    "text": "Checking",
                    "…": "…"
                  },
                  {
                    "display": "-$2,250.00",
                    "…": "…"
                  }
                ],
                "…": "…"
              }
            ],
            "…": "…"
          }
        ],
        "…": "…"
      }
    ],
    "…": "…"
  }
}

Command line

red-ale exec --book book.gnucash --script - <<'EOF'
account.create {"name":"Checking","type":"BANK","commodity":"USD"}
account.create {"name":"Rent","type":"EXPENSE","commodity":"USD"}
scheduledTransaction.create {"name":"Monthly rent","startDate":"2024-04-01","schedule":[{"mult":1,"periodType":"month"}],"templateTransactions":[{"description":"Rent","splits":[{"account":"Rent","debitFormula":"750"},{"account":"Checking","creditFormula":"750"}]}]}
report.run {"report":"Future Scheduled Transactions Summary","options":{"General":{"Start Date":{"absolute":"2024-04-01"},"End Date":{"absolute":"2024-06-30"}}}}
EOF

It prints:

[
  "…",
  "…",
  "…",
  {
    "title": " Future Scheduled Transactions Summary For Period Covering 04/01/24 to 06/30/24",
    "sections": [
      {
        "blocks": [
          {
            "kind": "table",
            "rows": [
              {
                "role": "account",
                "cells": [
                  "…",
                  {
                    "text": "Rent",
                    "…": "…"
                  },
                  {
                    "display": "$2,250.00",
                    "…": "…"
                  }
                ],
                "…": "…"
              },
              {
                "role": "account",
                "cells": [
                  "…",
                  {
                    "text": "Checking",
                    "…": "…"
                  },
                  {
                    "display": "-$2,250.00",
                    "…": "…"
                  }
                ],
                "…": "…"
              }
            ],
            "…": "…"
          }
        ],
        "…": "…"
      }
    ],
    "…": "…"
  }
]

MCP tool call

Tool call:

{"name":"account.create","arguments":{"name":"Checking","type":"BANK","commodity":"USD"}}

Result:

{
  "content": [
    {
      "type": "text",
      "text": "\"…\""
    }
  ]
}

Tool call:

{"name":"account.create","arguments":{"name":"Rent","type":"EXPENSE","commodity":"USD"}}

Result:

{
  "content": [
    {
      "type": "text",
      "text": "\"…\""
    }
  ]
}

Tool call:

{"name":"scheduledTransaction.create","arguments":{"name":"Monthly rent","startDate":"2024-04-01","schedule":[{"mult":1,"periodType":"month"}],"templateTransactions":[{"description":"Rent","splits":[{"account":"Rent","debitFormula":"750"},{"account":"Checking","creditFormula":"750"}]}]}}

Result:

{
  "content": [
    {
      "type": "text",
      "text": "\"…\""
    }
  ]
}

Tool call:

{"name":"report.run","arguments":{"report":"Future Scheduled Transactions Summary","options":{"General":{"Start Date":{"absolute":"2024-04-01"},"End Date":{"absolute":"2024-06-30"}}}}}

Result:

{
  "structuredContent": {
    "title": " Future Scheduled Transactions Summary For Period Covering 04/01/24 to 06/30/24",
    "sections": [
      {
        "blocks": [
          {
            "kind": "table",
            "rows": [
              {
                "role": "account",
                "cells": [
                  "…",
                  {
                    "text": "Rent",
                    "…": "…"
                  },
                  {
                    "display": "$2,250.00",
                    "…": "…"
                  }
                ],
                "…": "…"
              },
              {
                "role": "account",
                "cells": [
                  "…",
                  {
                    "text": "Checking",
                    "…": "…"
                  },
                  {
                    "display": "-$2,250.00",
                    "…": "…"
                  }
                ],
                "…": "…"
              }
            ],
            "…": "…"
          }
        ],
        "…": "…"
      }
    ],
    "…": "…"
  }
}

Template GUID: 47f45d7d6d57b68518481c1fc8d4e4ba · Script: standard/account-summary.rhai

Options

Accounts

  • Accounts (accountList, default []): Report on these accounts, if display depth allows.
  • Levels of Subaccounts (multichoice, default 3): Maximum number of levels in the account tree displayed.
  • Depth limit behavior (multichoice, default "summarize"): How to treat accounts which exceed the specified depth limit (if any). * Show the total balance, including balances in subaccounts, of any account at the depth limit. * Raise accounts deeper than the depth limit to the depth limit. * Omit any accounts deeper than the depth limit.

Commodities

  • Report's currency (currency, default "CURRENCY::USD"): Select the currency to display the values of this report in.
  • Price Source (multichoice, default "pricedb-nearest"): The source of price information.
  • Show Foreign Currencies (boolean, default true): Display any foreign currency amount in an account.
  • Show Exchange Rates (boolean, default false): Show the exchange rates used.

Display

  • Include accounts with zero total balances (boolean, default true): Include accounts with zero total (recursive) balances in this report.
  • Omit zero balance figures (boolean, default false): Show blank space in place of any zero balances which would be shown.
  • Parent account balances (multichoice, default "immediate-bal"): How to show the balances of parent accounts. * Account Balance in the parent account, excluding any subaccounts. * Do not show any balances of parent accounts.
  • Parent account subtotals (multichoice, default "f"): How to show account subtotals for parent accounts. * Show subtotals for selected parent accounts which have subaccounts. * Do not show any subtotals for parent accounts.
  • Display accounts as hyperlinks (boolean, default true): Shows each account in the table as a hyperlink to its register window.
  • Show accounting-style rules (boolean, default false): Use rules beneath columns of added numbers like accountants do.
  • Account Balance (boolean, default true): Show an account's balance.
  • Account Code (boolean, default true): Show an account's account code.
  • Account Description (boolean, default false): Show an account's description.
  • Account Type (boolean, default false): Show an account's account type.
  • Account Notes (boolean, default false): Show an account's notes.

General

  • Report name (string, default "Future Scheduled Transactions Summary"): Enter a descriptive name for this report.
  • Stylesheet (multichoice, default "Default"): Select a stylesheet for the report.
  • Add options summary (multichoice, default "never"): Add summary of options.
  • Report Title (string, default "Future Scheduled Transactions Summary"): Title for this report.
  • Start Date (date, default {"relative":"start-accounting-period"}): Start of reporting period.
  • End Date (date, default {"relative":"end-accounting-period"}): End of reporting period.