Accounting

Module guide

Accounting is the financial core of the workspace: general ledger (CoA + journals), standard reports, and automatic postings from sales and purchase. This guide matches the sidebar layout and the ERP Accounting Module Specification v1.0 (see implementation table below).
How to use every screen? Open the full step-by-step guide: Accounting — how to use (dashboard, AR/AP, banking, tax, fixed assets, budgets, reports, cron).
Access — Permission workspace.accounting (Accountant, Administrator, Owner). Sidebar group: Accounting. Tabbed sub-menu reference: Sidebar menus.

Record-to-report flow

  1. Set up the chart of accounts (asset, liability, equity, revenue, expense).
  2. Generate accounting periods for your fiscal year (Accounting → Accounting periods).
  3. Post opening balances with journal entries when migrating.
  4. Run daily operations — sales invoices and receipts auto-post to GL when configured.
  5. Enter manual journals for adjustments, accruals, and purchase/inventory gaps.
  6. Reconcile operational AR/AP on Sales and Purchase screens until sub-ledgers ship.
  7. Close the period: trial balance (must foot), P&L, balance sheet.

Full how-to guide

Every Accounting screen explained step by step (AR, AP, banking, tax, assets, budgets, cron). Open: https://saas-erp.schoolkam.com/docs/accounting/how-to

  • Bookmark this page for training new accountants.

Chart of accounts

Menu path: /workspace/{your-company-slug}/accounting/accounts

Asset, liability, equity, revenue, expense hierarchy.

  • Use parent accounts for roll-ups in reports.
  • Avoid deleting accounts used on journal lines.

Accounting periods

Menu path: /workspace/{your-company-slug}/accounting/periods

Fiscal months (open / closed / locked); posting only in open periods.

  1. Generate months for fiscal year
  2. Close each month after reconciling
  3. Close fiscal year to transfer P&L to retained earnings

Journal entries

Menu path: /workspace/{your-company-slug}/accounting/journals

Manual double-entry vouchers (draft / posted / reversed).

  1. New entry → balanced lines
  2. Save draft or Save & post
  3. Post from list for drafts
  4. Reverse posted entries when correcting

Ledger

Menu path: /workspace/{your-company-slug}/accounting/reports/ledger

Transactions per account for a date range.

  • Drill down from trial balance when investigating an account.

Trial balance

Menu path: /workspace/{your-company-slug}/accounting/reports/trial-balance

All balances at a point in time; debits must equal credits.

Profit & loss (P&L)

Menu path: /workspace/{your-company-slug}/accounting/reports/pl

Revenue and expense accounts for a period.

Balance sheet

Menu path: /workspace/{your-company-slug}/accounting/reports/balance-sheet

Asset, liability, and equity as of a date.

Cash flow

Menu path: /workspace/{your-company-slug}/accounting/reports/cash-flow

Indirect-method cash flow for a period.

Account types (chart of accounts)

Type Report Normal balance & examples
asset Balance sheet Debit normal balance; cash, AR, inventory, fixed assets
liability Balance sheet Credit normal; AP, loans, GST payable
equity Balance sheet Credit normal; capital, retained earnings
revenue P&L (income) Credit normal; sales and other income
expense P&L (expense) Debit normal; COGS, salaries, rent

Integrations

Module Direction What posts to GL
Sales Sales → Accounting Posted invoices, receipts, and returns create journal entries (default CoA codes 1200, 4000, 2100, cash/bank).
Purchase Purchase → Accounting Approved invoices, completed payments, and settled debit notes auto-post via PurchaseAccountingPoster (2000 AP, 5000, 2110 ITC, 2200 TDS, cash/bank).
Inventory Inventory → Accounting GRN, issues, adjustments post inventory and COGS accounts when configured.
Payment management Bidirectional Customer receipts and vendor payments align with AR/AP; reconcile on sales invoice list and purchase AP screens.
Auto-posting — Sales and purchase documents post to GL on save/approve. Default codes: sales 1200/4000/2100; purchase 2000/5000/2110/2200; cash/bank 1000/1100. See the how-to guide for the full table.

Implemented in this app

