Lodgeit Labs · SBRM accounting engine
Statements that add up. Checked by logic, not guessed by AI.
Give your AI assistant a ledger and a chart of accounts. SBRM builds the four financial statements, checks that they agree with each other and with your ledger, and names the entry behind any difference. The same books give the same answer every time.
- Works on the exports you give it
- Never changes your accounting software
- Rule-based, not AI arithmetic
Here’s the ledger and chart of accounts for Harbour Lane Café, FY2026. Build the financial statements and check them.
- balance_sheet_balances
- Balanced · 0.00
- equity_rollforward
- Reconciled · 0.00
- cash_rollforward
- Reconciled · 0.00
- cash_flow_sections_add_up
- Valid · 0.00
- cash_matches_balance_sheet
- Reconciled · 0.00
- groups_add_up
- Passed
- all_checks_passed
- true
All six checks pass. The café made a profit of $9,100 for the year on sales of $40,000. Cash was $20,000 at both ends of the year. Want the trial balance at 30 June?
What SBRM is
A deterministic accounting engine your assistant can call.
Lodgeit’s SBRM engine is built on the Standard Business Report Model, developed by Charles Hoffman, CPA, the inventor of XBRL. It connects to your assistant through the Model Context Protocol. The assistant reads and explains. The engine does the accounting.
Builds the four statements
Profit and loss, balance sheet, cash flow and changes in equity, built from the general ledger, the chart of accounts and your opening balances.
Checks they agree
Six checks on every report. Each one passes or fails and shows the dollar variance, so “nearly right” is visible.
Names what’s behind a difference
When a check fails, SBRM points to the entries and accounts that cause it and says how much of the difference they explain.
The checks
Six things that must be true of any set of statements.
These are the relationships accountants call articulation. If one fails, something in the books or the chart is wrong, and the variance tells you how big it is.
- What it proves: the statements agree with each other and with the ledger you gave it.
- What it doesn’t: that each transaction was recorded in the right account. SBRM is not an audit.
| Check | What must be true | Sample result |
|---|---|---|
| Balance sheet balances | Assets equal liabilities plus equity | Balanced · $0.00 |
| Equity roll-forward | Opening equity plus movements equals closing equity | Reconciled · $0.00 |
| Cash roll-forward | Opening cash plus net movement equals closing cash | Reconciled · $0.00 |
| Cash flow sections add up | Operating, investing and financing sum to the net movement | Valid · $0.00 |
| Cash matches the balance sheet | Cash in the cash flow equals cash on the balance sheet | Reconciled · $0.00 |
| Groups add up | Every group’s total equals the sum of what is in it | Passed |
Results shown are from the Harbour Lane Café sample books, run on 10 November 2026.
When a check fails
Ask “why doesn’t it balance?” and get the entry, not a shrug.
In the sample set there is a second ledger with one deliberate mistake: a wages entry records $9,000 to Wages but only $8,000 out of the bank. Three checks fail by $1,000. This is what SBRM says.
- It names the entry. Journal J06, dated 31 January 2026, with both of its lines.
- It says how much is explained. Here
explainedequalsdifference, so that one entry is the whole problem. - It shows which accounts it treats as cash, so a chart filing mistake is easy to spot.
{
"as_at": "2026-06-30",
"difference": 1000.0,
"balanced": false,
"causes": [{
"cause": "entries whose lines do not net to zero",
"amount": 1000.0,
"entries": 1,
"matched_by": "Journal ID",
"worst": [{
"entry": "J06", "net": 1000.0, "date": "2026-01-31",
"lines": [
{"account": "Wages", "amount": 9000.0},
{"account": "Cash at Bank", "amount": -8000.0}
]
}]
}],
"explained": 1000.0,
"cash_accounts": [
{"account": "Cash at Bank", "balance": 21000.0}
]
}Try it
A first experiment with a made-up café.
Harbour Lane Café is a fictional business with 15 accounts and 11 journal entries. It is small enough to check by eye, which makes it a good way to see what SBRM does before you load real books.
Connect SBRM
In Claude, open Settings, then Connectors, then Add custom connector. Paste the SBRM address, connect and sign in.
https://transforms.lodgeit.net.au/sbrm/backend/mcp
SBRM is a standard remote MCP server. We have tested it with Claude.
Download the sample books
- harbour_lane_cafe_coa.csvChart of accounts
- harbour_lane_cafe_gl.csvLedger for FY2026
- harbour_lane_cafe_gl_with_error.csvThe same ledger with one mistake
- harbour_lane_cafe_closing_tb.csvA closing trial balance with two differences
Ask in plain English
Attach the chart and the ledger to a message and ask your assistant to build and check the statements. It picks the right tools. Then work down the list of prompts.
Outputs are signed debit positive, so revenue comes back as a negative number. Your assistant will present it the usual way.
Prompts to try, and what you should see
Your own books
What to bring, and four things to get right.
You need a chart of accounts and a general ledger for one financial year, with opening balances. A closing trial balance from your accounting software is optional and lets you compare.
Use one sign convention
A ledger loaded directly must show liabilities, equity and revenue as positive amounts. Loaded with credits as negatives, our sample showed a $70,900 loss in place of a $9,100 profit. Exports with negative credits should go through the converter, which flips them.
Date them the day before
Opening balances are ledger lines dated the day before the year starts, such as 30 June 2025 for FY2026. Dated inside the year they count as movements, and the cash and balance sheet checks fail.
One Amount column
An export with separate Debit and Credit columns is refused until it has a single Amount column. Add one as Debit minus Credit before converting.
File them as cash
When converting, map the account type column twice: once to the classification and once to the sub-type. Otherwise a “Bank” account is left out of cash on the cash flow statement.
The two files
| Chart of accounts | Notes |
|---|---|
| Name | Required. Must match the ledger’s Account column exactly. |
| Classification | Required. Exactly Asset, Liability, Equity, Revenue or Expense. “Income” or “Liabilities” give empty reports. |
| AccountSubType | Optional. Drives the report lines. A bank account should say Bank. |
| General ledger | Notes |
|---|---|
| Account | Required. The account name, as in the chart. |
| Date | Required. YYYY-MM-DD is safest. For 03/04/2025, say whether dates are day-first. |
| Amount | Required. One signed amount per line. |
| Journal ID | Strongly recommended. Shared by every line of one entry, so SBRM can name an unbalanced entry. |
Files up to about 5 MB go straight from the conversation. Bigger ones use a one-time upload page. A busy year can take five or six minutes and runs in the background, so report one financial year at a time.
Coming from Xero, QuickBooks Online or MYOB
Export three things: a chart of accounts, a general ledger with journal-level detail, and a trial balance at the day before the year starts. Then ask your assistant to convert them.
- It proposes a mapping from your columns to SBRM’s, with a confidence and an example value for each, and lists what you need to decide.
- You confirm it. Every account type needs one of the five classifications, and it asks for your year end.
- It converts and loads. Our Xero-style sample came through balanced, with every line matched and all checks passing.
Try the conversion with the same café shaped like a Xero export: chart, ledger and opening trial balance.
Journal ID,Date,Account,Amount,Memo/Description J01,2025-06-30,Cash at Bank,20000,Opening balance J01,2025-06-30,Business Loan,15000,Opening balance J01,2025-06-30,Owner Capital,10000,Opening balance ... J02,2025-08-15,Accounts Receivable,44000,Catering sales invoices J02,2025-08-15,Sales,40000,Catering sales invoices J02,2025-08-15,GST Payable,4000,Catering sales invoices
Beyond the checks
What else you can ask once the books are loaded.
Read the books
One account’s lines between two dates, or every balance at a date.
“Trial balance at 31 December.”
Check every entry
Confirms each entry in a period nets to zero, or lists the ones that don’t.
“Are any entries out of balance this year?”
Compare with your software
Checks SBRM’s closing balances against your accounting software’s own trial balance.
“Here’s the TB from Xero. Does it agree?”
Depreciation
Finds your fixed assets and checks posted depreciation against Lodgeit’s depreciation calculator. You confirm each asset’s date, life and method. SBRM never chooses them.
“Check depreciation on our fixed assets.”
Hire purchases and schedules
Finds hire purchase agreements and checks the repayments without a schedule, or checks any subledger schedule you supply against the ledger.
“Check our hire purchase repayments.”
Fixes you approve first
Shows exactly what a correction would change, applies it only after you say yes, and can undo it. It changes SBRM’s copy only.
“Show me what fixing the shortfall would change.”
Xero tracking
Lists your tracking categories and gives profit and loss for each label, such as each property.
“Profit by property for FY2026.”
Saved work
Keeps results and the files behind them, so you can reload books or rebuild another period without sending files again.
“List my saved runs.”
Teams
People in the same team can see each other’s work. Only the person who loaded a set of books can change it.
“What has my team produced this week?”
What it doesn’t do
Clear edges.
- It doesn’t connect to your accounting software. It works on files you export and upload.
- It doesn’t post, lodge or change anything outside itself. A fix changes SBRM’s own copy of the books, after a preview you approve.
- It doesn’t judge whether a transaction is in the right account. It flags obvious chart problems, such as a bank account not filed as cash.
- It isn’t an audit and it isn’t tax advice. Depreciation checks are on an accounting basis.
Known limits today
Things you may run into.
Foreign currency cash
If you hold foreign currency cash, the cash checks may differ by your foreign exchange gain or loss. Support for FX is coming.
Equity detail
SBRM checks total equity. It does not yet check reserves, minority interests or other comprehensive income separately.
Cash flow statements prepared elsewhere
SBRM builds its own cash flow statement from the ledger. It does not check a direct-method statement you’ve prepared elsewhere.
Restatements
Restated comparatives aren’t supported yet. Report one year at a time.
Your data
It works on what you give it, and you can take it back.
No link to your ledger
SBRM works on the exports you give it. It doesn’t connect to your accounting software and never changes it.
Who can see it
You, and the people you share a team with. Team members can read the books you load. Only you can change them.
Kept until you remove it
Uploads, loaded books and saved runs stay until you delete them. You can delete your own at any time by asking your assistant. Deletion can’t be undone.
SBRM is hosted in Australia on AWS. Lodgeit’s privacy policy covers how your data is kept and how to ask for it to be deleted. Your AI assistant’s own terms also apply to what you send through it.
Where this leads
The foundation of Lodgeit’s agentic accounting.
An AI agent can read books, work out an adjustment and draft a journal. It can also make figures look right when they aren’t. SBRM is the part that doesn’t guess. Agents propose, SBRM proves, accountants approve.
Prove before and after
Before an adjustment, SBRM checks the books add up. After the proposed journal is applied to SBRM’s copy, it checks again. If a check fails, the agent stops and says why.
Figures from calculators
Amounts come from deterministic calculators, such as the depreciation calculator SBRM already uses, and never from the AI’s own arithmetic.
Staged, never posted
The agent prepares a journal and the evidence behind it for an accountant to review. Nothing reaches your accounting software without that confirmation.
SBRM over MCP
Statements, checks and explanations, comparison with your software’s trial balance, ledger queries, depreciation and hire purchase checks, and previewed, reversible fixes in SBRM’s copy.
Lodgeit calculators
Depreciation, Division 7A, FBT and hire purchase, open to any agent. See AI that calculates
Staged adjusting journals
Agents stage year-end journals for an accountant to confirm before anything is posted.
Agent skills, one per job
Income tax provision, depreciation, hire purchase, Division 7A and FBT, each checked by SBRM before and after.
Does SBRM change my Xero, QuickBooks or MYOB file?
No. It works on exports you give it and has no connection to your accounting software. A fix only ever changes SBRM’s own copy, after a preview you approve, and you can undo it.
What files do I need?
A chart of accounts and a general ledger for the year, plus the trial balance at the day before the year starts for opening balances. A closing trial balance lets you compare SBRM with your software.
Why does revenue show as a negative number?
Outputs are signed debit positive, so credits such as revenue, liabilities and equity are negative. A profit appears as a negative net income with a plain-English result beside it. Your assistant can present the figures the usual way.
My balance sheet doesn’t balance. Is SBRM wrong?
Usually the opening balances are missing or dated inside the year, or the signs are in a different convention. Ask “why doesn’t it balance?” and SBRM names the entries and amounts behind the difference.
Is this an audit?
No. SBRM checks that the statements agree with each other and with the ledger you gave it. It can’t tell whether a transaction was recorded in the right account, and it gives no assurance.
How big a ledger can it handle?
Files over about 5 MB go through an upload page. A busy year can take five or six minutes and runs in the background. You can run one background job at a time, so report one financial year at a time.
Does it work with assistants other than Claude?
SBRM is a standard remote MCP server, so assistants that support those should work. We have tested it with Claude.
What should I send if I think a result is wrong?
The build number your assistant gets from SBRM’s health check, the period, what you expected and what SBRM returned. Please don’t email real client data.
See whether your books add up.
Start with the sample café, then bring a year of your own.