AnchorAnchor
Modules

Chart of Accounts

Set up and manage your general ledger accounts.

The Chart of Accounts is the foundation of your bookkeeping system. Every financial transaction references an account.

Account Types

TypeDescriptionExample
AssetWhat you ownCash, Accounts Receivable, Equipment
LiabilityWhat you oweAccounts Payable, Loans, Tax Payable
EquityOwner's stakeOwner's Equity, Retained Earnings
RevenueIncome earnedSales Revenue, Service Revenue
ExpenseCosts incurredRent, Salaries, Office Supplies

Account Codes

Accounts use numeric codes for organization:

  • 1xxx — Assets
  • 2xxx — Liabilities
  • 3xxx — Equity
  • 4xxx — Revenue
  • 5xxx — Expenses

Creating an Account

Navigate to Accounts in the sidebar and click New Account. Provide:

  • Code — Unique numeric code (e.g., 1200)
  • Name — Descriptive name (e.g., "Accounts Receivable")
  • Type — One of the five account types
  • Sub-type — Optional classification (e.g., "current", "fixed", "operating")
  • Default tax — Optional VAT/tax rate applied when coding lines to this account (see below)

Default tax rate (account-driven VAT)

Each chart account can store a default tax rate. When you pick that account while categorising a bank line, coding an invoice/bill line, recording an expense, or setting up a bank rule (without its own tax), the tax control fills from the account. You can always change tax on the line.

Typical South African examples:

AccountDefault tax
Bank Fees & ChargesStandard Rate 15%
Meals & EntertainmentNo VAT (or exempt — your practice)
Zero-rated purchasesZero-rated

Set or clear the default under Accounting → Chart of Accounts → [account] → Settings → Default tax. Built-in (system) categories can still have a default tax even though name and code are locked.

See also Tax Rates.

Default Accounts

New organizations receive a country template of standard accounts. Key control roles used by automations (default codes for the generic template):

Default codeRole / nameUsed by
1100Default bank / CheckingPayments (when no bank chosen)
1200Accounts receivableInvoice journals, payments, credit notes
1500Input VAT / GSTBill tax, VAT reports (F14)
2100Accounts payableBill journals, payments
2200Output VAT / GSTInvoice tax, VAT reports (F4)
4010Service RevenueInvoice line items (line-level, not a control role)
5000Cost of Goods SoldInventory / COGS
5100Wages & SalariesPayroll journal entries

Control account mappings

If your chart uses different codes (for example AR 0800 instead of 1200), do not try to rename locked built-in accounts. Map roles to your accounts under Settings → Control Accounts.

See Control Accounts for the full list of roles and how mapping works.

Built-in template accounts are marked system: name and code are fixed; hide unused ones by marking them inactive.

Deactivate all built-ins (custom chart migration)

After you import a custom chart of accounts and map AR, AP, VAT, bank, and related roles under Settings → Control Accounts:

  1. Open Accounting → Chart of Accounts.
  2. Click Deactivate built-ins.
  3. Confirm. Active built-in (isSystem) accounts are set inactive so they leave pickers and the default Active only list.

Accounts that are still the resolved control-account target are left active (with a toast). Remap those roles to your custom codes, then run Deactivate built-ins again.

API: POST /api/v1/bulk/accounts/set-active with body:

{
  "isActive": false,
  "scope": "system",
  "allowControlMapped": false
}
  • scope: system (all built-ins) or ids (listed account UUIDs, max 500)
  • allowControlMapped: set true only if you intentionally want to deactivate accounts still used as control targets
  • MCP: bulk_set_accounts_active (same parameters)

Use Reactivate built-ins (or the same API with "isActive": true) to reverse.

On this page