Bilvx

The Accounting Module

Full double-entry bookkeeping for Bilvx: a general ledger, receivables and payables, period close, bank reconciliation, and financial reports — all built on top of the e-Invoices you already issue. This guide is the map of that module: what each screen does, how documents post to the ledger, and where to find each report.

The accounting module is available on every plan: it appears in the sidebar and answers on its /accounting/* routes for all signed-in companies. Your plan tier sets the monthly AI capture quota — see Plans, Limits & Preferences.

New to Bilvx itself? Start with What is Bilvx and Getting Started; this page assumes you can already sign in, select a company, and issue invoices.

Before you start

  • Select the right company. Everything below is scoped to the company chosen in the top-bar selector. The ledger, accounts, and reports all belong to that one company.
  • Set default payment terms. The company form has a payment-terms field (default 30 days). It drives each invoice's derived due date (issue date + terms) and the Overdue badge. Set it before you rely on AR aging.
  • Some actions are owner-only. Company members (Customer Admins) can do day-to-day bookkeeping, including monthly period close and reopen. Approving purchase orders, the year-end close, and three-way-match overrides are reserved to the company owner.

The ledger: Chart of Accounts and Journal

On first accounting use, Bilvx copies a seeded Malaysia SME chart of accounts (46 accounts) into your company. It includes anchor accounts the module posts against automatically — Accounts Receivable, Sales, SST Output, Bank, Cash, Accounts Payable, Purchases, Retained Earnings, and a rounding account. You can add and rename accounts under Chart of Accounts.

The ledger is a strict double-entry, append-only journal. Key rules to know:

  • Every entry balances (total debits = total credits), and each line is exactly one of a debit or a credit.
  • Entries are immutable. You never edit or delete a posted entry — you post a reversal. This keeps a clean audit trail.
  • Invoices and payments post automatically. A validated sales invoice posts Dr Accounts Receivable / Cr Sales; a self-billed invoice (a purchase) posts Dr Purchases / Cr Accounts Payable. You don't hand-key these.
  • The Journal page also takes manual entries (accruals, adjustments), and Opening Balances seeds the starting position when you migrate onto Bilvx.

Backfilling. The Journal page has a Backfill invoices action that posts ledger entries for documents created before the ledger existed (or before a posting fix shipped). It is idempotent — safe to run once per accounting-enabled company after an upgrade. Run it if your operator's release notes tell you to.

Receivables: getting paid

Sales invoices are the AR source; see Creating & Managing Invoices for the invoice lifecycle itself. Once an invoice is VALID, record money against it here.

  • Payments — record money received. A payment can settle one or more invoices (partial and on-account allowed) and posts its own ledger mirror. Remove a payment only through the void flow, which releases its allocations and reverses the ledger mirror.
  • Auto-settle on validation (optional). The company form has a default-to-paid flag; the invoice create form then shows a Mark paid on validation checkbox. When set, reaching VALID auto-creates a full settling payment through the posting engine. It is strictly opt-in and both defaults are off.

Track the position with AR Aging (30/60/90/120+ buckets, drills down to the customer) and Customer Statement under Reports.

Payables: what you owe

The module records payables from three kinds of source document:

  • Supplier Bills — a supplier's own invoice (rent, utilities, stock). Enter it as a DRAFT; header totals are computed from the lines on the server. On CONFIRM it posts one debit per line to that line's account plus one credit to Accounts Payable for the total. Bills are tax-inclusive — SST on a purchase is treated as cost. You can also create a bill by capturing a supplier document; see Capturing Supplier Documents.
  • Purchase Orders — a DRAFT → SUBMITTED → APPROVED workflow. Any member may submit; only the company owner approves. A PO never touches the ledger. An approved PO converts to a draft supplier bill (supplier and lines copied), which posts on the bill's confirm.
  • Debit Notes — an AP-reducing note (a return, short delivery, or over-bill). On confirm it posts Dr Accounts Payable / Cr the note's account and nets into the referenced bill's outstanding across open payables, aging, and statements. A note can also stand alone as an unapplied credit.

Pay suppliers under:

  • Supplier Payments — money paid to a supplier, allocated to self-billed invoices and/or supplier bills. Posts Dr Accounts Payable / Cr Bank.
  • Payment Runs — batch supplier payments. The new-run page lists every open payable due by a chosen date; clear out what you don't want to pay and post. Each supplier's payment goes through the normal supplier-payment path; a run where nothing posts is refused rather than left empty. Voiding a run reverses every payment in it.

Goods receipts and three-way match. Record goods received against an approved PO; Bilvx then compares ordered (PO), received (GRN), and billed values. Within tolerance the bill is MATCHED; outside it, EXCEPTION.

Track the position with AP Aging and Supplier Statement under Reports.

Period close

Periods live under Accounting → Periods and gate what can post.

  • Monthly close. Closing a month locks it: every posting producer (manual entries, invoice auto-posts, payments, reversals, reconciliation "Add to books") is rejected for a date in that month. A month with no period row is OPEN — locks are explicit acts, nothing is grandfathered. Close and reopen in month order. Close/reopen is Customer Admin only.
  • Year-end close. Once all twelve months of a fiscal year are closed, the company owner posts a single year-end closing entry that sweeps every income and expense balance into Retained Earnings, dated the fiscal year's last day. Reopening posts its reversal (newest closed year first).
  • Fiscal year start month is configurable on the company form. It locks while a year-end close stands — reverse the closed year(s) before changing it.

Bank reconciliation

Two screens, run in order:

  1. Bank Statements — import a bank statement (CSV, up to 1 MB) against a chosen bank account. You upload, preview and map columns over your own file, then confirm; each parsed line is staged for matching. Staged upload data is transient and purged automatically after 24 hours.
  2. Reconcile (/accounting/bank-reconciliation, per bank account) — match staged statement lines against that account's ledger movements. Bilvx auto-suggests a match on an equal amount within a 5-day window; confirm to mark the line CLEARED. For a statement line with no ledger counterpart, Add to books creates the missing entry through the posting engine — so the period lock still applies (a closed statement date is refused).

A reconciliation is saved only when it balances: opening balance plus the sum of cleared lines must equal the statement's closing balance. Until then, keep matching or adding entries.

Recurring documents

The Recurring page holds templates that generate ordinary draft invoices or supplier bills on a monthly/quarterly schedule. They are materialised as you use the app — one document per template per run date, with a date-stamped number so a document is never duplicated. You still review each one (and, for invoices, submit it to LHDN yourself); a template never posts or submits on its own.

Reports

Everything above feeds the Reports section of the sidebar:

ReportWhat it shows
Trial BalanceEvery account's debit/credit balance — the ledger's integrity check.
Profit & LossIncome less expenses for a period.
Balance SheetAssets, liabilities and equity as at a date.
Cash FlowMovement of cash, tied to your Bank and Cash accounts.
AR Aging / AP AgingOutstanding receivables / payables in age buckets; drill down to the party.
Customer Statement / Supplier StatementPer-party running account.
Tax ReportSST input/output classification from your invoices and bills.

Several reports also export to CSV.

Where this is heading

The module is under active build-out. The published direction — remaining ledger, payables, reporting, and bank features — lives in the project's roadmap; ask your operator what's live on your deployment before depending on a feature. Operators can find the migration and gating detail in Deploying & Operating Bilvx, and the recurring questions are collected in the FAQ.