Skip to content

Phase 01: F&A Masters

Establish the Chart of Accounts and foundational financial master data needed for ledger entries.

Building on the Party abstraction in m-core, we need financial-specific extensions and ledger masters.

  • Account: The general ledger account (Asset, Liability, Equity, Income, Expense). Needs tree structure (parent/child) and links to m-ledger representations.
  • Cost Center: For departmental or project-based cost tracking.

Since m-core holds generic Supplier and Customer data, the finance module holds their financial state.

  • FinanceSupplier: A 1-to-1 link to Supplier. Contains payment terms, default expense account, and Tax ID.
  • FinanceCustomer: A 1-to-1 link to Customer. Contains credit limits, default income account, and Tax ID.
  • HSNCode: HSN/SAC code master for GST rates.
  • Scaffold Account DocType.
  • Scaffold CostCenter DocType.
  • Scaffold FinanceSupplier DocType.
  • Scaffold FinanceCustomer DocType.
  • Scaffold HSNCode DocType (m-india).

Goal: Verify that Finance master data is correctly augmented by regional plugins using the MetadataDecoratorRegistry.

  • Verify Field Injection: Ensure FinanceSupplier and FinanceCustomer are correctly extended with regional tax pointers (e.g., GSTIN) during the MetadataDecoratorRegistry.bake() cycle.
  • Verify Port Dispatch: Ensure the custom finance fields correctly resolve to the regional RegionalIDValidator for verification.