Double-Entry Accounting
SpeyBooks uses proper double-entry bookkeeping.
Every transaction affects at least two accounts, and total debits always equal total credits. This invariant is enforced at the API level.
Why double-entry?
Single-entry bookkeeping (for example, spreadsheets) records money in and out. Double-entry bookkeeping records where money comes from and where it goes.
This provides:
- Accuracy - unbalanced entries are rejected automatically
- Auditability - a complete, traceable history of every amount
- Compliance - required for UK limited companies
- Reporting - balance sheets and profit & loss statements fall out naturally
Double-entry is not a feature of SpeyBooks. It is the foundation.
The fundamental equation
Assets = Liabilities + Equity
Every transaction in SpeyBooks preserves this relationship.
Debits and credits
Whether a debit or credit increases an account depends on the account type.
| Account type | Debit | Credit |
|---|---|---|
| Asset | Increase | Decrease |
| Liability | Decrease | Increase |
| Equity | Decrease | Increase |
| Revenue | Decrease | Increase |
| Expense | Increase | Decrease |
SpeyBooks applies these rules consistently and deterministically.
Example: recording a sale
You invoice a customer for £1,200 (£1,000 + £200 VAT).
| Account | Debit | Credit |
|---|---|---|
| Accounts Receivable (Asset) | £1,200 | |
| Sales Revenue | £1,000 | |
| VAT Liability | £200 |
Totals:
- Debits: £1,200
- Credits: £1,200
- ✅ Balanced
Example: receiving payment
When the customer pays £1,200:
| Account | Debit | Credit |
|---|---|---|
| Bank (Asset) | £1,200 | |
| Accounts Receivable (Asset) | £1,200 |
The balance moves from "owed to us" to "cash in the bank". No revenue is created at this stage - it was recognised when the invoice was issued.
How SpeyBooks handles this
You do not need to manually create journal entries for normal business activity.
When you create an invoice, SpeyBooks automatically generates the correct double-entry transaction.
You can reason about the ledger directly - but you are never required to post journals for routine workflows.
Immutability
Ledger entries in SpeyBooks are immutable.
To correct an error, you create a reversing entry rather than modifying the original. This preserves a complete, auditable history of changes.
Nothing is overwritten. Nothing is hidden.
Key takeaways
- Every transaction balances
- Debits and credits are enforced, not implied
- Business events create accounting entries automatically
- Manual journals exist only for exceptional cases
- The ledger is append-only and auditable
This is what allows SpeyBooks to be predictable, inspectable, and compliant.