@fayz-ai/plugin-financial 0.16.0 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,28 @@
1
+ import type { ChartOfAccountsNode } from '../types';
2
+ export interface ChartTree {
3
+ byId: Map<string, ChartOfAccountsNode>;
4
+ /** Children ids per parent id; roots live under ''. Sorted by code. */
5
+ children: Map<string, string[]>;
6
+ }
7
+ export declare function compareCodes(a: string, b: string): number;
8
+ export declare function buildChartTree(nodes: ChartOfAccountsNode[]): ChartTree;
9
+ export declare function rootIds(tree: ChartTree): string[];
10
+ export declare function childIds(tree: ChartTree, id: string): string[];
11
+ /** Group by declaration or by having children — same rule as postableAccounts. */
12
+ export declare function isGroupNode(tree: ChartTree, node: ChartOfAccountsNode): boolean;
13
+ export declare function descendantIds(tree: ChartTree, id: string): Set<string>;
14
+ /**
15
+ * Ids to show for a search: every match plus all of its ancestors, so a hit
16
+ * is never shown without the path that explains where it sits.
17
+ * Returns null when there is no query (show everything).
18
+ */
19
+ export declare function searchVisibleIds(tree: ChartTree, query: string): {
20
+ visible: Set<string>;
21
+ matches: Set<string>;
22
+ } | null;
23
+ /**
24
+ * A code for the next account under `parentId` (or at the root): one past the
25
+ * last sibling's final segment, keeping its zero padding — 4.07 → 4.08.
26
+ */
27
+ export declare function suggestNextCode(tree: ChartTree, parentId: string | null): string;
28
+ //# sourceMappingURL=chart-tree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart-tree.d.ts","sourceRoot":"","sources":["../../src/lib/chart-tree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAEnD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;IACtC,uEAAuE;IACvE,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CAChC;AAKD,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,EAAE,GAAG,SAAS,CAgBtE;AAqBD,wBAAgB,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,EAAE,CAEjD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAE9D;AAED,kFAAkF;AAClF,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAE/E;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAUtE;AAMD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAE,GAAG,IAAI,CAetH;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CA6BhF"}
@@ -1 +1 @@
1
- {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAilBrC,CAAA"}
1
+ {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA0oBrC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"pt-BR.d.ts","sourceRoot":"","sources":["../../src/locales/pt-BR.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAolBvC,CAAA"}
1
+ {"version":3,"file":"pt-BR.d.ts","sourceRoot":"","sources":["../../src/locales/pt-BR.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA6oBvC,CAAA"}
@@ -90,6 +90,7 @@ export declare const MIGRATION_088_A_CONTA_SEM_PESSOA_E_DO_SISTEMA_NAO_DE_NINGUE
90
90
  export declare const MIGRATION_089_O_FORNECEDOR_APONTA_PARA_O_PLANO_MIGRADO = "-- A migrated supplier points to the current chart of accounts.\n--\n-- V1 stored supplier defaults and allowlists with legacy numeric IDs. The\n-- migration deliberately preserved those values in people.metadata because\n-- contacts can arrive before chart accounts. The invoice form cannot compare\n-- those values with the UUID primary keys used by V2, so the policy appeared\n-- configured but never matched an option.\n--\n-- This read-only resolver crosses that boundary through migration.ledger. It\n-- accepts current UUIDs too, keeping the runtime contract useful after the\n-- migration is over. Tenant and permission checks stay inside the definer.\n\nCREATE OR REPLACE FUNCTION public.financial_resolve_chart_account_refs(p_refs text[])\nRETURNS TABLE(source_ref text, chart_account_id uuid)\nLANGUAGE sql\nSTABLE\nSECURITY DEFINER\nSET search_path = ''\nAS $$\n WITH wanted AS (\n SELECT DISTINCT btrim(ref) AS ref\n FROM unnest(coalesce(p_refs, ARRAY[]::text[])) AS ref\n WHERE nullif(btrim(ref), '') IS NOT NULL\n ),\n candidates AS (\n SELECT w.ref AS source_ref, c.id AS chart_account_id, 0 AS priority\n FROM wanted w\n JOIN public.plg_financial_chart_of_accounts c\n ON c.tenant_id = app.current_tenant_id()\n AND c.id::text = w.ref\n UNION ALL\n SELECT w.ref AS source_ref, l.target_id AS chart_account_id, 1 AS priority\n FROM wanted w\n JOIN migration.ledger l\n ON l.tenant_id = app.current_tenant_id()\n AND l.source_table = 'chart_of_accounts'\n AND l.target_table = 'public.plg_financial_chart_of_accounts'\n AND (l.source_numeric_id::text = w.ref OR l.source_uuid::text = w.ref)\n JOIN public.plg_financial_chart_of_accounts c\n ON c.tenant_id = l.tenant_id\n AND c.id = l.target_id\n )\n SELECT DISTINCT ON (c.source_ref) c.source_ref, c.chart_account_id\n FROM candidates c\n WHERE auth.role() = 'service_role'\n OR app.has_permission('financial.read', NULL::uuid)\n ORDER BY c.source_ref, c.priority;\n$$;\n\nREVOKE ALL ON FUNCTION public.financial_resolve_chart_account_refs(text[]) FROM PUBLIC, anon;\nGRANT EXECUTE ON FUNCTION public.financial_resolve_chart_account_refs(text[]) TO authenticated, service_role;\n\nCOMMENT ON FUNCTION public.financial_resolve_chart_account_refs(text[]) IS\n 'Resolves current UUIDs and migrated V1 chart-account references for the active tenant.';\n";
91
91
  export declare const MIGRATION_090_O_DRE_RECORTA_ANTES_DE_SOMAR = "-- Filter the income statement before aggregating it.\n--\n-- The historical view aggregates every fiscal year before PostgREST applies\n-- the requested range. On large tenants that exceeds the authenticated role\n-- timeout. This function accepts the range, resolves tenant/unit/permission\n-- once, and only then joins line items. It is additive and retains the view as\n-- the analytics contract for existing consumers.\n\nCREATE OR REPLACE FUNCTION public.financial_dre(\n p_from date,\n p_to date,\n p_unit_id uuid DEFAULT NULL\n) RETURNS TABLE (\n unit_id uuid,\n competence_month date,\n account_id uuid,\n account_code text,\n account_name text,\n account_type text,\n account_parent_id uuid,\n statement_code text,\n statement_name text,\n unclassified boolean,\n line_count bigint,\n amount numeric,\n discount numeric\n)\nLANGUAGE sql\nSTABLE\nSECURITY DEFINER\nSET search_path TO ''\nAS $function$\n WITH ctx AS MATERIALIZED (\n SELECT app.current_tenant_id() AS tenant,\n app.visible_units() AS units,\n app.has_permission('financial.read', NULL::uuid) AS read_null,\n p_from AS de,\n p_to AS ate,\n p_unit_id AS unidade\n ),\n u_read AS MATERIALIZED (\n SELECT u\n FROM ctx, unnest(ctx.units) AS u\n WHERE app.has_permission('financial.read', u)\n ),\n inv AS MATERIALIZED (\n SELECT f.*\n FROM public.plg_financial_invoices f, ctx\n WHERE f.tenant_id = ctx.tenant\n AND f.cancelled_at IS NULL\n AND f.competence_date >= ctx.de\n AND f.competence_date <= ctx.ate\n AND (CASE WHEN ctx.unidade IS NOT NULL THEN f.unit_id = ctx.unidade\n WHEN f.unit_id IS NULL THEN ctx.read_null\n ELSE f.unit_id IN (SELECT u FROM u_read) END)\n ),\n line AS (\n SELECT f.tenant_id, f.unit_id, f.competence_date, f.direction,\n i.id AS item_id, i.total, i.discount,\n coalesce(x.chart_account_id, i.chart_account_id) AS chart_account_id\n FROM inv f\n JOIN public.items i ON i.invoice_id = f.id\n LEFT JOIN public.plg_financial_invoice_items x ON x.item_id = i.id\n WHERE i.cancelled_at IS NULL\n UNION ALL\n SELECT f.tenant_id, f.unit_id, f.competence_date, f.direction,\n i.id AS item_id, i.total, i.discount,\n coalesce(x.chart_account_id, i.chart_account_id) AS chart_account_id\n FROM inv f\n JOIN public.items i ON i.order_id = f.order_id\n LEFT JOIN public.plg_financial_invoice_items x ON x.item_id = i.id\n WHERE f.order_id IS NOT NULL\n AND i.invoice_id IS NULL\n AND i.cancelled_at IS NULL\n AND NOT EXISTS (SELECT 1 FROM public.items own WHERE own.invoice_id = f.id)\n ),\n structure AS (\n SELECT NULL::uuid AS unit_id, NULL::date AS competence_month,\n c.id AS account_id, c.code AS account_code, c.name AS account_name,\n c.account_type, c.parent_id AS account_parent_id,\n c.code AS statement_code, c.name AS statement_name,\n false AS unclassified, 0::bigint AS line_count,\n 0::numeric AS amount, 0::numeric AS discount\n FROM public.plg_financial_chart_of_accounts c, ctx\n WHERE c.tenant_id = ctx.tenant\n AND c.is_active\n AND c.account_type IN ('revenue', 'expense')\n AND (ctx.read_null OR EXISTS (SELECT 1 FROM u_read))\n ),\n movement AS (\n SELECT l.unit_id,\n date_trunc('month', l.competence_date)::date AS competence_month,\n c.id AS account_id, c.code AS account_code, c.name AS account_name,\n CASE WHEN l.direction = 'receivable' THEN 'revenue' ELSE 'expense' END AS account_type,\n c.parent_id AS account_parent_id,\n CASE WHEN (l.direction = 'receivable' AND c.account_type = 'revenue')\n OR (l.direction = 'payable' AND c.account_type = 'expense')\n THEN c.code END AS statement_code,\n CASE WHEN (l.direction = 'receivable' AND c.account_type = 'revenue')\n OR (l.direction = 'payable' AND c.account_type = 'expense')\n THEN c.name END AS statement_name,\n (c.id IS NULL OR NOT ((l.direction = 'receivable' AND c.account_type = 'revenue')\n OR (l.direction = 'payable' AND c.account_type = 'expense'))) AS unclassified,\n count(*) AS line_count,\n sum(l.total) AS amount,\n sum(l.discount) AS discount\n FROM line l\n LEFT JOIN public.plg_financial_chart_of_accounts c\n ON c.tenant_id = l.tenant_id AND c.id = l.chart_account_id\n GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10\n )\n SELECT * FROM structure\n UNION ALL\n SELECT * FROM movement;\n$function$;\n\nREVOKE ALL ON FUNCTION public.financial_dre(date, date, uuid) FROM PUBLIC, anon;\nGRANT EXECUTE ON FUNCTION public.financial_dre(date, date, uuid) TO authenticated, service_role;\n\nCOMMENT ON FUNCTION public.financial_dre(date, date, uuid) IS\n 'Annual/monthly income statement filtered before aggregation with tenant, unit, and financial.read fences.';\n";
92
92
  export declare const MIGRATION_091_A_RECORRENCIA_REPETE_OS_ITENS = "-- A recurring rule is a complete invoice template. When an occurrence creates\n-- its invoice, copy every template line with its own accounting dimensions.\n\nCREATE OR REPLACE FUNCTION public.plg_financial_copy_recurring_items()\nRETURNS trigger\nLANGUAGE plpgsql\nSECURITY DEFINER\nSET search_path TO ''\nAS $$\nDECLARE\n v_bill public.plg_financial_recurring_bills%ROWTYPE;\n v_row jsonb;\n v_item_id uuid;\n v_quantity numeric;\n v_unit_price numeric;\n v_discount numeric;\n v_surcharge numeric;\n v_sort integer := 0;\nBEGIN\n IF coalesce(NEW.metadata ->> 'source', '') <> 'financial_recurring_run'\n OR coalesce(NEW.metadata ->> 'recurring_bill_id', '') = '' THEN\n RETURN NEW;\n END IF;\n\n SELECT * INTO v_bill\n FROM public.plg_financial_recurring_bills\n WHERE id = (NEW.metadata ->> 'recurring_bill_id')::uuid\n AND tenant_id = NEW.tenant_id;\n\n IF NOT FOUND OR jsonb_typeof(v_bill.items) <> 'array' THEN\n RETURN NEW;\n END IF;\n\n FOR v_row IN SELECT value FROM jsonb_array_elements(v_bill.items) LOOP\n v_sort := v_sort + 1;\n v_quantity := greatest(coalesce((v_row ->> 'quantity')::numeric, 1), 0.0001);\n v_unit_price := coalesce((v_row ->> 'unitPrice')::numeric, (v_row ->> 'unit_price')::numeric, 0);\n v_discount := coalesce((v_row ->> 'discount')::numeric, 0);\n v_surcharge := coalesce((v_row ->> 'surcharge')::numeric, (v_row ->> 'addition')::numeric, 0);\n\n INSERT INTO public.items\n (tenant_id, unit_id, invoice_id, product_id, name, description, quantity,\n unit_price, discount, total, sort_order, metadata, created_by)\n VALUES\n (NEW.tenant_id, NEW.unit_id, NEW.id,\n CASE WHEN coalesce(v_row ->> 'referenceId', v_row ->> 'reference_id', v_row ->> 'product_id', '')\n ~* '^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$'\n THEN coalesce(v_row ->> 'referenceId', v_row ->> 'reference_id', v_row ->> 'product_id')::uuid END,\n nullif(v_row ->> 'description', ''), nullif(v_row ->> 'description', ''),\n v_quantity, v_unit_price, v_discount,\n round(v_quantity * v_unit_price - v_discount + v_surcharge, 2), v_sort,\n jsonb_strip_nulls(jsonb_build_object(\n 'item_kind', coalesce(v_row ->> 'itemKind', v_row ->> 'item_kind', 'other'),\n 'financial', jsonb_build_object('additional', v_surcharge)\n )), NEW.created_by)\n RETURNING id INTO v_item_id;\n\n INSERT INTO public.plg_financial_invoice_items\n (item_id, tenant_id, unit_id, chart_account_id, cost_center_id, owner_id)\n VALUES\n (v_item_id, NEW.tenant_id, NEW.unit_id,\n CASE WHEN coalesce(v_row ->> 'accountId', v_row ->> 'account_id', v_row ->> 'chart_account_id', '')\n ~* '^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$'\n THEN coalesce(v_row ->> 'accountId', v_row ->> 'account_id', v_row ->> 'chart_account_id')::uuid END,\n CASE WHEN coalesce(v_row ->> 'costCenterId', v_row ->> 'cost_center_id', '')\n ~* '^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$'\n THEN coalesce(v_row ->> 'costCenterId', v_row ->> 'cost_center_id')::uuid END,\n NEW.created_by);\n END LOOP;\n\n RETURN NEW;\nEND $$;\n\nDROP TRIGGER IF EXISTS plg_financial_recurring_invoice_items ON public.plg_financial_invoices;\nCREATE TRIGGER plg_financial_recurring_invoice_items\n AFTER INSERT ON public.plg_financial_invoices\n FOR EACH ROW EXECUTE FUNCTION public.plg_financial_copy_recurring_items();\n\nREVOKE ALL ON FUNCTION public.plg_financial_copy_recurring_items() FROM PUBLIC, anon, authenticated;\nGRANT EXECUTE ON FUNCTION public.plg_financial_copy_recurring_items() TO service_role;\n\nCOMMENT ON FUNCTION public.plg_financial_copy_recurring_items() IS\n 'Copies every item of a recurring rule into each generated invoice, preserving per-line accounting.';\n";
93
+ export declare const MIGRATION_092_A_CONTA_PAGA_NO_CARTAO_SAI_DO_CARTAO = "-- A bill paid by credit card is paid from the company's card.\n--\n-- financial_receive_payment settled every credit_card payment in a\n-- card_receivable_credit account \u2014 right for a sale (the acquirer owes us),\n-- wrong for a bill: paying a supplier with the corporate card puts the debt on\n-- that card (card_payable). The payables screen could never pay by card.\n-- Receivables keep the exact rule they had. Replaces the function in place;\n-- idempotent.\n\nCREATE OR REPLACE FUNCTION public.financial_receive_payment(p_installment_id uuid, p_amount numeric, p_account_id uuid DEFAULT NULL::uuid, p_method text DEFAULT NULL::text, p_cash_session_id uuid DEFAULT NULL::uuid, p_card_brand text DEFAULT NULL::text, p_card_installments integer DEFAULT NULL::integer, p_nsu text DEFAULT NULL::text, p_payment_date date DEFAULT NULL::date, p_fee_amount numeric DEFAULT NULL::numeric, p_notes text DEFAULT NULL::text, p_idempotency_key text DEFAULT NULL::text, p_metadata jsonb DEFAULT '{}'::jsonb) RETURNS jsonb\n LANGUAGE plpgsql SECURITY DEFINER\n SET search_path TO ''\n AS $$\nDECLARE\n v_tenant uuid := public.plg_financial_require_tenant();\n v_actor uuid := auth.uid();\n v_inst_id uuid := p_installment_id;\n v_inst record;\n v_invoice public.plg_financial_invoices%ROWTYPE;\n v_amount numeric := round(coalesce(p_amount, 0), 2);\n v_open numeric;\n v_method text := lower(coalesce(nullif(btrim(p_method), ''), 'other'));\n v_holder uuid;\n v_holder_k text;\n v_session uuid := p_cash_session_id;\n v_counter uuid;\n v_credit numeric;\n v_mov_id uuid;\n v_alloc_id uuid;\n v_dir text;\nBEGIN\n IF v_amount <= 0 THEN\n RAISE EXCEPTION 'financial_receive_payment: amount must be > 0' USING ERRCODE = '22023';\n END IF;\n IF v_method NOT IN ('cash', 'pix', 'credit_card', 'debit_card', 'transfer', 'boleto', 'check', 'credit', 'other') THEN\n RAISE EXCEPTION 'financial_receive_payment: unknown method %', v_method USING ERRCODE = '22023';\n END IF;\n\n -- accept a legacy per-order 'bill' movement id in place of the installment\n IF NOT EXISTS (SELECT 1 FROM public.plg_financial_invoice_installments i WHERE i.id = v_inst_id) THEN\n SELECT m.financial_invoice_installment_id INTO v_inst_id FROM public.plg_financial_movements m\n WHERE m.id = p_installment_id AND m.movement_kind = 'bill' AND m.tenant_id = v_tenant;\n END IF;\n SELECT i.* INTO v_inst FROM public.plg_financial_invoice_installments i WHERE i.id = v_inst_id AND i.tenant_id = v_tenant;\n IF NOT FOUND THEN\n RAISE EXCEPTION 'financial_receive_payment: installment % not found', p_installment_id USING ERRCODE = 'P0002';\n END IF;\n SELECT * INTO v_invoice FROM public.plg_financial_invoices WHERE id = v_inst.invoice_id;\n PERFORM public.plg_financial_require_permission('financial.create', v_inst.unit_id);\n\n -- idempotency\n IF p_idempotency_key IS NOT NULL THEN\n PERFORM public.plg_financial_claim_idempotency(v_tenant, p_idempotency_key);\n SELECT m.id INTO v_mov_id FROM public.plg_financial_movements m WHERE m.tenant_id = v_tenant AND m.idempotency_key = p_idempotency_key;\n IF v_mov_id IS NOT NULL THEN\n SELECT a.id INTO v_alloc_id FROM public.plg_financial_allocations a WHERE a.payment_movement_id = v_mov_id LIMIT 1;\n RETURN jsonb_build_object('movement_id', v_mov_id, 'allocation_id', v_alloc_id, 'installment_id', v_inst.id,\n 'invoice_id', v_inst.invoice_id, 'amount', v_amount, 'replayed', true);\n END IF;\n END IF;\n\n IF v_inst.cancelled_at IS NOT NULL OR v_invoice.cancelled_at IS NOT NULL THEN\n RAISE EXCEPTION 'financial_receive_payment: installment is cancelled' USING ERRCODE = '55000';\n END IF;\n v_open := round(v_inst.amount - public.plg_financial_installment_paid(v_inst.id), 2);\n IF v_amount > v_open + 0.000001 THEN\n RAISE EXCEPTION 'financial_receive_payment: % exceeds the open balance % of installment %/% of %', v_amount, v_open, v_inst.number, v_invoice.number, v_invoice.number\n USING ERRCODE = '23514';\n END IF;\n\n -- the money holder\n IF v_method = 'credit' THEN\n IF v_invoice.counterparty_person_id IS NULL THEN\n RAISE EXCEPTION 'financial_receive_payment: the invoice has no counterparty to consume credit from' USING ERRCODE = '55000';\n END IF;\n v_holder := public.plg_financial_person_account(v_tenant, v_invoice.counterparty_person_id);\n SELECT balance INTO v_credit FROM public.v_financial_account_balances WHERE account_id = v_holder;\n IF coalesce(v_credit, 0) + 0.000001 < v_amount THEN\n RAISE EXCEPTION 'financial_receive_payment: customer credit % is below %', coalesce(v_credit, 0), v_amount USING ERRCODE = '23514';\n END IF;\n ELSIF v_method = 'cash' THEN\n IF v_session IS NULL THEN\n v_session := public.plg_financial_open_session_of(v_tenant, v_actor, v_inst.unit_id);\n END IF;\n IF v_session IS NULL THEN\n RAISE EXCEPTION 'financial_receive_payment: no open cash session (caixinha) for cash in this unit' USING ERRCODE = '55000',\n HINT = 'Open your cash session first (financial_cash_session_open).';\n END IF;\n SELECT s.account_id INTO v_holder FROM public.plg_financial_cash_register_sessions s\n WHERE s.id = v_session AND s.tenant_id = v_tenant AND s.status = 'open';\n IF v_holder IS NULL THEN\n RAISE EXCEPTION 'financial_receive_payment: cash session % is not open', v_session USING ERRCODE = '55000';\n END IF;\n ELSE\n v_holder := p_account_id;\n IF v_holder IS NULL THEN\n RAISE EXCEPTION 'financial_receive_payment: an account is required for method %', v_method USING ERRCODE = '22023';\n END IF;\n END IF;\n SELECT a.kind INTO v_holder_k FROM public.plg_financial_accounts a WHERE a.id = v_holder AND a.tenant_id = v_tenant AND a.is_active;\n IF v_holder_k IS NULL THEN\n RAISE EXCEPTION 'financial_receive_payment: account % not found or inactive', v_holder USING ERRCODE = 'P0002';\n END IF;\n IF v_invoice.direction = 'payable' THEN\n -- Paying a bill by credit card spends the company's own card (a liability\n -- account), never a card receivable. Debit card leaves the bank directly.\n IF v_method = 'credit_card' AND v_holder_k <> 'card_payable' THEN\n RAISE EXCEPTION 'financial_receive_payment: method credit_card must pay a bill from a card_payable account'\n USING ERRCODE = '23514';\n END IF;\n IF v_method <> 'credit_card' AND v_holder_k = 'card_payable' THEN\n RAISE EXCEPTION 'financial_receive_payment: a card_payable account only pays by credit_card' USING ERRCODE = '23514';\n END IF;\n IF v_holder_k IN ('card_receivable_credit', 'card_receivable_debit') THEN\n RAISE EXCEPTION 'financial_receive_payment: a card receivable account cannot pay a bill' USING ERRCODE = '23514';\n END IF;\n ELSE\n IF (v_method = 'credit_card' AND v_holder_k <> 'card_receivable_credit')\n OR (v_method = 'debit_card' AND v_holder_k <> 'card_receivable_debit') THEN\n RAISE EXCEPTION 'financial_receive_payment: method % must settle in a % account', v_method,\n CASE WHEN v_method = 'credit_card' THEN 'card_receivable_credit' ELSE 'card_receivable_debit' END USING ERRCODE = '23514';\n END IF;\n IF v_method NOT IN ('credit_card', 'debit_card') AND v_holder_k IN ('card_receivable_credit', 'card_receivable_debit') THEN\n RAISE EXCEPTION 'financial_receive_payment: a card receivable account only takes card methods' USING ERRCODE = '23514';\n END IF;\n END IF;\n\n IF v_invoice.direction = 'payable' THEN\n v_dir := 'debit';\n v_counter := public.plg_financial_system_account(v_tenant, 'payables');\n ELSE\n v_dir := 'credit';\n v_counter := public.plg_financial_system_account(v_tenant, 'receivables');\n END IF;\n\n INSERT INTO public.plg_financial_movements\n (tenant_id, unit_id, invoice_id, financial_invoice_id, financial_invoice_installment_id, direction, movement_kind, amount, paid_amount, status,\n due_date, payment_date, installment_number, method, card_brand, card_installments, nsu, cash_session_id,\n bank_account_id, fee_amount, notes, metadata, idempotency_key, created_by, debit_account_id, credit_account_id)\n VALUES\n (v_tenant, v_inst.unit_id, v_invoice.order_id, v_invoice.id, v_inst.id, v_dir, 'payment', v_amount, v_amount, 'paid',\n v_inst.due_date, coalesce(p_payment_date, current_date), v_inst.number, v_method, p_card_brand, p_card_installments, p_nsu, v_session,\n CASE WHEN v_holder_k IN ('person', 'system') THEN NULL ELSE v_holder END,\n round(coalesce(p_fee_amount, 0), 2), p_notes,\n coalesce(p_metadata, '{}'::jsonb) || jsonb_build_object('source', 'financial_receive_payment'),\n p_idempotency_key, v_actor,\n CASE WHEN v_dir = 'credit' THEN v_holder ELSE v_counter END,\n CASE WHEN v_dir = 'credit' THEN v_counter ELSE v_holder END)\n RETURNING id INTO v_mov_id;\n\n INSERT INTO public.plg_financial_allocations (tenant_id, unit_id, payment_movement_id, installment_id, amount, created_by)\n VALUES (v_tenant, v_inst.unit_id, v_mov_id, v_inst.id, v_amount, v_actor)\n RETURNING id INTO v_alloc_id;\n\n PERFORM public.plg_financial_audit(v_tenant, 'financial.payment.receive', 'plg_financial_movements', v_mov_id::text,\n jsonb_build_object('installment_id', v_inst.id, 'invoice_id', v_invoice.id, 'invoice_number', v_invoice.number, 'amount', v_amount,\n 'method', v_method, 'account_id', v_holder, 'cash_session_id', v_session, 'idempotency_key', p_idempotency_key));\n\n RETURN jsonb_build_object('movement_id', v_mov_id, 'allocation_id', v_alloc_id, 'installment_id', v_inst.id,\n 'invoice_id', v_inst.invoice_id, 'amount', v_amount, 'replayed', false);\nEND $$;\n";
93
94
  export declare const MIGRATIONS: Array<{
94
95
  id: string;
95
96
  sql: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"InvoiceFormView.d.ts","sourceRoot":"","sources":["../../src/views/InvoiceFormView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAA;AAenE,OAAO,KAAK,EAAE,oBAAoB,EAAmG,MAAM,UAAU,CAAA;AA+BrJ,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAkJD,wBAAgB,eAAe,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,YAAoB,EAAE,UAAU,EAAE,EAAE;IAChG,SAAS,EAAE,oBAAoB,CAAA;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,6EAA6E;IAC7E,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,wFAAwF;IACxF,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,qBAouCA"}
1
+ {"version":3,"file":"InvoiceFormView.d.ts","sourceRoot":"","sources":["../../src/views/InvoiceFormView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAA;AAenE,OAAO,KAAK,EAAE,oBAAoB,EAAmG,MAAM,UAAU,CAAA;AA+BrJ,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAkJD,wBAAgB,eAAe,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,YAAoB,EAAE,UAAU,EAAE,EAAE;IAChG,SAAS,EAAE,oBAAoB,CAAA;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,6EAA6E;IAC7E,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,wFAAwF;IACxF,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,qBAovCA"}
@@ -1 +1 @@
1
- {"version":3,"file":"InvoiceListView.d.ts","sourceRoot":"","sources":["../../src/views/InvoiceListView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAA;AAUhF,OAAO,KAAK,EAAE,oBAAoB,EAA0G,MAAM,UAAU,CAAA;AA8K5J,wBAAgB,eAAe,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE;IAC1E,SAAS,EAAE,oBAAoB,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;IAClB,oDAAoD;IACpD,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9B,qBAkiBA"}
1
+ {"version":3,"file":"InvoiceListView.d.ts","sourceRoot":"","sources":["../../src/views/InvoiceListView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAA;AAUhF,OAAO,KAAK,EAAE,oBAAoB,EAA0G,MAAM,UAAU,CAAA;AA8K5J,wBAAgB,eAAe,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE;IAC1E,SAAS,EAAE,oBAAoB,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;IAClB,oDAAoD;IACpD,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9B,qBA8hBA"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "status": "beta",
5
5
  "dependencies": []
6
6
  },
7
- "version": "0.16.0",
7
+ "version": "0.16.1",
8
8
  "description": "Fayz SDK — plugin-financial plugin",
9
9
  "type": "module",
10
10
  "sideEffects": false,
@@ -28,9 +28,9 @@
28
28
  },
29
29
  "dependencies": {
30
30
  "@tanstack/react-table": "^8.20.0",
31
- "@fayz-ai/admin": "^0.30.2",
32
- "@fayz-ai/core": "^0.30.1",
33
- "@fayz-ai/ui": "^0.30.2"
31
+ "@fayz-ai/core": "^0.30.3",
32
+ "@fayz-ai/admin": "^0.30.3",
33
+ "@fayz-ai/ui": "^0.30.3"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@types/node": "^20.0.0",