The ledger
Keyboard-first inline editing, real search, splits, tags, and locked-once-reconciled history.
The transactions ledger is where you'll spend most of your time in Ember, and it's built like a power tool: a dense, keyboard-first register where every edit happens inline, every action is undoable, and a reconciled row is locked for good. If you've ever wished your finance app felt like a well-tuned spreadsheet instead of a stack of modal dialogs, this is that.
Editing at the speed of typing
- Inline everything. Click (or keyboard into) any cell — date, payee, category, memo, amount — and edit it right there. No edit screens, no popups blocking the page.
- Keyboard-first. The register has a full shortcut vocabulary, a command palette (⌘K) that jumps to any account, payee, action, or page, and pickers you can drive entirely with arrows and Enter.
- Undo, not "are you sure?". Ember doesn't nag you with confirmation dialogs. It saves, shows a toast, and gives you Undo. Destructive actions that genuinely can't be undone are the only things that ask twice.
- Smart pickers. The payee picker learns your habits: choosing a payee pre-fills its usual category. Transfers live in the same picker — pick one of your own accounts instead of a payee and the paired entry is created on the other side automatically.
Search that speaks your language
The ledger search understands a real query grammar, not just substring match: multiple terms combine with AND, amounts support operators and ranges (>100, 25..75), and you can scope terms by field, direction, or date range. Type, hit ArrowDown, and you're on the first result.
Splits, tags, and related transactions
- Splits divide one transaction across categories, with the parts always summing to the whole — enforced, not hoped for.
- Tags are freeform colored labels you define, attach to any transaction, and filter by (filters combine, so
vacation+reimbursablemeans both). - Related transactions connect entries that belong together — a purchase and its refund, an expense and the check that repaid it — so the story stays together.
Cleared, approved, reconciled
Ember uses the classic register discipline:
- Uncleared → cleared as transactions match what the bank reports.
- Approved means you've looked at it — new imports queue for a quick review pass instead of silently entering your books.
- Reconciled means you've balanced the account against a real statement, and every reconciled row becomes read-only. Your history can't drift after you've signed off on it.
Reconciliation is a guided flow per account: enter the statement balance, check off cleared items, and lock the period. Balance snapshots record the result so your net-worth history stands on audited ground.
Recurring transactions
Rent, salary, subscriptions — define the cadence once and Ember posts them automatically, showing upcoming instances in a Scheduled group before they land. Cadences handle real-world rules (last weekday of the month, every second Friday) rather than just "monthly."
On your phone
Ember detects phones and serves a purpose-built mobile app: net worth and accounts on the home screen, a card-swipe review queue for approving new imports, and a searchable ledger with quick-add. The desktop register is one tap away when you need it.
See also
- Bank sync & import — where the rows come from.
- Automation — rules that do the editing for you.