Booksmor ships with 20+ pre-built reports across financial, sales, purchase, cash & bank, and analysis categories. This guide covers how to find them, run them, drill into the underlying vouchers, export, and share with your CA or team.
Time to read: ~12 minutes. You’ll need: at least a few posted vouchers — reports run against what’s in your books.
What you get when this is done
- Quick access to every standard report — Profit & Loss, Balance Sheet, Trial Balance, Sales/Purchase registers, Ageing, Cash Book, and more.
- One-click drill-down from any row → the underlying voucher.
- Column chooser per report so you only see what matters.
- Saved and custom reports for queries you run often.
- Email / WhatsApp share of any report directly to your CA or team.
Where to find the screen
From the sidebar: Reports (top-level item, between Dashboard and GST).
Left side of the page: a collapsible category list of every available report. Right side: the Period filter at the top.
Report categories
Reports are grouped into five categories. Click a category header to expand or collapse it.
Financial
| Report | What it shows |
|---|---|
| Profit & Loss | Income vs Expense for the period; net profit. |
| Balance Sheet | Assets, Liabilities, Equity as of period end. |
| Cash Flow Statement | Operating, investing, financing cash flows. |
| Trial Balance | All accounts with closing Dr/Cr balances. |
| Ledger | Detailed transactions for one account, a category, or several accounts. |
| Day Book | Every voucher on every day, in date order. |
| Credit Note Register | All credit notes for the period. |
| Debit Note Register | All debit notes for the period. |
Cash & Bank
| Report | What it shows |
|---|---|
| Cash Book | Cash receipts and payments. |
| Bank Book | Bank receipts and payments per bank account. |
| Petty Cash Book | Petty cash movements. |
Sales
| Report | What it shows |
|---|---|
| Sales Register | Every sales invoice for the period. |
| Sales by Customer | Per-customer total sales — biggest customers at the top. |
| Sales by Item | Per-product total sold (quantity + value). |
| Receivables Ageing | What each customer owes, bucketed 0–30 / 31–60 / 61–90 / 90+ days. |
Purchase
| Report | What it shows |
|---|---|
| Purchase Register | Every purchase invoice for the period. |
| Purchase by Vendor | Per-vendor total spend. |
| Purchase by Item | Per-product total purchased. |
| Payables Ageing | What you owe each vendor, bucketed by age. |
Analysis
| Report | What it shows |
|---|---|
| Transaction Analyzer | Filterable, sortable view of every voucher — by type, party, item, search. The Swiss-army knife for ad-hoc digging. |
Some reports show · soon next to them — those need a feature/plan tier your tenant doesn’t have yet. Hovering shows the reason.
Running a report
- Period (top right) — set the date window. Accepts:
all— all timeYYYY-MM— one month, e.g. 2026-04Qn-YYYY— one quarter, e.g. Q1-2026 (Apr–Jun)YYYY— one financial year
- Click a report’s name in the left list.
- The report opens in a modal that fills most of the screen — title at the top, table below.
If the report has multiple sections (e.g. Profit & Loss has Income, Expense, Net), each appears as its own table inside the modal.
Drilling down
Most rows in most reports are clickable. The cursor changes to a pointer over rows that drill.
- Single-click a row → the Ledger for that account or party opens in a sub-view (with a ← Back button at the top of the modal to return).
- Inside the Ledger, single-click a voucher row → expand its ledger lines inline.
- Double-click a voucher row → open the full Voucher view (with Print / PDF / Share / Edit / Delete buttons).
You can stack drills: Profit & Loss → click an income line → see the Ledger → click a voucher → see the full voucher. The ← Back button takes you up one level at a time.
Column chooser
Click Columns ▾ in the top-right of the report modal. Tick / untick to show or hide columns. Your choice is remembered per-report in your browser (so the next time you run the same report, the same columns are hidden).
Use this when a report has more columns than you need — keep just Date, Voucher, Amount and hide the rest.
Closing the report
Click the ✕ at the top-right of the modal, click the dark backdrop outside, or press Esc.
The Ledger report — three modes
The Ledger report is more flexible than the others. Before running it, pick a mode:
| Mode | Picks | What it shows |
|---|---|---|
| Complete | (no picker) | All accounts, all transactions for the period. |
| Single | One account | Just that account’s ledger. |
| Group | One category | Every account in that category combined (e.g. all Cash & Bank accounts). |
| Multi | Tick several accounts | The combined ledger of your selection. |
Use Single for a customer/vendor ledger (their AR/AP sub-account); use Group for “all my bank accounts together”; use Multi for any custom slice.
Transaction Analyzer
The Transaction Analyzer is the most flexible report — filter every posted voucher by:
- Type — sales, purchase, credit note, debit note (any combination).
- Party — narrow to one customer or vendor.
- Item — narrow to vouchers containing one product.
- Search — free-text match against voucher number, party name, or line description.
- Sort by — date, amount, party.
- Sort direction — asc / desc.
Use it when none of the standard reports answer your specific question — e.g. “every voucher above ₹50,000 for vendor ABC in Q2 sorted by amount.”
Sharing a report
In the report modal toolbar (top-right), click Send (or the share icon). A small panel opens with two channels:
- Email — type the recipient’s address, click Send. The report is emailed as a PDF via your tenant’s email sender (or platform fallback if you haven’t configured tenant SMTP).
- WhatsApp — opens WhatsApp Web (or the WhatsApp desktop app) pre-filled with a short summary message. You’ll see the message draft; the recipient gets your text. They don’t get the actual report content — the WhatsApp share is just a notification.
For most CA hand-offs, Email is the right choice — sends the rendered PDF.
Saved & custom reports
Some report queries are worth keeping — e.g. “Sales register, last month, only customer XYZ”. After running a report, click Save in the modal toolbar to bookmark the query. It appears in a Saved & custom group in the left sidebar; one click re-runs it.
For genuinely custom reports (a column shape that doesn’t match any of the built-ins), there’s a Report Designer at Setup → Report Designer. It’s a power-user feature — most needs are met by the standard reports + saved variants.
Where reports get their data
Reports read posted vouchers only — drafts and void vouchers are excluded by default.
- Profit & Loss / Balance Sheet — income & expense / asset & liability accounts (your Chart of Accounts categorisation drives the layout).
- Sales/Purchase reports — vouchers of type sales / purchase / credit_note / debit_note.
- Ageing reports — open balances on customer / vendor accounts, bucketed by voucher date.
- Cash / Bank books — any voucher with a leg in a Cash or Bank account.
If a report shows zero / empty when you expect data, the most common cause is period — your transactions are outside the window. Switch to all to confirm the data exists, then refine.
Common questions
My P&L doesn’t match what my CA expects. Usually one of: (1) some vouchers are still in draft status — check Operations → Drafts; (2) period covers a non-financial-year window; (3) your Chart of Accounts has accounts in the wrong category (e.g. an Expense account miscategorised as Asset). Cross-check with the Trial Balance — it shows every account by category.
Balance Sheet doesn’t balance. Run the Trial Balance first. If total Dr ≠ total Cr, an opening-balance line was likely entered incorrectly, or a Journal voucher was posted with mismatched debits/credits (Booksmor blocks this normally — but historical data imported from elsewhere might not be). Contact your CA or support.
Ageing report shows ₹0 for a customer who clearly owes me. The customer’s outstanding is calculated from posted vouchers. If you’ve recorded the invoice but it’s still a draft, it won’t show. Post it first.
Can I export a report to Excel / CSV? Yes — most reports have an Export button in the modal toolbar. CSV is the default; Excel is a small-tier-up roadmap item.
Reports take a long time to load when I pick all.
A few years of vouchers in a single report can take 10–30 seconds. Narrow to a single year or quarter for faster loads; use all only when you genuinely need the lifetime view.
Why isn’t my custom voucher book’s series in the Sales Register?
The Sales Register includes vouchers of type='sales' regardless of book. Custom books base on a type; if your book’s base_type is sales, its vouchers appear. If you don’t see them, double-check the book’s base type via Setup → Settings → Voucher books.
Can I email a report on a schedule (e.g. weekly Sales register every Monday)? Not yet — the Operations → Reminders module has the infrastructure; scheduling a report-send is a roadmap item. For now, run + email manually.
Where do I see drill targets from a report? Hover any row — if the cursor turns into a pointer, the row drills. Numeric rows in totals/footers typically don’t drill.
Troubleshooting
Report opens with “No data for period”.
Either no vouchers fit the period, or every voucher in the period is a draft. Widen the period to all to confirm, then narrow back to find the right window.
Drill returns “ledger empty”. The account / party has no transactions in the period. Drilling from a P&L row that has only a category total (no specific account) will sometimes show empty — drill from a more specific row instead.
Send / Email fails with “email not configured”. You haven’t set up SMTP for the tenant. Go to Settings → Tenant SMTP and add your sending email. Until then, use Export → CSV and email the file yourself.
Columns ▾ doesn’t remember my preference. Browser-local storage is per-browser-per-device. If you open the same report on a different browser or computer, your column preference there starts fresh.
Need more help? Email support@booksmor.com with: the report name, the period, and a screenshot of the unexpected output.