Appearance
Ledgers
EaseLab's Finance permission group provides double-entry style ledger management for laboratories that track cash, banks, patient advances, employee balances, and vendor settlements alongside patient billing.
Primary screen: /admin/ledgers
Core permission: ledgers plus related finance modules
Finance module map
mermaid
flowchart TB
L[Ledgers chart] --> LE[Ledger entries]
LE --> DB[Daybook summary]
CM[Cash management] --> LE
PV[Patient vouchers] --> LE
AP[Advance payment] --> LE
BC[Banks & cheque] --> LE
TC[Transfer cash] --> LE
EL[Employee ledger] --> LE
EA[Employee advances] --> LE
VP[Vendor payment] --> LE
SM[Salary management] --> LEChart of accounts
A ledger is an account in your chart — Cash on Hand, Bank – HBL, Referral Payable, Salary Expense, etc.
| Field | Purpose |
|---|---|
| Account name | Human-readable label |
| Code | Numeric or alphanumeric GL code |
| Type | Asset, liability, income, expense |
| Opening balance | Migration from legacy system |
| Active | Hide without losing history |
Create accounts before go-live to match your accountant's COA export.
Keep it simple
Small labs may need only 15–25 accounts. Expand as complexity grows — over-segmentation slows data entry.
Ledger entries
ledger_entries records individual debits and credits:
mermaid
flowchart LR
DR[Debit account] --> TX[Transaction]
TX --> CR[Credit account]
TX --> REF[Reference: invoice / voucher ID]| Field | Description |
|---|---|
| Date | Posting date |
| Amount | Transaction value |
| Debit ledger | Increases assets/expenses |
| Credit ledger | Increases liabilities/income |
| Narration | Description for auditors |
| Source | Manual, invoice payment, vendor payment, etc. |
Permissions
| Module | Typical use |
|---|---|
ledger_entries.view | Accountants, auditors |
ledger_entries.create | Post manual journals |
ledger_entries.edit | Correct mis-postings same day |
ledger_entries.delete | Restricted — supervisor only |
Cash management
Track physical cash drawers and shifts:
- Opening float per reception desk
- Cash received from patient payments
- Cash handed to supervisor
- End-of-day reconciliation
Pairs with Cash Flow reports.
Patient vouchers & advances
| Module | Function |
|---|---|
patient_vouchers | Credit notes, refunds, adjustments |
advance_payment | Deposits before service delivery |
balance_adjustment | Invoice-level balance corrections (Billing group) |
Advances reduce patient due on final invoicing.
Banks and cheques
banks_cheque manages:
- Bank account ledgers
- Cheque books and leaf status
- Cleared vs pending cheques
- Bounced cheque handling
Employee finance
| Module | Purpose |
|---|---|
employee_ledger | Running balance per staff |
employee_advances | Salary advances against payroll |
salary_management | Periodic payroll posting |
vendor_payment | Supplier and referral settlements |
Transfer cash
transfer_cash moves value between ledgers (e.g., cash drawer → main safe → bank deposit) without external payment rails.
- Create permission only — transfers are immutable audit events
- No edit/delete to preserve trail integrity
Daybook summary
Read-only rollup (daybook_summary.view) for daily:
- Total receipts
- Total payments
- Net cash position
- Category breakdowns
Use for shift handover before locking the day.
Invoice linkage
Patient invoice payments can post automatically to configured cash/bank ledgers when payment methods are mapped in lab settings. Verify mappings during first invoice testing.
Read-only mode
When subscription read-only mode is active, new ledger entries and transfers are blocked. Viewing historical data remains available.
Month-end checklist
| Step | Owner |
|---|---|
| Reconcile bank statement | Accountant |
| Clear referral payables | Finance |
| Review patient due report | Credit control |
| Export cash flow | Management |
| Lock prior period entries | Admin policy |