Statements
/v1/statements/balance-sheetBalance sheet
The balance sheet at the end of each of the last months months (the
last column is today): every asset, liability and equity account's
balance, with retained earnings derived so the statement balances, and
a currency translation adjustment when foreign balances moved with the
rates.
Parameters
months integer · query | How many calendar months, ending with the current one (1–24). |
X-Organization-Id string | null · header |
Returns 200 · BalanceSheet
assets BalanceSheetSection · required | |
currency string · required | The ledger's base currency. |
dates array of date · required | Month-ends, oldest first; the last is today. |
equity BalanceSheetSection · required | |
liabilities BalanceSheetSection · required | |
unconverted_currencies array of string · required | Currencies with no stored exchange rate, shown 1:1. |
curl -X GET "https://api.lumaledger.app/v1/statements/balance-sheet" \
-H "Authorization: Bearer $LUMALEDGER_TOKEN"/v1/statements/cash-flowCash flow statement
Money in and out of each real account in each of the last months
months, translated to the base currency at each month's own rate.
Parameters
months integer · query | How many calendar months, ending with the current one (1–24). |
X-Organization-Id string | null · header |
Returns 200 · CashFlow
accounts | |
currency string · required | |
months array of string · required | YYYY-MM, oldest first. |
totals | One per month. |
unconverted_currencies array of string · required |
curl -X GET "https://api.lumaledger.app/v1/statements/cash-flow" \
-H "Authorization: Bearer $LUMALEDGER_TOKEN"/v1/statements/incomeIncome statement
The income statement: what each income and expense category took in or
spent in each of the last months calendar months, their totals, and net
income (income − expenses).
Parameters
months integer · query | How many calendar months, ending with the current one (1–24). |
purpose string | null · query | Only the personal or the business side of the ledger. Both when omitted. |
X-Organization-Id string | null · header |
Returns 200 · IncomeStatement
currency string · required | The ledger's base currency. |
expenses IncomeStatementSection · required | |
income IncomeStatementSection · required | |
months array of string · required | YYYY-MM, oldest first; the last is the current month. |
net_income NetIncome · required |
curl -X GET "https://api.lumaledger.app/v1/statements/income" \
-H "Authorization: Bearer $LUMALEDGER_TOKEN"/v1/statements/income/breakdownIncome statement row by counterparty
One row of the income statement split by who the money went to or came from, over the same months. A category id that is not in this ledger has no activity and answers no rows.
Parameters
category_id integer · query · required | The income or expense account to split (category_id of a row). |
months integer · query | How many calendar months, ending with the current one (1–24). |
purpose string | null · query | Only the personal or the business side of the ledger. Both when omitted. |
X-Organization-Id string | null · header |
Returns 200 · IncomeStatementBreakdown
currency string · required | |
months array of string · required | |
rows | Largest first. |
curl -X GET "https://api.lumaledger.app/v1/statements/income/breakdown" \
-H "Authorization: Bearer $LUMALEDGER_TOKEN"Objects
BalanceSheet
Assets, liabilities and equity at each month-end. It balances by construction: assets = liabilities + equity in every column.
Fields
assets BalanceSheetSection · required | |
currency string · required | The ledger's base currency. |
dates array of date · required | Month-ends, oldest first; the last is today. |
equity BalanceSheetSection · required | |
liabilities BalanceSheetSection · required | |
unconverted_currencies array of string · required | Currencies with no stored exchange rate, shown 1:1. |
BalanceSheetRow
Fields
account_id integer | null · required | Null for a derived equity row (retained earnings, currency translation adjustment), which no account carries. |
code string · required | |
mask string | null · required | |
name string · required | |
native_latest | The latest balance in the account's own currency; null for a derived row. |
role string | null · required | |
values | One per date in dates, in the base currency. |
BalanceSheetSection
Fields
rows | |
totals | One per date. |
CashFlow
What went in and out of each real account (bank, card, brokerage, loan) by month. Opening balances and valuation marks are position, not flow, and are left out.
Fields
accounts | |
currency string · required | |
months array of string · required | YYYY-MM, oldest first. |
totals | One per month. |
unconverted_currencies array of string · required |
CashFlowAccount
Fields
account_id integer · required | |
code string · required | |
is_liability boolean · required | |
mask string | null · required | |
name string · required | |
role string | null · required | |
series | One per month in months. |
Flow
IncomeStatement
Income and expenses by category and month (the P&L), and the net.
Fields
currency string · required | The ledger's base currency. |
expenses IncomeStatementSection · required | |
income IncomeStatementSection · required | |
months array of string · required | YYYY-MM, oldest first; the last is the current month. |
net_income NetIncome · required |
IncomeStatementBreakdown
One category of the income statement, split by counterparty.
Fields
currency string · required | |
months array of string · required | |
rows | Largest first. |
IncomeStatementRow
IncomeStatementSection
Fields
rows | In chart order, each subcategory after its parent. |
total Money · required | |
totals | One per month. |
Money
An amount and its currency. `amount` is a base-10 string with two
decimal places and an optional leading minus sign. Parse it with a
decimal type, not a float.
Fields
amount string · required | Pattern: ^-?\d+\.\d{2}$. |
currency string · required | ISO 4217 code. Pattern: ^[A-Z]{3}$. |