Data Layer medium complexity backend
0
Dependencies
0
Dependents
0
Entities
0
Integrations

Description

Stores and retrieves organization-specific field mappings that translate Meander internal data structures into the schema required by each external accounting system. It acts as the configuration store for per-organization ledger codes, cost centres, and account identifiers. Mapping records are versioned to support schema evolution without breaking existing submissions.

Feature: Accounting API

accounting-mapping-repository

Sources & reasoning

Lines 72 and 353 both explicitly name accounting system integration as a Fase 3 deliverable for HLF and Blindeforbundet. Fase 3 is the third development phase, mapping to v1.1. The API client is the foundational piece required before any export can occur, so it is a distinct feature from the export UI.

Responsibilities

  • Persist field mapping configurations keyed by organization and accounting system type
  • Retrieve active mappings for use during data transformation
  • Support versioned mapping records to allow non-breaking schema updates
  • Validate mapping completeness before persisting new configurations
  • Provide a query interface for listing all active mappings across organizations

Interfaces

getMappingByOrganization(organizationId: string): Promise<AccountingFieldMapping>
saveMappingConfig(organizationId: string, mapping: AccountingFieldMapping): Promise<void>
getActiveMappingVersion(organizationId: string): Promise<number>
listAllMappings(): Promise<AccountingFieldMapping[]>