@fayz-ai/financial
The financial bounded context: invoices, payments, accounts, cash sessions and bank reconciliation — the rules, where they are stored, and the store over them.
Status: beta — extracted from @fayz-ai/plugin-financial, which still re-exports every name it had and keeps the screens. Pre-1.0: minor APIs may change before 1.0.
Shaped as docs/platform/PATTERNS.md describes. There is no entry file: each module is imported by its path.
Install
npm install @fayz-ai/financial
Modules
| Import | What it holds |
|---|---|
@fayz-ai/financial/domain/* | types and pure rules: invoice, movement, transfer, statement, reconciliation, cash-session, chart-of-accounts, cnab240… |
@fayz-ai/financial/data/provider | FinancialDataProvider, the repository port |
@fayz-ai/financial/data/supabase | createSupabaseFinancialProvider — with data/tables, the only modules that name a table |
@fayz-ai/financial/data/mock | createMockFinancialProvider, the same contract in memory |
@fayz-ai/financial/store | createFinancialStore, createSafeFinancialProvider |
@fayz-ai/financial/views/zones | FINANCIAL_ZONES and their props: where another plugin renders a financial screen with a WidgetSlot |
import { WidgetSlot } from '@fayz-ai/admin'
import { FINANCIAL_ZONES } from '@fayz-ai/financial/views/zones'
<WidgetSlot zone={FINANCIAL_ZONES.receivePayment} installment={bill} onClose={close} onPaid={reload} />
The zones are filled by @fayz-ai/plugin-financial — either createFinancialPlugin() or the settings-only createFinancialSettingsPlugin(). An app that mounts neither gets an empty zone.
Words used here are defined in GLOSSARY.md.