Accounting · GL · P&L · BS
Double-entry journals posted from the engine
Sprint D · Deploy 2.13. Every ledger_entries ACCRUAL is auto-posted to a balanced journal_entry (DR 6000 Commission Expense / CR 2100 Commission Payable). Pure posting engine in src/engine/posting.ts. Trial Balance must balance to the cent; Balance Sheet must satisfy Assets = Liabilities + Equity.
Chart of Accounts
30 accounts across 5 types. Code structure: 1xxx assets, 2xxx liabilities, 3xxx equity, 4xxx revenue, 6xxx expenses.
ASSET 5 accounts
| Code |
Name |
Normal |
Description |
| 1000 |
Cash at Bank |
DR |
Operating bank account (AUD) |
| 1010 |
Trust Account |
DR |
Client / commission trust account (held on behalf) |
| 1100 |
Accounts Receivable |
DR |
Outstanding invoices to customers |
| 1200 |
Prepayments |
DR |
Prepaid expenses (insurance, software) |
| 1500 |
Computer Equipment |
DR |
Capitalised hardware |
LIABILITY 7 accounts
| Code |
Name |
Normal |
Description |
| 2000 |
Accounts Payable |
CR |
Trade payables |
| 2100 |
Commission Payable |
CR |
Accrued commission owed to partners (engine-posted) |
| 2200 |
GST Payable |
CR |
Output GST collected (less input credits) |
| 2300 |
PAYG Withholding |
CR |
Withheld payroll tax |
| 2400 |
Superannuation Payable |
CR |
Accrued super contributions |
| 2500 |
Unearned Revenue |
CR |
Customer prepayments (revenue not yet earned) |
| 2900 |
SAFE — Pre-seed |
CR |
SAFE convertible note ($500k @ $4M cap) |
EQUITY 3 accounts
| Code |
Name |
Normal |
Description |
| 3000 |
Owner's Equity |
CR |
Founder equity contribution |
| 3100 |
Retained Earnings |
CR |
Accumulated profit/loss from prior periods |
| 3900 |
Current Year Earnings |
CR |
Net profit/loss for the current FY (autocalc) |
REVENUE 4 accounts
| Code |
Name |
Normal |
Description |
| 4000 |
Platform Fee Revenue |
CR |
Marketplace platform fees |
| 4100 |
Subscription Revenue |
CR |
Member subscription fees |
| 4200 |
Transaction Revenue |
CR |
Per-deal transaction commission |
| 4900 |
Interest Income |
CR |
Bank interest earned |
EXPENSE 11 accounts
| Code |
Name |
Normal |
Description |
| 6000 |
Commission Expense |
DR |
Commission paid to partners (engine-posted accruals) |
| 6100 |
Salaries & Wages |
DR |
Employee compensation |
| 6110 |
Superannuation Expense |
DR |
Employer super contributions |
| 6200 |
Software & Subscriptions |
DR |
Cloudflare, Xero, Slack, etc. |
| 6300 |
Marketing & Advertising |
DR |
Acquisition spend (CMO budget) |
| 6400 |
Professional Fees |
DR |
Legal (Pine Lawyers), accounting, advisory |
| 6500 |
Office & Admin |
DR |
Rent, utilities, office expenses |
| 6600 |
Travel & Entertainment |
DR |
Business travel and meals |
| 6700 |
Bank Fees |
DR |
Bank charges and merchant fees |
| 6800 |
Depreciation Expense |
DR |
Non-cash depreciation of fixed assets |
| 6900 |
Bad Debt Expense |
DR |
Write-offs of uncollectible receivables |
General Journal · 11 posted entries
Click an entry number to drill down into its debit/credit lines.
| JE |
Date |
Description |
Source |
Amount |
| #7 |
2026-04-21 |
Commission accrual — deal 7 (engine A.3 backfill) |
engine:ledger_entry |
$392.00 |
| #6 |
2026-04-21 |
Commission accrual — deal 7 (engine A.3 backfill) |
engine:ledger_entry |
$1,568.00 |
| #11 |
2026-03-22 |
Commission accrual — deal 10 (engine A.3 backfill) |
engine:ledger_entry |
$97.50 |
| #10 |
2026-03-22 |
Commission accrual — deal 10 (engine A.3 backfill) |
engine:ledger_entry |
$292.50 |
| #8 |
2026-02-22 |
Commission accrual — deal 8 (engine A.3 backfill) |
engine:ledger_entry |
$140.00 |
| #5 |
2026-02-20 |
Commission accrual — deal 6 (engine A.3 backfill) |
engine:ledger_entry |
$2,320.00 |
| #9 |
2026-02-18 |
Commission accrual — deal 9 (engine A.3 backfill) |
engine:ledger_entry |
$40.00 |
| #4 |
2026-01-21 |
Commission accrual — deal 5 (engine A.3 backfill) |
engine:ledger_entry |
$675.00 |
| #3 |
2026-01-21 |
Commission accrual — deal 5 (engine A.3 backfill) |
engine:ledger_entry |
$1,575.00 |
| #2 |
2025-11-22 |
Commission accrual — deal 4 (engine A.3 backfill) |
engine:ledger_entry |
$1,932.00 |
| #1 |
2025-07-01 |
Opening balances — FY26 books |
opening_balance |
$55,000.00 |
Reporting period
P&L below covers this period. Balance Sheet is point-in-time as of 2026-07-09.
Trial Balance
All accounts with at least one posted debit or credit. Σ debits MUST equal Σ credits.
| Code |
Account |
Type |
DR |
CR |
Balance |
| 1000 |
Cash at Bank |
ASSET |
$50,000.00 |
— |
$50,000.00 DR |
| 1500 |
Computer Equipment |
ASSET |
$5,000.00 |
— |
$5,000.00 DR |
| 2100 |
Commission Payable |
LIABILITY |
— |
$9,032.00 |
$9,032.00 CR |
| 3000 |
Owner's Equity |
EQUITY |
— |
$55,000.00 |
$55,000.00 CR |
| 6000 |
Commission Expense |
EXPENSE |
$9,032.00 |
— |
$9,032.00 DR |
| ✓ Balanced |
$64,032.00 |
$64,032.00 |
$0.00 |
Profit & Loss · FY26Q3
For period 2026-01-01 → 2026-03-31
| Revenue |
| No revenue posted in this period. |
| Total Revenue | $0.00 |
| Expenses |
| 6000 |
Commission Expense |
$5,140.00 |
| Total Expenses | $5,140.00 |
| Net Loss |
-$5,140.00 |
Balance Sheet
As of 2026-07-09
| Assets |
| 1000 |
Cash at Bank |
$50,000.00 |
| 1500 |
Computer Equipment |
$5,000.00 |
| Total Assets | $55,000.00 |
| Liabilities |
| 2100 |
Commission Payable |
$9,032.00 |
| Total Liabilities | $9,032.00 |
| Equity |
| 3000 |
Owner's Equity |
$55,000.00 |
| 3900 |
Current Year Earnings |
-$9,032.00 |
| Total Equity | $45,968.00 |
| ✓ Assets = Liabilities + Equity |
$55,000.00 = $55,000.00 |
How this layer works
- Double-entry by construction.
src/engine/posting.ts takes a ledger_entries row and returns a balanced JournalEntryDraft. Σdr = Σcr always.
- Engine-deterministic rules. ACCRUAL → DR 6000 / CR 2100. PAYMENT → DR 2100 / CR 1000. CLAWBACK → DR 2100 / CR 6000 (reversal).
- Immutable once posted.
is_posted=1 entries cannot be edited. Corrections are made via a reversing entry with reverses_journal_entry_id.
- Ties to BI. Each journal_entry carries a
period_id linking to Sprint C financial_periods. Reporting can roll up by quarter/month for free.
- Backfilled. Migration 0019 backfilled existing ACCRUAL ledger entries (including Sprint A.3's first $358.40) into the GL so the books open with real data.