reconcile.status
The splits, balances and difference of a reconciliation for a set of ticks, with marks and unmarks applied.
Recomputes a reconciliation for a statement and a set of ticks, so you can see the difference change as you tick
splits. Pass ticked (the splits ticked so far; leave it out to start from GnuCash's pre-ticked cleared splits) and
mark or unmark to add or remove some. A tick that is not one of the listed splits is refused with invalid.
Nothing is changed.
Examples
Ticking the 15.00 payment lowers the reconciled balance by 15.00, so the account is 15.00 off the statement:
Example: with a copy of the reports/reconcile example book open as book.gnucash.
JSON-RPC
Request:
{"jsonrpc":"2.0","id":1,"method":"reconcile.status","params":{"account":"Root:Asset:Bank","statementDate":"1970-03-01","endingBalance":"21.00","mark":["d0000000000000000000000000000006"]}}
Response:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"tickedBalance": {
"num": "1400",
"denom": "100"
},
"reconciledBalance": {
"num": "600",
"denom": "100"
},
"difference": {
"num": "1500",
"denom": "100"
},
"…": "…"
}
}
Command line
red-ale exec --book book.gnucash reconcile.status '{"account":"Root:Asset:Bank","statementDate":"1970-03-01","endingBalance":"21.00","mark":["d0000000000000000000000000000006"]}'
It prints:
{
"tickedBalance": {
"num": "1400",
"denom": "100"
},
"reconciledBalance": {
"num": "600",
"denom": "100"
},
"difference": {
"num": "1500",
"denom": "100"
},
"…": "…"
}
MCP tool call
Tool call:
{"name":"reconcile.status","arguments":{"account":"Root:Asset:Bank","statementDate":"1970-03-01","endingBalance":"21.00","mark":["d0000000000000000000000000000006"]}}
Result:
{
"structuredContent": {
"tickedBalance": {
"num": "1400",
"denom": "100"
},
"reconciledBalance": {
"num": "600",
"denom": "100"
},
"difference": {
"num": "1500",
"denom": "100"
},
"…": "…"
}
}
Effect: read.
Params
Params of reconcile.status.
account(AccountRef, required): The account reconciled.statementDate(Date, required): The statement date.endingBalance(Amount, required): The statement's ending balance, raw sign.includeSubaccounts(boolean or null): Reconcile the sub-accounts too. Defaults to the account's stored choice.utcOffsetMinutes(integer (int32) or null): A fixed offset from UTC in minutes to use instead of the server's local time zone.ticked(array of Guid or null): The ticked splits. Defaults to the ticks the window starts with: cleared splits posted by the statement date.mark(array of Guid): Splits to tick.unmark(array of Guid): Splits to untick.
Result
A reconciliation in progress: the statement, the splits to tick and the window's figures. Pass the statement fields and ticked back to the next call.
account(Guid, required): The account reconciled.statementDate(Date, required): The statement date, local to the caller's offset.statementTime(Timestamp, required): The statement date as an instant: the last second of the day, as GnuCash stores it.endingBalance(Amount, required): The ending balance, raw sign.includeSubaccounts(boolean, required): The sub-accounts are reconciled too.resumedPostponed(boolean, required): The defaults came from a postponed reconciliation.lastReconcileDate(Timestamp or null): When the account was last reconciled.startingBalance(Amount, required): The reconciled balance before this statement.clearedBalance(Amount, required): The cleared balance (every split notn).tickedBalance(Amount, required): The sum of the ticked splits.reconciledBalance(Amount, required): The starting balance plus the ticked splits.difference(Amount, required): The ending balance minus the reconciled balance;reconcile.finishneeds it to be zero.ticked(array of Guid, required): The ticked splits.splits(array of CandidateWire, required): Every split that can be ticked.