BigBooks Docs
The Ledger

General Ledger

As an operator, you will run the General Ledger as a filterable report — pick a date range, currency, and accounts — and drill into any account to read its opening balance, every movement with a running balance, and its closing balance.

What you'll accomplish

As an Operator, you will run the General Ledger as a filterable report — pick a date range, currency, and accounts — and drill into any account to read its opening balance, every movement with a running balance, and its closing balance.

Before you start

The General Ledger lives at /[lang]/general-ledger. In the jun27 upgrade it is a report-view, not a list you edit: a filter bar (date range, currency, optional account picker) above a summary of accounts, each drillable into its detail. The old /[lang]/general-ledger/report-view URL now redirects here, carrying its from / to / currency query params, so existing bookmarks keep working. You need a selected company and one of the journal permissions (canViewJournals, canCreateJournals, or canConfirmJournals). The report defaults to the current month and the LAK currency.

The General Ledger reads, it never posts. Nothing here changes a balance — it aggregates postings that already exist, so it is safe to open in any period, including closed ones.

Steps

Open the General Ledger Go to /[lang]/general-ledger. The report opens for the current month in LAK. The secondary-header breadcrumb names the report; the as-of range, currency, and the Excel export sit in the header action zone.

General Ledger report-view: filter bar (date range, currency, accounts) above the per-account summary.
General Ledger report-view: filter bar (date range, currency, accounts) above the per-account summary.

Set the date range, currency, and accounts Use the filter bar to choose the period (from/to), the report currency (LAK, USD, or THB), and — optionally — narrow to specific account codes. The filters are reflected in the URL so the view is shareable and survives a refresh.

Filter bar with date-range, currency selector, and the account multi-select.
Filter bar with date-range, currency selector, and the account multi-select.

Drill into an account Each summary row shows an account with its opening and closing balance. Open a row to expand its detail: every debit/credit movement for the period with a running balance, plus the opening and closing figures. A client-side search box filters the summary list by code or name.

An account expanded to show opening balance, period movements with a running balance, and closing balance.
An account expanded to show opening balance, period movements with a running balance, and closing balance.

Export to Excel Use the Excel action in the header to download the report for the current filters; the file mirrors what is on screen.

Excel export action in the secondary header.
Excel export action in the secondary header.

What happens behind the scenes

The page renders GLReportViewPage, which calls two read-only Convex queries: getGLReportSummary (per-account opening balance, period debits/credits, and closing balance) and getGLAccountDetail (the line-by-line movements with a running balance for one account), both in reports/glReportView.ts; the account picker is fed by chartOfAccounts/queries.ts list. Every figure is an aggregation of confirmed (posted) journal-entry lines — there is no separate ledger store. A posting only counts once its journal entry is posted; drafts never appear. Each movement is a balanced double-entry line in integer satang, so for any account the closing balance equals opening + Σ(debits − credits) per its account-type normal side, and across all accounts total debits equal total credits. Postings arrive from issued invoices (Dr Accounts Receivable / Cr Revenue + VAT Output), confirmed payments (Dr Bank or Cash / Cr Accounts Receivable), and posted manual journal vouchers — all reconciled to the MoF 2020 chart of accounts.

Common problems

  • Empty report: If no postings exist in the range, accounts show opening = closing with no movements — widen the date range or confirm the documents are posted, not drafts.
  • A draft is missing: Draft invoices, unconfirmed payments, and draft journal vouchers do not appear; only posted entries aggregate into the ledger.
  • Wrong currency view: The report re-values per the selected report currency; switch the currency filter if balances look off for a foreign-currency account.
  • Old report-view link: /[lang]/general-ledger/report-view redirects to /[lang]/general-ledger with your params preserved — update any saved bookmark to the new path.
  • No figures shown: Without a journal permission the page is gated; ask an admin to grant canViewJournals.

On this page