> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Double-entry bookkeeping

> Why every transaction touches two accounts so nothing gets lost or invented — the idea behind double-entry bookkeeping, with simple everyday examples.

**Double-entry bookkeeping** sounds technical, but the idea is something you already understand: **money never just vanishes or appears — it always moves from somewhere to somewhere else.** Double-entry is simply the habit of recording *both* ends of that movement, every single time.

## One event, two sides

***

Think about handing a friend \$10 for lunch. Two things happened at once: **your** wallet went down by \$10, and **their** wallet went up by \$10. One event, two effects.

Accounting insists you write down **both**. Every transaction touches **at least two accounts** — one giving, one receiving. That's why it's called *double*-entry. The **value** recorded on one side must be matched by equal value recorded on the other — it isn't always physical cash moving, but the two amounts always agree.

So a transaction is never a single line floating on its own. It's **one event with two connected effects**, and recording both is what keeps everything in balance:

```mermaid theme={null}
flowchart LR
    A["One business<br/>event"]:::event --> B["Effect 1<br/>one account changes"]:::effect
    A --> C["Effect 2<br/>another account changes"]:::effect
    B --> D["Equal value<br/>on both sides"]:::equal
    C --> D
    D --> E["Books stay<br/>balanced"]:::balanced
    classDef event fill:#f3f4f6,stroke:#6b7280,color:#111827
    classDef effect fill:#dbeafe,stroke:#2563eb,color:#1e3a8a
    classDef equal fill:#fde68a,stroke:#d97706,color:#78350f
    classDef balanced fill:#dcfce7,stroke:#16a34a,color:#14532d
```

This is the same balance rule from [debits and credits](/en/fundamentals/accounting/debits-and-credits): one account gets a debit, another gets a matching credit, and the totals agree.

## Why bother recording it twice?

***

Recording both sides feels like extra work. It's actually the whole point — it's a built-in lie detector.

* **Nothing gets lost.** If money left an account, it *must* show up somewhere else. You can't misplace it without the books refusing to balance.
* **Nothing gets invented.** Money can't appear out of thin air. For it to land somewhere, it had to come from somewhere.
* **Errors reveal themselves.** If the two sides don't match, you know instantly that something's wrong — before it becomes a real problem.

A single-entry list (just "money in, money out") can't do any of this. Double-entry turns the record into something you can **trust and prove** — which is exactly why banks and ledger systems are built on it.

## A simple example

***

**Paying rent — \$1,000 in cash:**

```mermaid theme={null}
flowchart LR
    Cash["Cash (an asset)<br/><b>− $1,000</b><br/><i>money left</i>"]:::cash
    Rent["Rent Expense<br/><b>+ $1,000</b><br/><i>where it went</i>"]:::rent
    Cash -->|"$1,000 moves"| Rent
    classDef cash fill:#dbeafe,stroke:#2563eb,color:#1e3a8a
    classDef rent fill:#fee2e2,stroke:#dc2626,color:#7f1d1d
```

| Account             | Effect                                              |
| ------------------- | --------------------------------------------------- |
| **Cash** (an asset) | Goes **down** \$1,000 — money left                  |
| **Rent expense**    | Goes **up** \$1,000 — that's what the money was for |

The \$1,000 didn't disappear. It moved from your cash into the cost of rent — two accounts, one matched movement, a clear source and a clear destination.

Money coming *in* works the same way in reverse: take a \$2,000 customer payment and **Cash** goes up while **Revenue** goes up to record where it came from. You'll write both of these out properly — debit and credit, side by side — in [Journal entries](/en/fundamentals/accounting/journal-entries). This page is only about *why* both sides have to exist; the next one is about *how* to write them.

## How it keeps the equation balanced

***

Remember **Assets = Liabilities + Equity**? Double-entry is what keeps that equation true after every transaction. Because each event is recorded with equal and opposite effects, the two sides of the equation can never drift apart. The bookkeeping habit and the balancing rule are really the same idea, viewed from two angles.

<Note>
  **See also in Core Banking**

  Core banking is built on this same both-sides rule — see [How money is recorded](/en/fundamentals/core-banking/double-entry-explained).
</Note>

## In short

***

* **Double-entry** records both sides of every transaction — where money came from and where it went.
* It exists so **nothing gets lost or invented**, and so errors show up immediately.
* Every entry uses a matching **debit and credit**, which keeps *Assets = Liabilities + Equity* in balance no matter what happens.

<Note>
  **Next up**

  That's the rule. Next, see how you actually write a transaction down — step by step — in [Journal entries](/en/fundamentals/accounting/journal-entries).
</Note>
