Dashboard and Accounting Control Center
Use these pages at the start and end of each working day. The Dashboard explains financial performance; the Control Center proves whether operational events and control balances are reliable.
Accounting Dashboard
Open Admin → Accounting → Dashboard. Choose All Branches or one Branch, a From/To date range (maximum 366 days), and optional comparison, chart interval, account types, accounts, dimensions, or journal types. Apply Filters recalculates the page; Reset removes analytical filters; Refresh reloads current posted data.
All-branch totals use historical base-currency values. A selected branch uses its ledger currency. Analytical account or dimension filters intentionally disable the full accounting-equation check.
KPI cards
| Card | What it means |
|---|---|
| Revenue | Posted revenue during the range. |
| Gross Profit | Revenue minus COGS. |
| Net Income | Gross profit minus operating expenses. |
| Cash & Bank | Posted cash-account balance as of the end date. |
| Accounts Receivable | Balance of mapped customer receivable controls. |
| Accounts Payable | Balance of mapped supplier payable controls. |
| Total Assets / Liabilities | Posted statement balances as of the end date. |
Comparison can be None, Previous Period, or Previous Year. Granularity can be automatic, daily, weekly, or monthly.
Dashboard sections
- Financial Performance charts revenue, gross profit, and net income.
- Expense Mix shows the largest cost and expense accounts.
- Cash Movement separates inflow, outflow, and net movement.
- Branch Performance compares default-currency revenue, profit, income, margin, and change.
- Balance Sheet Composition compares assets, liabilities, and equity and reports whether the accounting equation balances.
- Close & Controls counts open/soft-locked periods, draft or failed journals, and pending reconciliations.
- Recent Journal Activity shows entry, date, type, status, description, and total; use View Journals for detail.
No posted ledger activity means the filters found no posted lines, not necessarily that the business had no operational activity. Check Posting Logs and Unposted Events.
Accounting Control Center
Open Accounting Control Center. Tabs cover Overview, Event Catalog, Control Reconciliations, Health Findings, Health Runs, and Production Gates. Branch and date filters scope runs.
Posting pipeline and event catalog
The event catalog lists module, event, owner, handler, and version. It proves that expected source events have a registered accounting handler. Posting pipeline statuses are:
| Status | Meaning and next step |
|---|---|
| Pending | Queued but not started; monitor warning threshold. |
| Processing | Currently handled; stale processing needs review. |
| Posted | Journal created successfully. |
| Skipped | Handler intentionally produced no journal; inspect its reason. |
| Failed | Processing failed; correct the cause before retry. |
| Blocked | A mapping, period, currency, or source precondition prevented posting. |
Control reconciliations
Choose Run Reconciliation to compare operational subledgers with mapped GL controls. A run can be Running, Completed, Completed with Differences, or Failed. Each item shows control, operational balance, ledger balance, difference, and status.
Item status is Reconciled, Difference, Blocked, or Not Applicable. Blocked means the comparison could not be completed because required scope, mapping, or source evidence is unavailable; it is not a zero difference.
Use Classify to record why a difference exists: missing posting, duplicate posting, timing, mapping, FX, migration adjustment, operational data, or unknown. Classification explains evidence; it does not alter balances. Correct the source or create an authorized accounting correction, then rerun.
Health findings
Findings show severity (Critical, Error, Warning, Information), check, occurrences, and last seen. Actions are:
- Acknowledge: confirms a reviewer saw the finding; it remains open for resolution.
- Resolve: records that the cause has been corrected.
- Accept Risk: records an authorized decision to tolerate the condition. Enter a meaningful review reason.
Run Health Checks after configuration changes, posting recovery, and close work.
A health run is Running, Completed, or Failed. Completed with Differences belongs to control-reconciliation runs, not health runs.
Production-readiness gates
The page checks event-catalog completeness, critical findings, health heartbeat, seven reviewed daily reconciliations, MySQL concurrency, production-volume performance, alert delivery, backup/restore, worker recovery, and rollback rehearsal.
For evidence-based gates, choose Record Verification and enter the evidence type, reference (CI run, ticket, report, or controlled test), notes, verification date, and optional expiry. Revoke outdated evidence with a reason. Recording evidence does not perform the technical test; it records the already completed verification.
Posting Logs
Open Posting Exceptions → Posting Logs. Filter by source type, event, and status. Columns show source type/id/event, status, attempts, error code/details, and journal entry.
The detail page adds idempotency key, processed/next-retry time, payload snapshot, metadata, and journal totals. An idempotency key prevents the same event from creating duplicate journals. Use Retry only after correcting the cause. A successful retry links the journal and changes the log to Posted.
Unposted Events
Unposted Events are source events that do not currently have a completed journal. Filter by source, event, severity, and status. The detail page shows reason, metadata, assignee, resolution owner/time, and the source identity.
Statuses are Open, Ignored, Resolved, and Retried. Severities are Information, Warning, Error, and Critical.
Use Ignore only when the event legitimately should not post. Ignoring is an audit decision, not a way to hide an accounting error. For missing mappings, closed periods, invalid dimensions, or currency problems, fix the cause and use the source/posting retry workflow.
Daily Control Routine
- Check Dashboard Close & Controls.
- Review blocked/failed Posting Logs and open Unposted Events.
- Run Health Checks and review new or repeated findings.
- Run control reconciliation for the relevant branch/date.
- Classify differences, correct their causes, and rerun.
- Open the relevant Financial Report to confirm corrected balances.
Do not retry blindly
A retry uses the original source evidence. Repeated retries will not correct an invalid mapping, closed date, or malformed source transaction and may exhaust the configured retry threshold.
