Supply Weave

CA Handover And Export Guide

Purpose And Responsibility

This guide explains how an ADMIN prepares the implemented accounting reports for review by the client’s chartered accountant (CA). Supply Weave reports posted ledger transactions in BDT. It does not calculate tax or VAT, create statutory notes, make unposted depreciation or provision adjustments, conduct an audit, or replace the CA’s professional review.

Use docs/opening-balance-import-guide.md for cutover preparation and evidence. Use docs/operator-period-close-checklist.md for monthly and fiscal-year close, reopen, and evidence retention. Report export is one part of those controls; it does not itself close a period or approve opening balances.

Before exporting, configure a nonblank company name in Company Settings. Both CSV and PDF export are intentionally unavailable without it.

Common Export Contract

  • Apply and review filters on the report screen before downloading. PDF uses the fetched screen DTO; CSV invokes the same report service and DTO contract with the same filters. Neither export formatter recalculates totals.
  • Report data is read from system journals and manual vouchers through the canonical combined ledger in a read-only REPEATABLE READ snapshot.
  • Monetary values are BDT fixed4 decimals. CSV preserves raw values such as 1234.5000, without thousands separators or locale rounding.
  • CSV contains the complete filtered data set, not only visible rows. It uses UTF-8 BOM, CRLF records, RFC-compatible quoting, ISO dates, and formula-safe free text for spreadsheet use.
  • Stable filenames identify the report and selected period or as-of date. CSV filenames come from the API Content-Disposition; PDF uses the same filename base in the browser.
  • PDF headers show company, period, currency, and generation context. Every page includes generation time, page numbering, and the scope notice covering tax, VAT, statutory disclosures, and unposted audit adjustments.

Reports And Filters

Trial Balance

Web route: /financial-statements/trial-balance

Filters are fiscal year, accounting period, paired dateFrom and dateTo, hierarchy level 1 to 3, and show-zero-balances. A selected period must belong to the selected fiscal year, and custom dates may only narrow that container. With custom dates alone, both dates are required.

Interpret opening debit/credit as balances before the selected range, period debit/credit as gross movement within it, and closing debit/credit as the result. Opening, period, and closing each have separate reconciliation. A nonzero difference is a real integrity signal and must not be hidden. Rolled hierarchy rows are presentation; grand totals come from direct account balances.

Warnings identify unresolved posting accounts. Those amounts remain in totals and reconciliation but cannot link to a known account ledger. Readiness notices are advisory and separate from Trial Balance reconciliation.

PDF: A4 landscape. CSV API: GET /api/financial-statements/trial-balance/export.

General Ledger

Web route: /ledgers

Choose an account, optional dateFrom and dateTo, and leaf or group mode. Leaf mode reports the selected account. Group mode includes its full account subtree. The report includes opening balance, every matching system or manual posting, running balance, and closing balance from one combined snapshot.

Reversed originals remain visible together with their compensating entries. Adjustment evidence is included where present. Review unusual running balances, source links, correction references, and reversed entries rather than removing them from the handover.

PDF: A4 landscape. CSV API: GET /api/ledgers/:accountId/export.

Profit And Loss

Web route: /financial-statements/profit-loss

Filters are required dateFrom and dateTo and optional hierarchy level 1 to 3. Levels change detail, not section totals or net profit. The report presents Revenue, Cost of Sales, Operating Expenses, Other Income, Other Expenses, and the resulting gross profit, operating income, and net profit.

Year-end close and close-reversal journals are excluded so historical operating performance is not changed by closing mechanics. This exclusion does not mean that other posted adjustments are omitted.

PDF: A4 portrait. CSV API: GET /api/financial-statements/profit-loss/export.

Statement Of Financial Position

Web route: /financial-statements/statement-of-financial-position

asOfDate is required. comparisonDate is optional and defaults to the end of the immediately preceding contiguous fiscal year. It must be earlier than the as-of date. Hierarchy level is 1 to 3; show-zero-balances controls rows whose current and comparison amounts are both zero.

Assets use debit-normal presentation; Liabilities and Equity use credit-normal presentation. Negative values are abnormal balances and remain visible. Current-Year Earnings is calculated for the containing fiscal year before close. Earlier unclosed nominal balances appear separately as Unclosed Prior-Year Earnings, not as posted retained earnings.

Confirm the visible Assets = Equity + Liabilities reconciliation. Unclassified accounts remain in their type totals and produce blockers. Unresolved account IDs remain visible as integrity warnings and can cause a reconciliation effect; they are not silently assigned to a statement section.

PDF: A4 portrait. CSV API: GET /api/financial-statements/financial-position/export.

Receipt And Payment

Web route: /financial-statements/receipt-payment

Select a YYYY-MM month and optionally show zero rows. The report separates classified CASH and BANK liquidity sections, presents receipts and payments by category and day, and supports detail drill-down. Transfers and bank-funding presentation follow the report’s liquidity allocation rules.

The report snapshot supplies daily available values and section availableFunds; exports preserve them unchanged. Available funds equal opening balance plus receipts, while closing balance subtracts payments. Do not recreate these values in a spreadsheet by summing only visible category rows.

The separate Accounting Readiness report flags transactional liquidity accounts that lack the required CASH/BANK classification. Resolve those readiness findings before treating Receipt & Payment as a complete liquidity view.

PDF modes: A4 readable landscape and A3 compact landscape. CSV API: GET /api/financial-statements/receipt-payment/export.

Handover Checklist

  1. Confirm company name, accounting settings, fiscal calendar, and reporting periods.
  2. Review accounting readiness, unresolved-account warnings, unclassified balances, abnormal signs, and every reconciliation difference.
  3. Select the agreed period and hierarchy detail on each report.
  4. Download CSV for complete working data and PDF for the fixed presentation.
  5. Keep each CSV/PDF pair together; their stable filenames and report contexts identify the same filter scope. Each download remains its own report snapshot and generation time.
  6. Give the CA the Trial Balance, relevant ledgers, Profit & Loss, Statement of Financial Position, and Receipt & Payment, plus supporting adjustment and opening-balance evidence where requested.
  7. Record and post CA-approved corrections through adjustment journals, then regenerate the report set. Never edit exported totals and treat them as if they were system postings.
  8. Have the CA separately address tax, VAT, depreciation, provisions, statutory disclosures, audit procedures, and filing obligations.
  9. After approved adjustments are posted and reports are regenerated, complete the applicable steps in docs/operator-period-close-checklist.md. Keep the opening-balance package described in docs/opening-balance-import-guide.md with the handover when the reporting scope includes the cutover.

API Notes

All CSV endpoints require an authenticated ADMIN session and the same query filters as their JSON report endpoints. Successful responses are text/csv; charset=utf-8, private/no-store downloads. A missing company name returns validation error 422; invalid filters return 400.