Feature Status In this app
Chart of accounts Partial Accounting → Chart of accounts (active, allow posting, group accounts, deactivate)
Journal entries (manual) Partial Accounting → Journal entries — draft, post, reverse; JE-YYYY-NNNNN
Accounting periods Partial Accounting → Accounting periods — FY months, close/lock/reopen, year-end
Sales auto-posting Partial SalesAccountingPoster — posted JE; requires open period for document date
Ledger report Implemented Accounting → Ledger
Trial balance Implemented Accounting → Trial balance
Profit & loss Implemented Accounting → P&L
Balance sheet Implemented Accounting → Balance sheet
Cash flow statement Partial Accounting → Cash flow — indirect method, reconciles to cash & bank GL
Purchase auto-posting Partial PurchaseAccountingPoster — invoices, payments, debit notes; codes 2000 AP, 5000, 2110 ITC, 2200 TDS, 1000/1100
AR sub-ledger Partial Accounting → Customer ledger (AR), AR aging, customer outstanding/statement — `customer_ledger` synced from sales GL post
AP sub-ledger Partial Accounting → Vendor ledger (AP), AP aging, vendor outstanding/statement — `vendor_ledger` synced from purchase GL post
Bank accounts Partial Accounting → Bank accounts — link cash/bank GL (asset), opening balance, book balance
Bank reconciliation Partial Accounting → Bank reconciliation — CSV import, manual lines, match to journal lines, finalize
Tax codes Partial Accounting → Tax codes — GST/TDS/TCS definitions with rate and optional GL link
GST returns workspace Partial Accounting → Tax returns — GSTR-1/3B/9, TDS 24Q/26Q prepare & file workflow
Accounting dashboard Partial Accounting → Dashboard — AR/AP, cash & bank, GST summary, workflow counts
Fixed assets register Partial Accounting → Fixed assets — register, CWIP capitalize, monthly depreciation (JE), disposal
Currencies & exchange rates Partial Accounting → Currencies — ISO master, base currency, daily rates, convert to functional currency
Cost centers & budgets Partial Accounting → Cost centers & budgets — dimensions, GL budget lines, activate/close, budget vs actual report
Recurring journals Partial Accounting → Recurring journals — balanced templates, activate/pause, run due or manual, optional auto-post; cron: accounting:run-tenant-schedules --recurring (daily 02:00)
Accounting tenant scheduler Partial php artisan accounting:run-tenant-schedules — recurring journals (daily) and fixed-asset depreciation (1st of month); requires Laravel scheduler cron

Specification scope (v1.0)

Full PDF index: docs/ERP_Accounting_Module_Specification_INDEX.md in the repository. Sub-modules below show what the spec defines vs what is live today.

Sub-module (spec) Scope App status
Chart of accounts Hierarchy, types, description, active/posting flags, parent type match Partial
Journal entries Draft/post/reverse, JE numbering, balanced lines, sales auto-post Partial
Accounts receivable Customer sub-ledger, receipts, aging, write-offs Partial
Accounts payable Vendor sub-ledger, bills, payments, debit notes, aging Partial
Banking Bank/cash accounts, reconciliation, payment runs Partial
Tax management GST, TDS, TCS, ITC, GSTR returns, e-invoicing Planned
Fixed assets Register, SLM/WDV depreciation, disposal, CWIP Partial
Multi-currency Currency master, daily rates, convert to base Partial
Budgets & cost centers Cost center hierarchy, budgets by period, budget vs actual Partial
Period management Apr–Mar months, open/close/lock, reopen, year-end P&L transfer Partial
Financial statements TB, P&L, balance sheet, cash flow Partial
Recurring journals Templates, schedules, run due / auto-post Partial

Double-entry basics

  1. Debit increases assets and expenses; decreases liabilities, equity, and income.
  2. Credit is the opposite.
  3. Every journal entry must balance: total debits = total credits.
  4. Save as draft, or Save & post. Posted entries are immutable; use Reverse on the list. Only posted lines appear in reports.

Month-end checklist

  1. Confirm all sales invoices and payment receipts for the period are saved (GL lines created).
  2. Confirm purchase invoices are approved and vendor payments completed (GL auto-posts).
  3. Review inventory valuation and adjustments.
  4. Run trial balance — debits must equal credits.
  5. Run P&L and balance sheet; investigate variances.