Start
Finance Management System
Approved Design 2 operating guide for partner and event finance, controls, evidence, and release readiness.
First created Last updated
Purpose and release state
Finance Management is the partner-wide control hub for cash, journals, event performance, spending, receivables, payables, custody, close, automation, and integrations. It records and controls finance work; it does not move bank funds or replace external statements.
The Design 2 corrective implementation is a Preview. Local route, dialog, workflow, calculation, resilience, concurrency, volume, recovery, accessibility, build, and API certificates pass. Production approval still requires a disposable authenticated stack, additive migration and RLS review, provider sandboxes, narrow/mobile evidence, native restore, hosted canary, and independent finance/security review.
Authoritative rules
- The signed-in actor, server time, partner scope, capability, version, and lifecycle state are server-owned.
- Posted journal truth is immutable. Corrections use reversal or correction entries.
- Money is exact and currency-scoped. PHP and USD are never silently combined.
- Every total has a source, cutoff, timezone, scope, and freshness. The browser must not invent event allocations or authoritative balances.
- Uploaded evidence lives in Sanity. Browser responses expose only opaque artifact IDs or authorized proxy paths, never Sanity API/CDN URLs.
- High-risk actions enforce maker-checker, period locks, recent authentication where configured, idempotency, and audit receipts.
Route map
| Route | Primary work | Main controls |
|---|---|---|
/finance | Partner and event overview | Currency, cutoff, event selection, search, density, drill-down |
/finance/transactions | Posted ledger and journal detail | Filters, allocation, evidence, correction/reversal, export |
/finance/outflows | Spending request lifecycle | Request, submit, approve, schedule, pay, reject/cancel |
/finance/reconciliation | Statement-to-book matching | Import, review, match, classify, commit, evidence package |
/finance/events | Cross-event financial comparison | Scope, currency, result, coverage, exceptions, mappings |
/finance/audit | Immutable action receipts | Actor/action/target filters, detail, integrity, export |
/finance/payables | Vendor bills and payments | Duplicate check, approval, partial/full payment, credit |
/finance/receivables | Invoices and collections | Allocation, overdue review, credit/write-off, history |
/finance/expenses | Claims and reimbursement | Itemization, evidence, policy review, approve/reject/reimburse |
/finance/budgets | Budget versions and variance | Lines, commitments, actuals, revisions, approval/publication |
/finance/close | Period readiness and lock | Checklist, exception, sign-off, close, reopen with reason |
/finance/custody | Cash checkout and count | Guided denominations, handover, dual control, discrepancy |
/finance/automation | Routing rules and job operations | Filter, test, run, retry, quarantine, replay, audit |
/finance/integrations | Bank/accounting/interchange links | Connect, map, test, sync, pause, reauthorize, disconnect |
/finance/settings | Accounts, defaults, roles, and policy | Impact preview, version, posting safeguards, audit |
The landing route provides the approved overview; the sidebar then exposes the 14 specialized workspaces. Cross-route links should preserve partner, event, account, currency, date/cutoff, and selected-record context when those values remain valid.
Start by role
| Role | Start here |
|---|---|
| Viewer or event lead | Review Overview and Events; confirm scope, currency, cutoff, and freshness before quoting a number. |
| Finance operator or maker | Use Transactions, Outflows, Reconciliation, Payables, Receivables, Expenses, Budgets, or Custody for day-to-day work. |
| Approver or checker | Open the submitted record from its route or audit receipt; verify evidence, amount, policy, period, and actor separation. |
| Reconciler or close owner | Complete Reconciliation, then resolve Close prerequisites and exceptions before locking a period. |
| Finance administrator | Use Settings, Automation, and Integrations; review impact previews and never reuse provider secrets in notes. |
| Auditor or support lead | Use Audit and the certification handbook to reproduce facts and collect sanitized evidence. |
Working safely
- Confirm the active partner and, when applicable, event.
- Confirm currency and cutoff. Mixed-currency results must remain grouped.
- Open the detail view and inspect source, lifecycle, evidence, journal effect, and audit receipt.
- For mutations, read validation and impact text, then submit once. On timeout, look up the receipt or retry with the same idempotency context instead of creating a duplicate.
- Stop and escalate when the period is locked, the record version is stale, evidence is quarantined, the provider is revoked, a custody count differs, or a displayed total cannot be reproduced.
Detailed guides
- Routes, controls, and dialogs documents every approved workspace and its core interactions.
- Data, API, roles, and controls defines authority, exact-money behavior, evidence, errors, and access boundaries.
- Operator runbooks and recovery covers daily work, exceptions, recovery, and escalation.
- Cross-system data linkage defines the Preview ownership, procurement, asset deployment, offline reconciliation, exception, correction, and rollout contract shared by EMS, EPS, Finance Management, and Asset Management.
- Certification handbook records test evidence and release gates.
Accessibility baseline
Dialogs require an accessible name, focus entry, keyboard tab order, Escape handling when safe, focus return, pending-state lockout, visible validation, and a non-color status cue. Search, date, amount, reference, and cutoff controls require explicit labels. Dense tables must remain operable without horizontal assumptions; narrow/mobile release evidence remains an open gate.