Finance — Overview
Product version: 1.0.0+1
Last updated: 2026-10-02
Audience: Tenant Owners and users withfinance:*permissions
A. What is Finance?
Finance is the tenant operational ledger: chart of accounts, fiscal years and periods, journal entries, cash/bank books, expenses, posting status from Sales and Inventory, and financial reports (P&L and related statements).
Finance is the source of truth for Revenue, COGS, and Gross Profit used on the merchant dashboard. It does not process card payments or manage your SanadiqCloud subscription.
Finance vs Billing (hard separation)
| Finance | Billing | |
|---|---|---|
| Purpose | Tenant books / ledger / FY / reports | SaaS subscription (Stripe Checkout, seats, storage) |
| Rail label | Finance | Billing |
| Hub path | /finance |
/billing |
| Permissions | finance:* |
billing:* |
| Invoices | Sales invoices (customer sales) feed the ledger | Subscription invoices for plan charges |
Public copy never treats Finance as “paying for Sanadiq” or merges it with Stripe Billing. See Billing overview.
Who is this for?
Tenant Owners, Finance Manager (built-in), and members whose custom role includes finance permissions. See Finance permissions and Roles & Permissions.
B. Navigation
Open Finance from the side navigation rail (merchant shell), between Sales and Billing. Entry screen: Finance hub (/finance).
| Section | Route | Description |
|---|---|---|
| Hub | /finance |
Explore tiles for CoA, FY, journals, cash, expenses, reports, postings |
| Accounts | /finance/accounts |
Chart of accounts |
| Fiscal years | /finance/fiscal-years |
Fiscal years and periods |
| Opening balances | /finance/opening-balances |
Initial balances for an open fiscal year |
| Journals | /finance/journals |
Journal list and detail |
| Cash | /finance/cash |
Cash and bank accounts; transfers |
| Expenses | /finance/expenses |
Operating expenses (list + create) and other revenue |
| Reports | /finance/reports |
Profit and loss, balance sheet, cash flow, trial balance |
| Postings | /finance/postings |
Automated posting status from Sales / Inventory |
| E-invoicing | /finance/e-invoicing |
Sales invoices and credit notes reported to the tax authority; settings |
There is no Finance setup wizard in the current app. Tenant CoA and fiscal year bootstrap when the organization is created.
C. Permissions (summary)
Shell Finance access requires at least one finance read permission (account, journal, period, cash, expense, report, or posting). Domain APIs enforce the matching finance:* key. Full table: Permissions.
D. How money enters the books
- Sales issues invoices and payment records (method + amount — not a payment gateway).
- Inventory movements carry cost snapshots on events.
- Finance posts balanced journal entries (idempotent) and emits events.
- Dashboard updates sales KPIs from Finance journal events (not from Sales invoice create alone).
- Audit records Finance journal, expense, cash transfer, and fiscal-year-close events.
Details: Boundaries · Lifecycle · Events.
E. Out of scope (current product)
Purchasing / AP ERP, payroll, fixed assets, bank API sync, installment schedules, and in-app Stripe charges for customer sales are not part of Finance Core.
Related: Boundaries · Lifecycle · Reports · Permissions · Events · Billing · Sales · Dashboard KPIs